Skip to content

GitLab

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

Merged
Created Sep 25, 2025 by Julien Muchembled@jmOwner

proxy: allow several instances with subpartitions having same reference

  • Overview 8
  • Commits 3
  • Changes 8

This reimplements commit 9d0926e9 with the following changes:

  • support for multiple computers
  • support for resilience takeover use case, which is implemented in such a way that 2 partitions can't have the same reference within the same instance tree

This is done by changing the semantics of the requested_by column in the partition table. Before, it was the reference of the requesting partition (which would break the use of several computers), now it's the root instance title.

This requires an upgrade of the database, now version 17, and also some major changes in the code doing the migration. We rely on Python 3.6+ for the upgrade to be atomic and there must not be any old table (test_automatic_migration does not check that anymore).

Due to lack of use cases, changes for slaves and forwarded partitions are minimal and more work looks required on this topic. The proxy will refuse to migrate existing databases with non-empty slave table.

Edited Sep 26, 2025 by Julien Muchembled
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: proxy
GitLab Nexedi Edition | About GitLab | About Nexedi | 沪ICP备2021021310号-2 | 沪ICP备2021021310号-7