[Tarantool-patches] [PATCH] net.box: fix fetching of schema of an old version
Vladislav Shpilevoy
v.shpilevoy at tarantool.org
Sat Apr 4 01:53:53 MSK 2020
Hi! Thanks for the patch!
On 01/04/2020 22:45, Alexander Turenko wrote:
> After 2.2.0-633-gaa0964ae1 ('net.box: fix schema fetching from 1.10/2.1
> servers') net.box expects that _vcollation system view exists on a
> tarantool server of 2.2.1+ version. This is however not always so: a
> server may be run on a new version of tarantool, but work on a schema of
> an old version.
>
> The situation with non last schema is usual for replication cluster in
> process of upgrading: all instances run on the new version of tarantool
> first (no auto-upgrade is performed by tarantools in a cluster). Then
> box.schema.upgrade() should be called, but the instances should be
> operable even before the call.
>
> Before the commit net.box was unable to connect a server if it is run on
> a schema without _vcollation system view (say, 2.1.3), but the server
> executable is of 2.2.1 version or newer.
>
> Follows up #4307
> Fixes #4691
> ---
>
> https://github.com/tarantool/tarantool/issues/4691
> https://github.com/tarantool/tarantool/tree/Totktonada/gh-4691-net-box-connect-schema-2-1-3
>
> src/box/lua/net_box.lua | 9 ++
> ...4691-net-box-connect-schema-2-1-3.test.lua | 93 ++++++++++++++++++
> test/box-tap/no_auto_schema_upgrade.lua | 30 ++++++
> .../snap/2.1.3/00000000000000000000.snap | Bin 0 -> 4466 bytes
> 4 files changed, 132 insertions(+)
> create mode 100755 test/box-tap/gh-4691-net-box-connect-schema-2-1-3.test.lua
We have xlog/upgrade suite specifically for these tests. With
already designed processes, where and how to store old snaps, etc.
See xlog/upgrade/how_to_add_new_test.md.
More information about the Tarantool-patches
mailing list