The doc descrbes router-first upgrade. However, we agreed on the following order of the upgrade for vshard and above-standing projects: firstly, upgrade the replicasets, then upgrade routers. The motivation for such order is that storage needs nothing from router, only router initiates communication with storage.
It's already applied in the ATE, we need to test that behavior and document it.
We already have the bunch of reload tests:
test/storage/reload.test.lua: basic storage reload mechanics.
test/router/reload.test.lua: basic for router.
test/reload_evolution/storage.test.lua: storage reload from an old vshard version to latest. Checks bucket transfer.
test/upgrade/upgrade.test.lua: restart-based storage upgrade
test/router-luatest/reload_test.lua: router reload from old vshard to latest; checks calls, discovery, master search, and router work with a new master.
We need to add new tests, which cover the full upgrade process and check the basic functionality of the vshard. The hot-reload upgrade is preferred, but if possible and not costly, restart should also be tested (can be easily achieved with test_group config).
We should test the following scenarios:
- Upgrade from some old version to the latest commit (as it's already done in the existing tests)
- Upgrade from prev version to the latest commit.
The doc descrbes router-first upgrade. However, we agreed on the following order of the upgrade for vshard and above-standing projects: firstly, upgrade the replicasets, then upgrade routers. The motivation for such order is that storage needs nothing from router, only router initiates communication with storage.
It's already applied in the ATE, we need to test that behavior and document it.
We already have the bunch of reload tests:
test/storage/reload.test.lua: basic storage reload mechanics.test/router/reload.test.lua: basic for router.test/reload_evolution/storage.test.lua: storage reload from an old vshard version to latest. Checks bucket transfer.test/upgrade/upgrade.test.lua: restart-based storage upgradetest/router-luatest/reload_test.lua: router reload from old vshard to latest; checks calls, discovery, master search, and router work with a new master.We need to add new tests, which cover the full upgrade process and check the basic functionality of the vshard. The hot-reload upgrade is preferred, but if possible and not costly, restart should also be tested (can be easily achieved with
test_groupconfig).We should test the following scenarios: