From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp38.i.mail.ru (smtp38.i.mail.ru [94.100.177.98]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id E25C545C304 for ; Thu, 3 Dec 2020 05:09:17 +0300 (MSK) Date: Thu, 3 Dec 2020 05:09:18 +0300 From: Alexander Turenko Message-ID: <20201203020918.ocbocxnkzgardnuz@tkn_work_nb> References: <20201116164006.fw3jwes4dwbx7nsd@tkn_work_nb> <8365255bb9eef01293f66d9a7293730fecc49e2b.1605691680.git.sergeyb@tarantool.org> <20201127014528.v4ivfv7akgdxak5j@tkn_work_nb> <68835173-98b8-60ce-4ea5-ae427c530db3@tarantool.org> <20201202034003.mezalnkxy3pwyecp@tkn_work_nb> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: Subject: Re: [Tarantool-patches] [PATCH] Add options for upgrade testing List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Sergey Bronnikov Cc: Mons Anderson , tarantool-patches@dev.tarantool.org, Vladislav Shpilevoy On Wed, Dec 02, 2020 at 01:49:39PM +0300, Sergey Bronnikov wrote: > > On 02.12.2020 06:40, Alexander Turenko wrote: > > > > I'm okay with the state on the branch [3] (it is updated as shown above) > > and I ready to push it if you don't have objections against the result > > of squashing. I included my variant of extract_schema_from_snapshot() > > (but it leans on PATH, it is enough for usages from TarantoolServer). > > I have tested patches again and it seems it works as expected. > > Let's merge patches to master. Nice. Fixed a typo: | diff --git a/lib/options.py b/lib/options.py | index bd3adc7..445d0d9 100644 | --- a/lib/options.py | +++ b/lib/options.py | @@ -256,7 +256,7 @@ class Options: | check_error = True | | if snapshot_path and not os.path.exists(snapshot_path): | - color_stdout("\nPath {} not exists\n".format(snapshot_path), schema='error') | + color_stdout("\nPath {} does not exist\n".format(snapshot_path), schema='error') | check_error = True | | if check_error: Pushed to master of the test-run repository. Alexander, I need your approve to push the corresponding submodule update into tarantool. Please, take in at a glance. I pushed the update into the [1] branch to trigger CI, for your convenience. [1]: Totktonada/test-run-snapshot-cli-option The commit itself: commit b27ebb49e173a23259be73d8808b204efda3be03 Author: Alexander Turenko Date: Wed Dec 2 22:17:08 2020 +0300 test: update test-run (--snapshot) * Added --snapshot and --disable-schema-upgrade arguments (#240). * Fixed reporting of an error for conflicting arguments (#241). The `--snapshot path/to/snapshot` argument copies a given snapshot to a snapshot directory before start a tarantool instance. This allows to verify various functionality in the case, when tarantool is upgraded from a snapshot that is left by an older tarantool version (as opposite to test it on a freshly bootstrapped instance). There are limitations: when a test spawns a replica set, the option does not work correctly. The reason is that the same instance UUIDs (and IDs) cannot be used by different instances in a replica set. Maybe there are other pitfalls. The `--disable-schema-upgrade` argument instructs tarantool to skip execution of the schema upgrade script (using ERRINJ_AUTO_UPGRADE). This way we can verify that, when an instance works on an old schema version, a functionality is workable or at least gives correct error message. This commit only brings the new options into test-run. It does NOT add any new testing targets / rules. Part of #4801 diff --git a/test-run b/test-run index 08a4817bc..26aa3875a 160000 --- a/test-run +++ b/test-run @@ -1 +1 @@ -Subproject commit 08a4817bc85ac162a60fa26e943d7485a6fb2a6c +Subproject commit 26aa3875a7a51952cdb9f487c0e14bbef380db0c