Hello together,
I want to create a sequence in which an array of objects is checked. In every object it should check whether it has a specific key or not. If not it should send an error.
As a solution for that I came with this: The array of object is splitted in a sequence of single objects with the split node. Now I can Check every object if it has a key or not with a switch node. If everything is right all message parts go to the same join node and are combined automatically back to the previous message. But if any part has not the wanted key, this message part is stopped going further and I will raise an error. So if the array contained 10 object only 9 will arrive at the final join node.
My question is: what will happen to the other 9 message parts. Will they wait forever until they got the last message part? Or is there a timeout which deletes all related parts if the last part does not arrive? Or will the join node detect that no other part is there anymore so it deletes the other message parts?
Thanks for your help!
What 'mode' is the join using?
Have you read the 'Info' tab for the join
node?
the node uses the automatic mode
yes i have read that, but there is nothing written about that
in automatic mode it just uses the msg.parts properties to determine if it has all the parts... so no timeout no. But manual mode can do the same but add timeout if you wish.
But I don't want to send a message if the timeout is expired. The whole sequence should be discarded if one of the parts is wrong.
But okay if no timeout is in automatic node, what will happen if I have 1000 messages splitted and every time one part is not sent to the join node. Does it have a limit where is discards the messages?
OK, not by default, but as per the info sidebar - you can set (in settings.js) nodeMessageBufferMaxLength
and if that is exceed it will flush any pending messages.
I think I would probably have written a little javascript function that iterates through the array checking for the field presence.
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.