I’m a new member here, and relatively new to metoer, but still already got a lot of help from these forums, thank you all for that!
For the last few days I’m struggling with a problem, and couldn’t find a full solution to it:
The short version - is there a way to prevent Meteor.aplly(), when using “noRetry”, from sending error massage, and just keep the former “original” call to the method alive even after disconnecting and reconnecting?
The long version: We develop an app which will be used mainly in ereas where internet connection is not very stable. One of our methods runs a very heavy process, which can take up to 3 minutes(!) to complete sometimes, and combinig it with unstable connection can cause trouble. At first I called this method with Meteor.call(), but when disconnecting and reconnecting on the time the mothod runs the process, Meteor.call() fires the call again (because it didn’t get the response), and that makes a big mess, Quentin Tarantino’s kind of a mess. So I’ve tryed Meteor.aplly() with “noRetry” option. This indeed prevented the recall, but a new problem showed: instead of resend the call, it sends error message, and the client ignored the results when the server finished the process.
I checked again in meteor documentation for “noRetry”, and it’s actually written there: "if true, don’t send this method again on reload, simply call the callback an error with the error code ‘invocation-failed’."
I hope the short version makes sence now…
Making a unique “call ID” and have the server check it before executing the method solved only part of the problems (and created some new ones) so a different solution is preferred.
Is there anything to do here?