I have a participant (13104) who is having a one-off survey re-launching over and over (Survey 150_1340). It is the baseline health and demographics, and it’s meant to launch only once, on Day 0. However, this longsuffering participant has now answered it nine times.
I have had a look at the data for this survey and there are several participants recently for whom the same thing has happened. In her data and in the others, the scheduled time and the issued time are always the same.
Can you please look at this as a matter of priority? It’s a long survey and I don’t want people to become frustrated by having it launch over and over again.
It’s meant to launch once upon registration, with no repeats, so perhaps Ethica is thinking that people are re-registering??
Thanks for pointing this out. There was an issue with respect to time calculation in our server, which was not properly rounding the millisecond part of the registration time. That was causing some participants to receive this survey multiple times. This is resolved for all participants who had this issue. You should not notice this anymore.
OK, that is a more close-to-the-metal reason than I had expected. How come it only affected people who enrolled in the study in one time period, though? Was it the version of Ethica they downloaded interacting with the server problem?
Also, for future reference, and for others–I did have that survey launching between 00:00:00 sec and 00:00:00 sec, per the Ethica docs–but would it have solved the problem to have the survey launch between, say, 00:00:00 sec and 00:00:02 sec?
It has a bit more boring details which I will skip. But overall, the code did not properly round up the registration time and baseline survey time, and left them to their default resolution, which is nanoseconds. We rounded all times to milliseconds (the resolution we use across system), and it solved the problem.
In most cases these two values were equal and the nanoseconds part of the time was 0 anyway, and that’s why this was not shown in our tests. But for a few participants, this value was not 0 which caused the problem for only a subset of people.
If you would’ve set survey to be issued 2 seconds after the registration (or even 1 second), this would not happen. But this is not necessary. You can set the survey 0 seconds after the registration and it will work as expected.
(sorry if the explanation is not super clear. I would need to write many pages to explain the exact detail).
Thanks Mohammad. Extended explanation not needed. When I first looked at it, before I posted about it, I saw that I’d set the launch time for 0 sec to 0 sec, and I thought “I bet it’s something to do with that timing …”
Anyway, case closed.