[Tarantool-patches] [PATCH vshard 2/2] test: drop error codes from test output
Oleg Babin
olegrok at tarantool.org
Wed Sep 29 09:18:49 MSK 2021
Thanks for your patch. LGTM.
On 29.09.2021 02:08, Vladislav Shpilevoy wrote:
> In the newest Tarantool the error objects are encoded as MP_ERROR
> in netbox connections by default. This allows to transfer their
> full data including correct error code, even when returned as
> nil,err instead of throwing the error as an exception.
>
> Because of that some vshard tests failed - they expected the error
> codes returned from the server to be wrong.
>
> On the other hand, the codes can't be fixed, because then the
> tests wouldn't work on 1.10.
>
> The patch just drops the codes. At least while need to support
> Tarantool versions not using MP_ERROR in netbox by default.
> ---
> test/lua_libs/util.lua | 2 +-
> test/misc/check_uuid_on_connect.result | 2 --
> test/rebalancer/bucket_ref.result | 1 -
> test/rebalancer/receiving_bucket.result | 3 ---
> test/router/retry_reads.result | 2 --
> test/router/router.result | 3 ---
> test/router/sync.result | 2 --
> test/storage/storage.result | 1 -
> test/unit/error.result | 2 --
> 9 files changed, 1 insertion(+), 17 deletions(-)
>
> diff --git a/test/lua_libs/util.lua b/test/lua_libs/util.lua
> index 9c2e667..fe23065 100644
> --- a/test/lua_libs/util.lua
> +++ b/test/lua_libs/util.lua
> @@ -198,7 +198,7 @@ end
> -- trimmed in order for the tests not to depend on line numbers of
> -- the source files, which may slip into a .result file.
> local function portable_error(err)
> - return {code = err.code, type = err.type, message = err.message}
> + return {type = err.type, message = err.message}
> end
>
> return {
> diff --git a/test/misc/check_uuid_on_connect.result b/test/misc/check_uuid_on_connect.result
> index 6ebc5d0..8862e62 100644
> --- a/test/misc/check_uuid_on_connect.result
> +++ b/test/misc/check_uuid_on_connect.result
> @@ -45,7 +45,6 @@ res, util.portable_error(err)
> ---
> - null
> - type: ClientError
> - code: 77
> message: Connection closed
> ...
> test_run:grep_log('bad_uuid_1_a', 'Mismatch server UUID on replica bad_uuid_2_a%(storage%@')
> @@ -174,7 +173,6 @@ res, util.portable_error(err)
> ---
> - null
> - type: ClientError
> - code: 77
> message: Connection closed
> ...
> -- Close existing connection on a first error and log it.
> diff --git a/test/rebalancer/bucket_ref.result b/test/rebalancer/bucket_ref.result
> index 9df7480..67ae5bc 100644
> --- a/test/rebalancer/bucket_ref.result
> +++ b/test/rebalancer/bucket_ref.result
> @@ -144,7 +144,6 @@ res, util.portable_error(err)
> ---
> - null
> - type: ClientError
> - code: 32
> message: Timeout exceeded
> ...
> vshard.storage.buckets_info(1)
> diff --git a/test/rebalancer/receiving_bucket.result b/test/rebalancer/receiving_bucket.result
> index ad93445..ae1da58 100644
> --- a/test/rebalancer/receiving_bucket.result
> +++ b/test/rebalancer/receiving_bucket.result
> @@ -167,7 +167,6 @@ res, util.portable_error(err)
> ---
> - null
> - type: ClientError
> - code: 32
> message: Error injection 'the bucket is received partially'
> ...
> box.space._bucket:get{1}
> @@ -225,7 +224,6 @@ _, err = vshard.storage.bucket_send(101, util.replicasets[1], {timeout = 0.1})
> util.portable_error(err)
> ---
> - type: ClientError
> - code: 78
> message: Timeout exceeded
> ...
> box.space._bucket:get{101}
> @@ -332,7 +330,6 @@ ret, util.portable_error(err)
> ---
> - null
> - type: ClientError
> - code: 78
> message: Timeout exceeded
> ...
> finish_long_thing = true
> diff --git a/test/router/retry_reads.result b/test/router/retry_reads.result
> index fa38541..e5e721a 100644
> --- a/test/router/retry_reads.result
> +++ b/test/router/retry_reads.result
> @@ -118,7 +118,6 @@ fiber.time() - start < 1
> util.portable_error(e)
> ---
> - type: ClientError
> - code: 0
> message: Unknown error
> ...
> _, e = rs1:callro('sleep', {1}, {timeout = 0.0001})
> @@ -127,7 +126,6 @@ _, e = rs1:callro('sleep', {1}, {timeout = 0.0001})
> util.portable_error(e)
> ---
> - type: ClientError
> - code: 78
> message: Timeout exceeded
> ...
> --
> diff --git a/test/router/router.result b/test/router/router.result
> index 8ddbe6d..f9bf649 100644
> --- a/test/router/router.result
> +++ b/test/router/router.result
> @@ -259,7 +259,6 @@ _, e = vshard.router.callro(1, 'raise_client_error', {}, {})
> util.portable_error(e)
> ---
> - type: ClientError
> - code: 32
> message: Unknown error
> ...
> _, e = vshard.router.route(1):callro('raise_client_error', {})
> @@ -268,7 +267,6 @@ _, e = vshard.router.route(1):callro('raise_client_error', {})
> util.portable_error(e)
> ---
> - type: ClientError
> - code: 0
> message: Unknown error
> ...
> -- Ensure, that despite not working multi-return, it is allowed
> @@ -640,7 +638,6 @@ assert(type(err) == 'table')
> util.portable_error(err)
> ---
> - type: ClientError
> - code: 32
> message: Unknown error
> ...
> future:is_ready()
> diff --git a/test/router/sync.result b/test/router/sync.result
> index 040d611..164861e 100644
> --- a/test/router/sync.result
> +++ b/test/router/sync.result
> @@ -51,7 +51,6 @@ res, err = vshard.router.sync(-1)
> util.portable_error(err)
> ---
> - type: ClientError
> - code: 78
> message: Timeout exceeded
> ...
> res, err = vshard.router.sync(0)
> @@ -60,7 +59,6 @@ res, err = vshard.router.sync(0)
> util.portable_error(err)
> ---
> - type: ClientError
> - code: 78
> message: Timeout exceeded
> ...
> --
> diff --git a/test/storage/storage.result b/test/storage/storage.result
> index acae98f..af48a13 100644
> --- a/test/storage/storage.result
> +++ b/test/storage/storage.result
> @@ -514,7 +514,6 @@ res, err = vshard.storage.bucket_recv(4, util.replicasets[2], {{1000, {{1}}}})
> util.portable_error(err)
> ---
> - type: ClientError
> - code: 36
> message: Space '1000' does not exist
> ...
> while box.space._bucket:get{4} do vshard.storage.recovery_wakeup() fiber.sleep(0.01) end
> diff --git a/test/unit/error.result b/test/unit/error.result
> index 738cfeb..bb4e0cc 100644
> --- a/test/unit/error.result
> +++ b/test/unit/error.result
> @@ -28,7 +28,6 @@ str = tostring(box_error)
> util.portable_error(json.decode(str))
> ---
> - type: ClientError
> - code: 78
> message: Timeout exceeded
> ...
> vshard_error = lerror.vshard(lerror.code.UNREACHABLE_MASTER, 'uuid', 'reason')
> @@ -94,7 +93,6 @@ err = lerror.make(err)
> util.portable_error(err)
> ---
> - type: ClientError
> - code: 32
> message: '[string "function raise_lua_err() assert(false) end "]:1: assertion failed!'
> ...
> --
More information about the Tarantool-patches
mailing list