Files
jasonwittyandClaude Opus 5 c01d5852d4
Validate and Deploy to K3s / validate (push) Successful in 23s
Validate and Deploy to K3s / deploy (push) Successful in 29s
LimeSurvey 6 -> 7, and stop the config volume freezing the version
Three related changes, all discovered in sequence:

1. Converted all 60 tables MyISAM -> InnoDB. The datadir had just moved to
   GlusterFS, and MyISAM is the worst engine to put there: no crash recovery,
   no transactions, and it leans on file locking, which FUSE handles poorly.
   It also meant db-config.yaml's InnoDB tuning applied to nothing.

2. Bumped the image 6-apache -> 7-apache. LimeSurvey 6 is outside its support
   window; 7.1.1 is current.

3. Changed the seed-config init container from `cp -rn` to `cp -r`.
   application/config is a persistent volume and version.php lives in it, so
   no-clobber meant the stale v6 version.php survived the image upgrade:
   LimeSurvey read 6.17.11, concluded "DB is uptodate", and silently skipped
   its migration while running v7 code. With the overwrite it upgraded
   properly (651 -> 712). Safe because the image ships no config.php or
   security.php, so user config is never touched.

Verified after each step: 3 surveys, 742 responses, 2 users, 17 questions.
Note v7 renames response tables lime_survey_<id> -> lime_responses_<id>;
that rename is why a post-upgrade count against the old name errors.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-20 20:42:46 -07:00
..