View Issue Details

This issue affects 1 person(s).
 4
IDProjectCategoryView StatusLast Update
20462Bug reportsSurvey editingpublic2026-03-18 16:53
ReporterTonisOrmisson Assigned ToTonisOrmisson  
PrioritynoneSeverityminor 
Status resolvedResolutionfixed 
Product Version6.16.x 
Summary20462: Regression in survey copy since 6.16.5: survey-scoped plugin settings are no longer copied to the new survey.
Description

Observed behavior:

  • When copying a survey with the new copy flow, rows from {{plugin_settings}} where model='Survey' and
    model_id=<source sid> are not recreated for the destination survey.

  • As a result, plugins that store per-survey settings through DbStorage lose their configuration on copied
    surveys until settings are manually re-saved.

    Expected behavior:

  • Copying a survey should also copy its survey-scoped plugin settings to the new survey, matching the behavior
    from 6.16.4.

    Regression details:

  • In 6.16.4, survey copy used surveyGetXMLData(...) + XMLImportSurvey(...), and that path explicitly exported/
    imported survey plugin settings.

  • In 6.16.5, the new CopySurvey service replaced that flow, but CopySurvey::copy() does not copy PluginSetting
    rows.

    Impact:

  • Any plugin using survey-level DbStorage settings is affected.

  • Example symptom: copied surveys appear to have plugin defaults or empty plugin settings instead of
    inheriting the source survey configuration.

    Likely fix:

  • Extend CopySurvey to clone PluginSetting rows for model='Survey' from source SID to destination SID as part
    of the copy service.

Steps To Reproduce

copy survey with plugin that has settings.
plugin settings are not created to new survey.

TagsNo tags attached.
Bug heat4
Complete LimeSurvey version number (& build)6.16.10
I will donate to the project if issue is resolvedNo
Browser
Database type & versionn/a
Server OS (if known)
Webserver software & version (if known)
PHP Version 8.4.11

Relationships

related to 20415 new Copy Survey Option Missing in 6.16.5 Update 

Users monitoring this issue

There are no users monitoring this issue.

Related Changesets

LimeSurvey: master 32d6e4d4

2026-03-18 16:53

TonisOrmisson

Committer: GitHub


Details Diff
Fixed issue 20462: Copy survey plugin settings (04786)

* Fixed issue 20462: Copy survey plugin settings

* Fixed issue 20462: Remove invalid plugin setting error model

* Fixed issue 20462: Include plugin setting validation errors

* Fixed issue 20462: Make plugin setting copy atomic

* Fixed issue 20462: Roll back survey on plugin setting copy failure
Affected Issues
20462
mod - application/models/services/CopySurvey.php Diff File
mod - tests/unit/helpers/CopySurveyTest.php Diff File

Issue History

Date Modified Username Field Change
2026-03-18 13:49 TonisOrmisson New Issue
2026-03-18 13:51 TonisOrmisson Relationship added related to 20415
2026-03-18 13:52 TonisOrmisson Assigned To => TonisOrmisson
2026-03-18 13:52 TonisOrmisson Status new => assigned
2026-03-18 14:30 c_schmitz Note Added: 84471
2026-03-18 14:30 c_schmitz Bug heat 0 => 2
2026-03-18 14:39 TonisOrmisson Status assigned => in code review
2026-03-18 16:53 TonisOrmisson Changeset attached => LimeSurvey master 32d6e4d4
2026-03-18 16:53 TonisOrmisson Note Added: 84478
2026-03-18 16:53 TonisOrmisson Status in code review => resolved
2026-03-18 16:53 TonisOrmisson Resolution open => fixed
2026-03-18 16:58 guest Bug heat 2 => 4