How to know when to upgrade plan

Describe the problem/error/question

Hi there, I’m currently on the starter plan and currently trying to accomplish the following:
I have 3 Asana boards that I registered custom webhooks for to get notified of changes in custom fields.
The tasks then get updated and moved depending on the changed-to value.

I got it working well enough, where I have one workflow dealing with the webhook events, passing each on to the relevant other workflow to deal with the event.

Testing with a single Asana task it works no problem. Testing with 3 tasks also works. But there are going to be multiple users updating multiple tasks at the same time and I need to make sure it works well in that scenario as well.

What is the error message (if any)?

Curiously, while developing and testing I got a 503 a couple of times. I think this is indicating that the server of my instance is running out of resources.

Just now when testing I saw that everything worked, except 1 task, so I guess that one couldn’t be handled anymore while my instance was getting restarted? I don’t get an error execution which makes me wonder what is happening.

I also thought that maybe one webhook is firing, the workflow updates the task and the changed task triggers my webhook before the change is represented? Then the same task, while being updated, triggers the workflow with the old value and obviously doesn’t give an error and doesn’t get updated.

However, all other events worked correctly, and there is only this one that didn’t go through. And when manually re-changing the custom fields the workflow triggers as expected and changes the task correctly.
So I’m thinking it really might be the servers resources.

In the docs I found the 503 as memory related error, so probably I need to rebuild my workflows and upgrade my plan to be sure it doesn’t happen again.

I already created subworkflows for dealing with the custom field changes, but I guess it’s still not enough. It’s a rather big one, filtering and routing to different node branches depending on the value, which I might need to put in a subworkflow each by itself.

Also noticed I haven’t upgraded to v1 yet and that might solve things.

I have things to try, just wanting to post here anyways in case this helps anybody else who is looking for a similar topic. Writing this post kind of answered my own question :smiley:

Information on your n8n setup

  • n8n version: 0.224.4
  • Database (default: SQLite): SQLite
  • n8n EXECUTIONS_PROCESS setting (default: own, main): own
  • Running n8n via (Docker, npm, n8n cloud, desktop app): n8n cloud
  • Operating system: MacOS 12.6.2

This is the workflow handling the webhook, then passing each event to the relevant subworkflow.

This is the workflow handling the change in Content Status, every execution only goes through one branch of the workflow.

Hey @leprodude,

So it can get tricky as it isn’t always the amount of executions at once but more the amount of data the workflow is dealing with. The parent worklfow looks to be ok, If I had to takw a guess I suspect the issue could be in the below depending on how much data it is returning.

Sometimes in cases like this there is probably not much that can be done in the workflow as it doesn’t look like you are dealing with multiple rows but I guess if it returns multiple projects that could change things.

1 Like

Hmm the task is usually not in more than 3 projects and I only get a very small representation of that.
The last API call returns a looong JSON object though, I might be able to adjust my request so it gets smaller! Will try and report back, thanks!

Oh my god, in this update API call I haven’t sent the opt_fields query like I usually do, and it results in Asana returning the whole task with all enum options of all added custom fields. That is obviously super long and I don’t even need it or use it at that point in the workflow.

BUT because here it is my last executed node, the whole bunch gets passed to my top workflow, which obviously causes the whole operations to take waaaay more memory than I really need.

After adding the opt_fields and just asking for 1 random field, I only get 11 lines of JSON back instead of 580. That’s already such an improvement that I’m curious if that by itself solves my issue here.

Also as far as I understand I could have prevented that with having an almost empty set node after that on each branch just keeping set data.

Thanks for inspiring me to look in the right direction @Jon !


Should we relabel the conversation, so that people can find it if they are having same issues with Asana returning too much or full task data? Or will search be enough for that purpose…

Hey @leprodude,

Nah I think this is good and if anything it means we should probably look at updating the Asana node to support this :slight_smile:


Hm okay I still get the 503 even though I updated all the nodes to ask for minimum data.
I guess then I really need to upgrade and see if that makes a difference…