[TikiWiki-commits] [Git][tikiwiki/tiki][30.x] [FIX] tikilib: use a single atomic upsert instead of separate delete and...
"Merci Jacob \(@mercihabam\) via TikiWiki-cvs" <[email protected]>
| Newsgroups | gmane.comp.cms.tiki.cvs |
|---|---|
| Message-ID | <6a049a3f48667_3819139c-133@gitlab-sidekiq-low-urgency-cpu-bound-v2-54b487565d-frks7.mail> |
Merci Jacob pushed to branch 30.x at Tiki Wiki CMS Groupware / Tiki Commits: b74ddd2b by Merci Jacob at 2026-05-13T15:34:36+00:00 [FIX] tikilib: use a single atomic upsert instead of separate delete and insert when setting a user preference, preventing duplicate-key races on simultaneous AJAX requests --- * [FIX] tikilib: use a single atomic upsert instead of separate delete and insert when setting a user preference, preventing duplicate-key races on simultaneous AJAX requests See merge request tikiwiki/tiki!10175 (cherry picked from commit e457557290300516386598222dc9577c9ddc6ee6) 9e5f8f14 [FIX] tikilib: use a single atomic upsert instead of separate delete and... Co-authored-by: Merci Jacob <[email protected]> - - - - - 1 changed file: - lib/tikilib.php Changes: ===================================== lib/tikilib.php ===================================== @@ -4718,8 +4718,10 @@ class TikiLib extends TikiDb_Bridge } $userPreferences = $this->table('tiki_user_preferences', false); - $userPreferences->delete(['user' => $my_user, 'prefName' => $name]); - $result = $userPreferences->insert(['user' => $my_user, 'prefName' => $name, 'value' => $value]); + $result = $userPreferences->insertOrUpdate( + ['value' => $value], + ['user' => $my_user, 'prefName' => $name] + ); $user_preferences[$my_user][$name] = $value; View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/b74ddd2b353cd4d0c84654825791a226c0253de4 -- View it on GitLab: https://gitlab.com/tikiwiki/tiki/-/commit/b74ddd2b353cd4d0c84654825791a226c0253de4 You're receiving this email because of your account on gitlab.com. Manage all notifications: https://gitlab.com/-/profile/notifications | Help: https://gitlab.com/help _______________________________________________ TikiWiki-cvs mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/tikiwiki-cvs