View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
19985 | Bug reports | RemoteControl | public | 2025-02-28 16:41 | 2025-05-09 11:36 |
Reporter | ginosupport | Assigned To | |||
Priority | none | Severity | partial_block | ||
Status | new | Resolution | open | ||
Product Version | 6.6.x | ||||
Summary | 19985: RemoteControl invite_participants returns HTTP 500 error | ||||
Description | We have a few surveys that have a decent amount (>30k) of participants use RemoteControl invite_participants to send invitations to fill in the surveys. We're using the invite_participants function without specifying which exact participants should be invited. The expectation is "LimeSurvey will send emails to everyone that is eligible for an invitation". However, instead we're getting a HTTP 500 error. It's hard to pinpoint the exact cause. | ||||
Steps To Reproduce | Steps to reproduceNot 100% sure. It consistently fails for some surveys, but consistently works for others (with fewer participants?). It's not immediately obvious what the problem is. My hunch is:
Alternative possibility:
Expected resultMultiple things:
Actual result
Also
Note: I have a feeling the same problem might occur under specific circumstances in remind_participants, but did not actively run into that. If you find the cause, please check if remind_participants is also affected | ||||
Tags | No tags attached. | ||||
Bug heat | 4 | ||||
Complete LimeSurvey version number (& build) | 6.10.0+250106 | ||||
I will donate to the project if issue is resolved | No | ||||
Browser | none | ||||
Database type & version | PostgreSQL | ||||
Server OS (if known) | RHEL 9 | ||||
Webserver software & version (if known) | |||||
PHP Version | 8.0.x | ||||
I have done some further investigation and was at least able to narrow down the problem and found a related but different problem in the process. Playing around with this setting, I was able to exclude some of my earlier hunches on a managable testscenario. I used a batch size of 5 for the steps below
So far I was not able to reproduce the HTTP 500 error on a (managable) testset, but the above findings should still be looked at because it just doesn't do what I would expect. I did not investigate the remind_participants functionality but I am expecting the same behavior there. |
|
By the way, the results described in my previous comment were done on version 6.12.3 |
|
My guess is the 500 error is the result of a timeout. Either the php worker itself is timing out (max_execution_time in php.ini or set_time_limit in code somewhere) Or the web server is timing out waiting for it (for example fastcgi_read_timeout/proxy_read_timeout for nginx.) Could also be both with one masking the other. I.e. if you fix the shorter one, the other one could still come into play. You might also play with the email batch size and delay between batches to get it to finish before the timeout. |
|
Interesting suggestion. I don't fully understand how the batch delay is relevant, because i'm only calling the endpoint once? But it's definitely worth looking into. Thanks for the pointer. Anyway, even disregarding the HTTP 500 error (potential timeout), the behavior isn't what I would functionally expect either. I hope that can be addressed |
|
i think it works something like this sent = 0 so when you call if they're 50,000 emails to send and batch size is 500 and delay is 1 minute, it would easily take over an hour just in delays, not to mention how long it takes to send the emails themselves |
|
never mind just read through the code, the delay only seems relevant for sending through the admin interface the remote control endpoint just sends one round of the batch size so perhaps the time it takes to send 5000 emails is greater than the relevant timeout in your case |
|
Ok, that would mean that I should set a lower batch size. However, the effect would be even fewer mails being sent (likely none at all) because of the unwanted behavior that it considers the future participants as well, so that won't really work for me. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2025-02-28 16:41 | ginosupport | New Issue | |
2025-05-08 12:37 | ginosupport | Note Added: 82608 | |
2025-05-08 12:37 | ginosupport | Bug heat | 0 => 2 |
2025-05-08 12:39 | ginosupport | Note Added: 82609 | |
2025-05-08 21:53 | mfavetti | Note Added: 82617 | |
2025-05-08 21:53 | mfavetti | Bug heat | 2 => 4 |
2025-05-09 09:30 | ginosupport | Note Added: 82622 | |
2025-05-09 09:53 | mfavetti | Note Added: 82623 | |
2025-05-09 10:12 | mfavetti | Note Added: 82625 | |
2025-05-09 11:36 | ginosupport | Note Added: 82626 |