View Issue Details

This issue affects 1 person(s).
 2
IDProjectCategoryView StatusLast Update
20708Bug reportsSurvey participants (Tokens)public2026-09-18 16:54
ReporterDenisChenu Assigned To 
PrioritynoneSeverityminor 
Status newResolutionopen 
Product Version7.0.x 
Summary20708: Concurrent response creation for the same participant
Description

With long survey and some slow servers, there are multiple creations for one particpant.
It can happen too on limesurvey hosting

Steps To Reproduce

Steps to reproduce

Import included LSS, activate with restricted mode
Check settings: not anonymous + response persistence
Launch (replace shnoulle.limesurvey.net by tour own server)

seq 5 | xargs -P5 -n1 sh -c '
  curl -sS \
    -o /tmp/response-$0.html \
    -w "$0 HTTP:%{http_code} time:%{time_total}\n" \
    "https://shnoulle.limesurvey.net/167418?token=TESTTEST&newtest=Y"

(same without newtest=Y)

Expected result

Still have one response

Actual result

4 or 5 response line

TagsNo tags attached.
Attached Files
Bug heat2
Complete LimeSurvey version number (& build)7.1.1 but older
I will donate to the project if issue is resolvedNo
Story point estimate0
Browsernot relevant
Database type & versionnot relevant
Server OS (if known)not relevant
Webserver software & version (if known)not relevant
PHP Versionnot relevant

Users monitoring this issue

There are no users monitoring this issue.

Activities

DenisChenu

DenisChenu

2026-09-18 16:54

developer   ~85840

I create a plugin for 5.X and up.

But I think it must be done for the official version too. It happens when one user click multiple times on a link or sometimes when arobot check link before.
We have 2 solutions , both have issue

  1. Add a locking mechanism : create a lock when checking token + survey
  2. Unlock when a response is created (and add register_shutdown_function)
  3. During lock process : send a 409/429 or wait some ms in a loop until it's OK.

There's another issue with this type of surveys: if two people open the same questionnaire with the same token, they overwrite each other's answers with every action, without ever reloading the responses.
But i think it must be managed by plyugin (core or not)

Issue History

Date Modified Username Field Change
2026-09-18 16:39 DenisChenu New Issue
2026-09-18 16:39 DenisChenu File Added: limesurvey_survey_concurrencies.lss
2026-09-18 16:54 DenisChenu Note Added: 85840
2026-09-18 16:54 DenisChenu Bug heat 0 => 2