Skip to content

GitLab

  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • erp5 erp5
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Merge requests 143
    • Merge requests 143
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Jobs
  • Commits
Collapse sidebar
  • nexedi
  • erp5erp5
  • Merge requests
  • !2159

Open
Created Sep 19, 2025 by Kazuhiko Shiozaki@kazuhikoOwner
  • Report abuse
Report abuse

Draft: ZSQLCatalog: force using READ COMMITTED isolation for indexation.

  • Overview 0
  • Commits 1
  • Changes 1

This merge request supersedes !1997 (closed).

For the same reason that we are safe to use innodb_locks_unsafe_for_binlog, i.e. we don't use INSERT ... SELECT pattern, it should be safe to use READ COMMITTED isolation level in indexation.

With software/erp5/test/test/benchmarks.py in SlapOS repository, here is the difference of the number of deadlocks.

  • !2151 only
     51 INSERT INTO stock
    117 INSERT INTO `quantity_unit_conversion`
    210 DELETE FROM category
    230 REPLACE INTO delivery
  86074 INSERT INTO category

  11541 SELECT FOR UPDATE query in CMFActivity
   8393 UPDATE query in CMFActivity
  • !2151 + !2159 (this)
      9 REPLACE INTO delivery
    108 INSERT INTO category

      4 SELECT query in CMFActivity
  10792 SELECT FOR UPDATE query in CMFActivity
    504 UPDATE query in CMFActivity

And here is the comparison of the performance, that is even faster than 10.4 with innodb_locks_unsafe_for_binlog.

11.8-2151-2159

Edited Sep 20, 2025 by Kazuhiko Shiozaki
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: index-read-committed
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7