Timer sometimes does not run

Hi Backendless!

I have a timer that is scheduled every night at 00:05.
While Timer details show that it has run, I already see that the logic hasn’t been executed, as the data in Users table are not updated.
And when i look at logs, they also don’t show any traces of timer execution.

App ID: F001F3BF-4CCD-B35E-FFD0-23845DEE6000

Timer Execution History:
image

Logs:

Sun Aug 18 2024 00:05:01 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Sun Aug 18 2024 00:05:02 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Mon Aug 19 2024 00:05:00 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Mon Aug 19 2024 00:05:01 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Tue Aug 20 2024 00:05:01 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Tue Aug 20 2024 00:05:02 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Wed Aug 21 2024 00:05:03 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Wed Aug 21 2024 00:05:03 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Fri Aug 23 2024 00:05:02 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Fri Aug 23 2024 00:05:03 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Sun Aug 25 2024 00:05:00 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Sun Aug 25 2024 00:05:01 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: (6) [object Object],[object Object],[object Object],[object Object],[object Object],[object Object]---END---
Sun Aug 25 2024 10:13:32 GMT+0300 (Eastern European Summer Time) | SERVER_CODE | ERROR | [899612] Error: You have reached concurrent request limit. Your limit is 100 at checkStatus (/usr/local/lib/node_modules/backendless-coderunner/node_modules/backendless-request/lib/request.js:343:9) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:15:24 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Sun Aug 25 2024 10:17:57 GMT+0300 (Eastern European Summer Time) | SERVER_CODE | ERROR | [1558783] Error: You have reached concurrent request limit. Your limit is 100 at checkStatus (/usr/local/lib/node_modules/backendless-coderunner/node_modules/backendless-request/lib/request.js:343:9) at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Mon Aug 26 2024 08:04:19 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList selected for update: (6) Email: , Tier: ,Email: , Tier: ,Email: , Tier: ,Email: , Tier: ,Email: , Tier: ,Email: , Tier: ---END---
Mon Aug 26 2024 08:04:19 GMT+0300 (Eastern European Summer Time) | BonusTierNightlyLogs | INFO | UserList after update: (6) Email: , Tier: , newTier: , priceCount: ,Email: , Tier: , newTier: , priceCount: ,Email: , Tier: , newTier: , priceCount: ,Email: , Tier: , newTier: , priceCount: ,Email: , Tier: , newTier: , priceCount: ,Email: , Tier: , newTier: , priceCount: ---END---
Mon Aug 26 2024 12:43:18 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:43:18 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:43:18 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:43:38 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:46:41 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:46:41 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:46:41 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.
Mon Aug 26 2024 12:46:41 GMT+0300 (Eastern European Summer Time) | Global logger | ERROR | Maximum request per minute limit has been reached for the app. Current limit is 200 requests per minute. Please have the owner of the app contact Backendless to increase the rate limit.

Hi @Uldis_Borkus

I’ve created an internal ticket to investigate this problem.

Regards,
Viktor

@Viktor_Mudrevsky Any movement in here?
Timer keeps reporting that it has run daily, but obviously it’s not doing anything.

Hello @Uldis_Borkus,

We apologize for the inconvenience you’ve encountered and for the delayed response.

Based on the timer history, we can confirm that the business logic for the timer was executed. However, this doesn’t necessarily indicate whether the timer completed successfully or encountered an error. From the errors in your logs, if you see the message “You have reached the concurrent request limit,” this suggests that at certain times, your application is attempting to execute too many requests simultaneously on our server. While the limit we provide is quite high, reaching it could indicate that there might be an issue with the logic in your application that needs to be addressed.

In the analytics page:

I can see that you reached the limit once, and on another day you were close to the limit. I recommend reviewing your application’s logic to ensure it operates efficiently within these constraints.

Additionally, if you encounter the error Maximum request per minute limit has been reached for the app., you can increase this limit on the billing page:

Please let us know if you need further assistance.

Best regards,
Serhii

Hi @sergey.kuk thanks for the reply, but it is not about reaching limits (that was caused by me testing how atomic counter list retrieval works. The issue is stated clearly and if looking at the timestamps, it is not related to those limits.

  1. timer has run on some days and has not run on some other days that can be seen in logs. (there is even logiing logic inside the logic the timer is executing… Yet it states that timer has run every day as scheduled - False / Or #2

  2. Timer has run, but somehow it is not executing logic that is tied with it. If so, then what causes it?

  3. If I execute timer manually it works as expected and logic is executed as well. This is also seen in logs by timestamp. Just take closer look at screenshots provided.

So the outcome is that, timer run history registers all scheduled runs and manual runs, yet only some scheduled runs and all manual runs are actually executing the logic.
I believe timers work , no doubt about it but still there is some behavior that cannot allow me to relay
on them.

For now, created another timer with the same logic, just this one will run 5 minutes later. Tomorrow will see if this one picks up.

Creating exactly the same timer now worked, will resolve this although it is not clear what is causing timer to suddenly fake the execution.