diff --git a/CMakeLists.txt b/CMakeLists.txt index c83eb8b6d6..670cb74a5b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -215,6 +215,7 @@ option(WITH_CRYPTO "Build with OpenSSL/libressl libcrypto, if available" ON) option(WITH_CAPSICUM "Build with Capsicum security functions, if available" ON) option(WITH_CAP_NG "Use libcap-ng, if available" ON) option(ENABLE_SMB "Build with the SMB dissector" OFF) +option(WITH_MSGPUCK "Build with msgpuck, if available" ON) # # String parameters. Neither of them are set, initially; only if the @@ -815,6 +816,18 @@ if(WITH_SMI) endif(SMI_FOUND) endif(WITH_SMI) +# +# msgpuck. +# +if(WITH_MSGPUCK) + find_package(MSGPUCK) + if(MSGPUCK_FOUND) + include_directories(SYSTEM ${MSGPUCK_INCLUDE_DIRS}) + set(TCPDUMP_LINK_LIBRARIES ${TCPDUMP_LINK_LIBRARIES} ${MSGPUCK_LIBRARIES}) + set(HAVE_MSGPUCK ON) + endif(MSGPUCK_FOUND) +endif(WITH_MSGPUCK) + # # OpenSSL/libressl libcrypto. # @@ -1209,6 +1222,7 @@ set(NETDISSECT_SOURCE_LIST_C print-sunrpc.c print-symantec.c print-syslog.c + print-tarantool.c print-tcp.c print-telnet.c print-tftp.c diff --git a/Makefile.in b/Makefile.in index 2128b640fb..0602b9bff0 100644 --- a/Makefile.in +++ b/Makefile.in @@ -231,6 +231,7 @@ LIBNETDISSECT_SRC=\ print-sunrpc.c \ print-symantec.c \ print-syslog.c \ + print-tarantool.c \ print-tcp.c \ print-telnet.c \ print-tftp.c \ diff --git a/cmake/Modules/FindMSGPUCK.cmake b/cmake/Modules/FindMSGPUCK.cmake new file mode 100644 index 0000000000..a4d3384e57 --- /dev/null +++ b/cmake/Modules/FindMSGPUCK.cmake @@ -0,0 +1,24 @@ +# +# try to find msgpuck. +# + +# Try to find the header +find_path(MSGPUCK_INCLUDE_DIR msgpuck.h) + +# Try to find the library +find_library(MSGPUCK_LIBRARY msgpuck) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(MSGPUCK + DEFAULT_MSG + MSGPUCK_INCLUDE_DIR + MSGPUCK_LIBRARY +) + +mark_as_advanced( + MSGPUCK_INCLUDE_DIR + MSGPUCK_LIBRARY +) + +set(MSGPUCK_INCLUDE_DIRS ${MSGPUCK_INCLUDE_DIR}) +set(MSGPUCK_LIBRARIES ${MSGPUCK_LIBRARY}) diff --git a/cmakeconfig.h.in b/cmakeconfig.h.in index 58450a8ae4..f90f476902 100644 --- a/cmakeconfig.h.in +++ b/cmakeconfig.h.in @@ -69,6 +69,9 @@ /* Define to 1 if you have the header file. */ #cmakedefine HAVE_MEMORY_H 1 +/* Define to 1 if you have the `msgpuck` library (-lmsgpuck) */ +#cmakedefine HAVE_MSGPUCK 1 + /* Define to 1 if you have the header file. */ #cmakedefine HAVE_NET_IF_H 1 diff --git a/configure.ac b/configure.ac index 4e0dc2dee3..0f83a060e7 100644 --- a/configure.ac +++ b/configure.ac @@ -136,6 +136,23 @@ int main() ]) fi +AC_ARG_WITH([tarantool], + [AS_HELP_STRING([--with-tarantool], + [link with msgpuck (Tarantool binary protocol support) [default=yes, if available]])], + [], + [with_tarantool=yes]) + +if test "x$with_tarantool" != "xno" ; then + AC_CHECK_HEADER(msgpuck.h, + [ + AC_CHECK_LIB(msgpuck, mp_decode_uint, + [ + LIBS="$LIBS -lmsgpuck" + AC_DEFINE(HAVE_MSGPUCK, 1, [Define to 1 if you have the `msgpuck` library (-lmsgpuck)]) + ]) + ]) +fi + AC_MSG_CHECKING([whether to enable the instrument functions code]) AC_ARG_ENABLE([instrument-functions], [AS_HELP_STRING([--enable-instrument-functions], diff --git a/netdissect.h b/netdissect.h index dcdc2548c3..a9669fd18e 100644 --- a/netdissect.h +++ b/netdissect.h @@ -305,6 +305,7 @@ NORETURN void nd_trunc_longjmp(netdissect_options *ndo); #define PT_SOMEIP 19 /* Autosar SOME/IP Protocol */ #define PT_DOMAIN 20 /* Domain Name System (DNS) */ #define PT_QUIC 21 /* QUIC */ +#define PT_IPROTO 22 /* Tarantool binary protocol */ #define ND_MIN(a,b) ((a)>(b)?(b):(a)) #define ND_MAX(a,b) ((b)>(a)?(b):(a)) @@ -748,6 +749,7 @@ extern void ssh_print(netdissect_options *, const u_char *, u_int); extern void stp_print(netdissect_options *, const u_char *, u_int); extern void sunrpc_print(netdissect_options *, const u_char *, u_int, const u_char *); extern void syslog_print(netdissect_options *, const u_char *, u_int); +extern void tarantool_print(netdissect_options *, const u_char *, u_int); extern void tcp_print(netdissect_options *, const u_char *, u_int, const u_char *, int); extern void telnet_print(netdissect_options *, const u_char *, u_int); extern void tftp_print(netdissect_options *, const u_char *, u_int); diff --git a/print-tarantool.c b/print-tarantool.c new file mode 100644 index 0000000000..22e9cea5e5 --- /dev/null +++ b/print-tarantool.c @@ -0,0 +1,2228 @@ +/* + * Copyright (c) 2023 The TCPDUMP project + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, + * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; + * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN + * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + * + * Initial contribution by Pavel Balaev (balaev@tarantool.org). + */ + +/* \summary: tarantool binary protocol printer */ + +#include +#include +#ifdef HAVE_CONFIG_H +#include +#endif + +#ifdef HAVE_MSGPUCK + +#include +#include "netdissect.h" +#include "netdissect-alloc.h" + +/* + * For information regarding tarantool binary protocol, see: + * https://www.tarantool.io/en/doc/latest/dev_guide/internals/box_protocol/ + */ + +/* IPROTO_FLAGS bitfield constants. */ +enum { + IPROTO_FLAG_COMMIT = 0x01, + IPROTO_FLAG_WAIT_SYNC = 0x02, + IPROTO_FLAG_WAIT_ACK = 0x04, +}; + +/* IPROTO command codes */ +enum request_type { + IPROTO_OK = 0, + IPROTO_SELECT = 1, + IPROTO_INSERT = 2, + IPROTO_REPLACE = 3, + IPROTO_UPDATE = 4, + IPROTO_DELETE = 5, + IPROTO_CALL_16 = 6, + IPROTO_AUTH = 7, + IPROTO_EVAL = 8, + IPROTO_UPSERT = 9, + IPROTO_CALL = 10, + IPROTO_EXECUTE = 11, + IPROTO_NOP = 12, + IPROTO_PREPARE = 13, + IPROTO_BEGIN = 14, + IPROTO_COMMIT = 15, + IPROTO_ROLLBACK = 16, + IPROTO_TYPE_STAT_MAX, + IPROTO_RAFT = 30, + IPROTO_RAFT_PROMOTE = 31, + IPROTO_RAFT_DEMOTE = 32, + IPROTO_RAFT_CONFIRM = 40, + IPROTO_RAFT_ROLLBACK = 41, + IPROTO_PING = 64, + IPROTO_JOIN = 65, + IPROTO_SUBSCRIBE = 66, + IPROTO_VOTE_DEPRECATED = 67, + IPROTO_VOTE = 68, + IPROTO_FETCH_SNAPSHOT = 69, + IPROTO_REGISTER = 70, + IPROTO_JOIN_META = 71, + IPROTO_JOIN_SNAPSHOT = 72, + IPROTO_ID = 73, + IPROTO_WATCH = 74, + IPROTO_UNWATCH = 75, + IPROTO_EVENT = 76, + IPROTO_TYPE_ERROR = 1 << 15 +}; + +enum iproto_key { + IPROTO_REQUEST_TYPE = 0x00, + IPROTO_SYNC = 0x01, + IPROTO_REPLICA_ID = 0x02, + IPROTO_LSN = 0x03, + IPROTO_TIMESTAMP = 0x04, + IPROTO_SCHEMA_VERSION = 0x05, + IPROTO_SERVER_VERSION = 0x06, + IPROTO_GROUP_ID = 0x07, + IPROTO_TSN = 0x08, + IPROTO_FLAGS = 0x09, + IPROTO_STREAM_ID = 0x0a, + IPROTO_SPACE_ID = 0x10, + IPROTO_INDEX_ID = 0x11, + IPROTO_LIMIT = 0x12, + IPROTO_OFFSET = 0x13, + IPROTO_ITERATOR = 0x14, + IPROTO_INDEX_BASE = 0x15, + IPROTO_KEY = 0x20, + IPROTO_TUPLE = 0x21, + IPROTO_FUNCTION_NAME = 0x22, + IPROTO_USER_NAME = 0x23, + IPROTO_INSTANCE_UUID = 0x24, + IPROTO_CLUSTER_UUID = 0x25, + IPROTO_VCLOCK = 0x26, + IPROTO_EXPR = 0x27, + IPROTO_OPS = 0x28, + IPROTO_BALLOT = 0x29, + IPROTO_TUPLE_META = 0x2a, + IPROTO_OPTIONS = 0x2b, + IPROTO_DATA = 0x30, + IPROTO_ERROR_24 = 0x31, + IPROTO_METADATA = 0x32, + IPROTO_BIND_METADATA = 0x33, + IPROTO_BIND_COUNT = 0x34, + IPROTO_SQL_TEXT = 0x40, + IPROTO_SQL_BIND = 0x41, + IPROTO_SQL_INFO = 0x42, + IPROTO_STMT_ID = 0x43, + IPROTO_REPLICA_ANON = 0x50, + IPROTO_ID_FILTER = 0x51, + IPROTO_ERROR = 0x52, + IPROTO_TERM = 0x53, + IPROTO_VERSION = 0x54, + IPROTO_FEATURES = 0x55, + IPROTO_TIMEOUT = 0x56, + IPROTO_EVENT_KEY = 0x57, + IPROTO_EVENT_DATA = 0x58, + IPROTO_KEY_MAX +}; + +enum iproto_metadata_key { + IPROTO_FIELD_NAME = 0, + IPROTO_FIELD_TYPE = 1, + IPROTO_FIELD_COLL = 2, + IPROTO_FIELD_IS_NULLABLE = 3, + IPROTO_FIELD_IS_AUTOINCREMENT = 4, + IPROTO_FIELD_SPAN = 5, +}; + +enum iproto_ballot_key { + IPROTO_BALLOT_IS_RO_CFG = 0x01, + IPROTO_BALLOT_VCLOCK = 0x02, + IPROTO_BALLOT_GC_VCLOCK = 0x03, + IPROTO_BALLOT_IS_RO = 0x04, + IPROTO_BALLOT_IS_ANON = 0x05, + IPROTO_BALLOT_IS_BOOTED = 0x06, + IPROTO_BALLOT_CAN_LEAD = 0x07, +}; + +enum iproto_raft_keys { + IPROTO_RAFT_TERM = 0, + IPROTO_RAFT_VOTE = 1, + IPROTO_RAFT_STATE = 2, + IPROTO_RAFT_VCLOCK = 3, +}; + +enum mp_extension_type { + MP_UNKNOWN_EXTENSION = 0, + MP_DECIMAL = 1, + MP_UUID = 2, + MP_ERROR = 3, + MP_DATETIME = 4, +}; + +static const char *extension_type[] = { + "UNKNOWN_EXTENSION", "DECIMAL", "UUID", "ERROR", "DATETIME" +}; + +static const char *iterator_type[] = { + "EQ", "REQ", "ALL", "LT", "LE", "GE", "GT", + "BITS_ALL_SET", "BITS_ANY_SET", "BITS_ALL_NOT_SET", + "OVERLAPS", "NEIGHBOR" +}; + +static const char *error_codes[] = { + "ER_UNKNOWN", + "ER_ILLEGAL_PARAMS", + "ER_MEMORY_ISSUE", + "ER_TUPLE_FOUND", + "ER_TUPLE_NOT_FOUND", + "ER_UNSUPPORTED", + "ER_NONMASTER", + "ER_READONLY", + "ER_INJECTION", + "ER_CREATE_SPACE", + "ER_SPACE_EXISTS", + "ER_DROP_SPACE", + "ER_ALTER_SPACE", + "ER_INDEX_TYPE", + "ER_MODIFY_INDEX", + "ER_LAST_DROP", + "ER_TUPLE_FORMAT_LIMIT", + "ER_DROP_PRIMARY_KEY", + "ER_KEY_PART_TYPE", + "ER_EXACT_MATCH", + "ER_INVALID_MSGPACK", + "ER_PROC_RET", + "ER_TUPLE_NOT_ARRAY", + "ER_FIELD_TYPE", + "ER_INDEX_PART_TYPE_MISMATCH", + "ER_UPDATE_SPLICE", + "ER_UPDATE_ARG_TYPE", + "ER_FORMAT_MISMATCH_INDEX_PART", + "ER_UNKNOWN_UPDATE_OP", + "ER_UPDATE_FIELD", + "ER_FUNCTION_TX_ACTIVE", + "ER_KEY_PART_COUNT", + "ER_PROC_LUA", + "ER_NO_SUCH_PROC", + "ER_NO_SUCH_TRIGGER", + "ER_NO_SUCH_INDEX_ID", + "ER_NO_SUCH_SPACE", + "ER_NO_SUCH_FIELD_NO", + "ER_EXACT_FIELD_COUNT", + "ER_FIELD_MISSING", + "ER_WAL_IO", + "ER_MORE_THAN_ONE_TUPLE", + "ER_ACCESS_DENIED", + "ER_CREATE_USER", + "ER_DROP_USER", + "ER_NO_SUCH_USER", + "ER_USER_EXISTS", + "ER_PASSWORD_MISMATCH", + "ER_UNKNOWN_REQUEST_TYPE", + "ER_UNKNOWN_SCHEMA_OBJECT", + "ER_CREATE_FUNCTION", + "ER_NO_SUCH_FUNCTION", + "ER_FUNCTION_EXISTS", + "ER_BEFORE_REPLACE_RET", + "ER_MULTISTATEMENT_TRANSACTION", + "ER_TRIGGER_EXISTS", + "ER_USER_MAX", + "ER_NO_SUCH_ENGINE", + "ER_RELOAD_CFG", + "ER_CFG", + "ER_SAVEPOINT_EMPTY_TX", + "ER_NO_SUCH_SAVEPOINT", + "ER_UNKNOWN_REPLICA", + "ER_REPLICASET_UUID_MISMATCH", + "ER_INVALID_UUID", + "ER_REPLICASET_UUID_IS_RO", + "ER_INSTANCE_UUID_MISMATCH", + "ER_REPLICA_ID_IS_RESERVED", + "ER_INVALID_ORDER", + "ER_MISSING_REQUEST_FIELD", + "ER_IDENTIFIER", + "ER_DROP_FUNCTION", + "ER_ITERATOR_TYPE", + "ER_REPLICA_MAX", + "ER_INVALID_XLOG", + "ER_INVALID_XLOG_NAME", + "ER_INVALID_XLOG_ORDER", + "ER_NO_CONNECTION", + "ER_TIMEOUT", + "ER_ACTIVE_TRANSACTION", + "ER_CURSOR_NO_TRANSACTION", + "ER_CROSS_ENGINE_TRANSACTION", + "ER_NO_SUCH_ROLE", + "ER_ROLE_EXISTS", + "ER_CREATE_ROLE", + "ER_INDEX_EXISTS", + "ER_SESSION_CLOSED", + "ER_ROLE_LOOP", + "ER_GRANT", + "ER_PRIV_GRANTED", + "ER_ROLE_GRANTED", + "ER_PRIV_NOT_GRANTED", + "ER_ROLE_NOT_GRANTED", + "ER_MISSING_SNAPSHOT", + "ER_CANT_UPDATE_PRIMARY_KEY", + "ER_UPDATE_INTEGER_OVERFLOW", + "ER_GUEST_USER_PASSWORD", + "ER_TRANSACTION_CONFLICT", + "ER_UNSUPPORTED_PRIV", + "ER_LOAD_FUNCTION", + "ER_FUNCTION_LANGUAGE", + "ER_RTREE_RECT", + "ER_PROC_C", + "ER_UNKNOWN_RTREE_INDEX_DISTANCE_TYPE", + "ER_PROTOCOL", + "ER_UPSERT_UNIQUE_SECONDARY_KEY", + "ER_WRONG_INDEX_RECORD", + "ER_WRONG_INDEX_PARTS", + "ER_WRONG_INDEX_OPTIONS", + "ER_WRONG_SCHEMA_VERSION", + "ER_MEMTX_MAX_TUPLE_SIZE", + "ER_WRONG_SPACE_OPTIONS", + "ER_UNSUPPORTED_INDEX_FEATURE", + "ER_VIEW_IS_RO", + "ER_NO_TRANSACTION", + "ER_SYSTEM", + "ER_LOADING", + "ER_CONNECTION_TO_SELF", + "ER_KEY_PART_IS_TOO_LONG", + "ER_COMPRESSION", + "ER_CHECKPOINT_IN_PROGRESS", + "ER_SUB_STMT_MAX", + "ER_COMMIT_IN_SUB_STMT", + "ER_ROLLBACK_IN_SUB_STMT", + "ER_DECOMPRESSION", + "ER_INVALID_XLOG_TYPE", + "ER_ALREADY_RUNNING", + "ER_INDEX_FIELD_COUNT_LIMIT", + "ER_LOCAL_INSTANCE_ID_IS_READ_ONLY", + "ER_BACKUP_IN_PROGRESS", + "ER_READ_VIEW_ABORTED", + "ER_INVALID_INDEX_FILE", + "ER_INVALID_RUN_FILE", + "ER_INVALID_VYLOG_FILE", + "ER_CASCADE_ROLLBACK", + "ER_VY_QUOTA_TIMEOUT", + "ER_PARTIAL_KEY", + "ER_TRUNCATE_SYSTEM_SPACE", + "ER_LOAD_MODULE", + "ER_VINYL_MAX_TUPLE_SIZE", + "ER_WRONG_DD_VERSION", + "ER_WRONG_SPACE_FORMAT", + "ER_CREATE_SEQUENCE", + "ER_ALTER_SEQUENCE", + "ER_DROP_SEQUENCE", + "ER_NO_SUCH_SEQUENCE", + "ER_SEQUENCE_EXISTS", + "ER_SEQUENCE_OVERFLOW", + "ER_NO_SUCH_INDEX_NAME", + "ER_SPACE_FIELD_IS_DUPLICATE", + "ER_CANT_CREATE_COLLATION", + "ER_WRONG_COLLATION_OPTIONS", + "ER_NULLABLE_PRIMARY", + "ER_NO_SUCH_FIELD_NAME_IN_SPACE", + "ER_TRANSACTION_YIELD", + "ER_NO_SUCH_GROUP", + "ER_SQL_BIND_VALUE", + "ER_SQL_BIND_TYPE", + "ER_SQL_BIND_PARAMETER_MAX", + "ER_SQL_EXECUTE", + "ER_UPDATE_DECIMAL_OVERFLOW", + "ER_SQL_BIND_NOT_FOUND", + "ER_ACTION_MISMATCH", + "ER_VIEW_MISSING_SQL", + "ER_FOREIGN_KEY_CONSTRAINT", + "ER_NO_SUCH_MODULE", + "ER_NO_SUCH_COLLATION", + "ER_CREATE_FK_CONSTRAINT", + "ER_DROP_FK_CONSTRAINT", + "ER_NO_SUCH_CONSTRAINT", + "ER_CONSTRAINT_EXISTS", + "ER_SQL_TYPE_MISMATCH", + "ER_ROWID_OVERFLOW", + "ER_DROP_COLLATION", + "ER_ILLEGAL_COLLATION_MIX", + "ER_SQL_NO_SUCH_PRAGMA", + "ER_SQL_CANT_RESOLVE_FIELD", + "ER_INDEX_EXISTS_IN_SPACE", + "ER_INCONSISTENT_TYPES", + "ER_SQL_SYNTAX_WITH_POS", + "ER_SQL_STACK_OVERFLOW", + "ER_SQL_SELECT_WILDCARD", + "ER_SQL_STATEMENT_EMPTY", + "ER_SQL_KEYWORD_IS_RESERVED", + "ER_SQL_SYNTAX_NEAR_TOKEN", + "ER_SQL_UNKNOWN_TOKEN", + "ER_SQL_PARSER_GENERIC", + "ER_SQL_ANALYZE_ARGUMENT", + "ER_SQL_COLUMN_COUNT_MAX", + "ER_HEX_LITERAL_MAX", + "ER_INT_LITERAL_MAX", + "ER_SQL_PARSER_LIMIT", + "ER_INDEX_DEF_UNSUPPORTED", + "ER_CK_DEF_UNSUPPORTED", + "ER_MULTIKEY_INDEX_MISMATCH", + "ER_CREATE_CK_CONSTRAINT", + "ER_CK_CONSTRAINT_FAILED", + "ER_SQL_COLUMN_COUNT", + "ER_FUNC_INDEX_FUNC", + "ER_FUNC_INDEX_FORMAT", + "ER_FUNC_INDEX_PARTS", + "ER_NO_SUCH_FIELD_NAME", + "ER_FUNC_WRONG_ARG_COUNT", + "ER_BOOTSTRAP_READONLY", + "ER_SQL_FUNC_WRONG_RET_COUNT", + "ER_FUNC_INVALID_RETURN_TYPE", + "ER_SQL_PARSER_GENERIC_WITH_POS", + "ER_REPLICA_NOT_ANON", + "ER_CANNOT_REGISTER", + "ER_SESSION_SETTING_INVALID_VALUE", + "ER_SQL_PREPARE", + "ER_WRONG_QUERY_ID", + "ER_SEQUENCE_NOT_STARTED", + "ER_NO_SUCH_SESSION_SETTING", + "ER_UNCOMMITTED_FOREIGN_SYNC_TXNS", + "ER_SYNC_MASTER_MISMATCH", + "ER_SYNC_QUORUM_TIMEOUT", + "ER_SYNC_ROLLBACK", + "ER_TUPLE_METADATA_IS_TOO_BIG", + "ER_XLOG_GAP", + "ER_TOO_EARLY_SUBSCRIBE", + "ER_SQL_CANT_ADD_AUTOINC", + "ER_QUORUM_WAIT", + "ER_INTERFERING_PROMOTE", + "ER_ELECTION_DISABLED", + "ER_TXN_ROLLBACK", + "ER_NOT_LEADER", + "ER_SYNC_QUEUE_UNCLAIMED", + "ER_SYNC_QUEUE_FOREIGN", + "ER_UNABLE_TO_PROCESS_IN_STREAM", + "ER_UNABLE_TO_PROCESS_OUT_OF_STREAM", + "ER_TRANSACTION_TIMEOUT", + "ER_ACTIVE_TIMER", + "ER_TUPLE_FIELD_COUNT_LIMIT" +}; + +enum error_keys { + MP_ERROR_TYPE = 0x00, + MP_ERROR_FILE = 0x01, + MP_ERROR_LINE = 0x02, + MP_ERROR_MESSAGE = 0x03, + MP_ERROR_ERRNO = 0x04, + MP_ERROR_CODE = 0x05, + MP_ERROR_FIELDS = 0x06, +}; + +enum system_space_id { + BOX_VINYL_DEFERRED_DELETE_ID = 257, + BOX_SCHEMA_ID = 272, + BOX_COLLATION_ID = 276, + BOX_VCOLLATION_ID = 277, + BOX_SPACE_ID = 280, + BOX_VSPACE_ID = 281, + BOX_SEQUENCE_ID = 284, + BOX_SEQUENCE_DATA_ID = 285, + BOX_VSEQUENCE_ID = 286, + BOX_INDEX_ID = 288, + BOX_VINDEX_ID = 289, + BOX_FUNC_ID = 296, + BOX_VFUNC_ID = 297, + BOX_USER_ID = 304, + BOX_VUSER_ID = 305, + BOX_PRIV_ID = 312, + BOX_VPRIV_ID = 313, + BOX_CLUSTER_ID = 320, + BOX_TRIGGER_ID = 328, + BOX_TRUNCATE_ID = 330, + BOX_SPACE_SEQUENCE_ID = 340, + BOX_FK_CONSTRAINT_ID = 356, + BOX_CK_CONSTRAINT_ID = 364, + BOX_FUNC_INDEX_ID = 372, + BOX_SESSION_SETTINGS_ID = 380, + BOX_SYSTEM_ID_MAX = 511, +}; + +/* must be sorted by id */ +static struct space { + enum system_space_id id; + const char *name; +} system_spaces[] = { + { BOX_VINYL_DEFERRED_DELETE_ID, "_vinyl_deferred_delete" }, + { BOX_SCHEMA_ID, "_schema" }, + { BOX_COLLATION_ID, "_collation" }, + { BOX_VCOLLATION_ID, "_vcollation" }, + { BOX_SPACE_ID, "_space" }, + { BOX_VSPACE_ID, "_vspace" }, + { BOX_SEQUENCE_ID, "_sequence" }, + { BOX_SEQUENCE_DATA_ID, "_sequence_data" }, + { BOX_VSEQUENCE_ID, "_vsequence" }, + { BOX_INDEX_ID, "_index" }, + { BOX_VINDEX_ID, "_vindex" }, + { BOX_FUNC_ID, "_func" }, + { BOX_VFUNC_ID, "_vfunc" }, + { BOX_USER_ID, "_user" }, + { BOX_VUSER_ID, "_vuser" }, + { BOX_PRIV_ID, "_priv" }, + { BOX_VPRIV_ID, "_vpriv" }, + { BOX_CLUSTER_ID, "_cluster" }, + { BOX_TRIGGER_ID, "_trigger" }, + { BOX_TRUNCATE_ID, "_truncate" }, + { BOX_SPACE_SEQUENCE_ID, "_space_sequence" }, + { BOX_FK_CONSTRAINT_ID, "_fk_constraint" }, + { BOX_CK_CONSTRAINT_ID, "_ck_constraint" }, + { BOX_FUNC_INDEX_ID, "_func_index" }, + { BOX_SESSION_SETTINGS_ID, "_session_settings" } +}; + +enum { UUID_STR_LEN = 36 }; + +struct uuid { + uint32_t time_low; + uint16_t time_mid; + uint16_t time_hi_and_version; + uint8_t clock_seq_hi_and_reserved; + uint8_t clock_seq_low; + uint8_t node[6]; +}; + +const char *get_time(netdissect_options *ndo, double ts); + +static inline int +uuid_validate(struct uuid *uu) +{ + /* Check variant (NCS, RFC4122, MSFT) */ + uint8_t n = uu->clock_seq_hi_and_reserved; + if ((n & 0x80) != 0x00 && (n & 0xc0) != 0x80 && (n & 0xe0) != 0xc0) { + return 1; + } + + return 0; +} + +static inline void +uuid_to_string(const struct uuid *uu, char *out) +{ + snprintf(out, UUID_STR_LEN + 1, + "%08x-%04x-%04x-%02x%02x-%02x%02x%02x%02x%02x%02x", + uu->time_low, uu->time_mid, uu->time_hi_and_version, + uu->clock_seq_hi_and_reserved, uu->clock_seq_low, uu->node[0], + uu->node[1], uu->node[2], uu->node[3], uu->node[4], uu->node[5]); +} + +static struct uuid * +uuid_unpack(const char **data, struct uuid *uuid) +{ + const char *const svp = *data; + + uuid->time_low = mp_load_u32(data); + uuid->time_mid = mp_load_u16(data); + uuid->time_hi_and_version = mp_load_u16(data); + uuid->clock_seq_hi_and_reserved = mp_load_u8(data); + uuid->clock_seq_low = mp_load_u8(data); + + for (int i = 0; i < 6; i++) { + uuid->node[i] = mp_load_u8(data); + } + + if (uuid_validate(uuid) != 0) { + *data = svp; + return NULL; + } + return uuid; +} + +#define DECIMAL_MAX_DIGITS 38 +#define DECIMAL_MAX_STR_LEN DECIMAL_MAX_DIGITS + 14 + +static int +decimal_unpack(const char **data, uint32_t len, char *res) +{ + int32_t scale, digits = 0; + const char *const svp = *data; + const char last_byte = (*data)[len - 1]; + uint8_t sign = last_byte & 0x0f; + + if (mp_typeof(**data) == MP_UINT) { + scale = mp_decode_uint(data); + } else if (mp_typeof(**data) == MP_INT) { + scale = mp_decode_int(data); + } else { + return 1; + } + + if (scale > DECIMAL_MAX_DIGITS || scale <= -DECIMAL_MAX_DIGITS) { + *data = svp; + return 1; + } + + len -= *data - svp; + + for (uint32_t n = 0; n < len; n++) { + uint8_t high_nibble = (*data)[n]; + uint8_t low_nibble = high_nibble; + + high_nibble >>= 4; + low_nibble &= 0x0f; + + sprintf(res + digits, "%u", high_nibble); + digits++; + + if (!(strlen(res) == 0 && low_nibble == 0) && n != len - 1) { + sprintf(res + digits, "%u", low_nibble); + digits++; + } + } + + /* Add missing zeros when scale is less than current length. */ + if (scale >= digits) { + char zeroes[DECIMAL_MAX_STR_LEN] = {0}; + int32_t z = 0; + + for (; z <= scale - digits; z++) { + sprintf(zeroes + z, "%d", 0); + } + memmove(res + z, res, digits); + memcpy(res, zeroes, z); + } + + /* Add a dot when number is fractional. */ + if (scale != 0) { + size_t res_len = strlen(res); + size_t shift = res_len - scale; + memmove(res + shift + 1, res + shift, scale); + res[shift] = '.'; + } + + /* Add a sign, it is encoded in a low nibble of a last byte */ + if (sign == 0x0d || sign == 0x0b) { + memmove(res + 1, res, strlen(res)); + res[0] = '-'; + } + + return 0; +} + +static int snprint_error(const char **msg, char *buf, int size); + +static int +snprint_ext_custom(char *buf, int size, const char **data, int depth) +{ + (void) depth; + int8_t type; + uint32_t len; + const char *ext = mp_decode_ext(data, &type, &len); + + switch (type) { + case MP_UUID: + { + struct uuid uuid = {0}; + char uuid_out[UUID_STR_LEN + 1] = {0}; + + if (uuid_unpack(&ext, &uuid) == NULL) { + memcpy(uuid_out, "corrupted", 9); + } else { + uuid_to_string(&uuid, uuid_out); + } + + return snprintf(buf, size, "(UUID: %s)", uuid_out); + } + case MP_ERROR: + return snprint_error(&ext, buf, size); + case MP_DECIMAL: + { + char dec_str[DECIMAL_MAX_STR_LEN + 1] = {0}; + + if (decimal_unpack(&ext, len, dec_str) != 0) { + memcpy(dec_str, "Error", 5); + } + return snprintf(buf, size, "(Decimal: %s)", dec_str); + } + case MP_DATETIME: + return snprintf(buf, size, "(Datetime: len %u)", len); + } + + return snprintf(buf, size, "(extension: type %d, len %u)", (int)type, + (unsigned)len); +} + +static int space_compar(const void *s1, const void *s2) +{ + const struct space *sp1 = s1; + const struct space *sp2 = s2; + + if (sp1->id == sp2->id) { + return 0; + } + + return (sp1->id < sp2->id) ? -1 : 1; +} + +#define TIME_BUF_LEN 32 + +/* timestamp returns from libev by ev_now() in double data */ +const char *get_time(netdissect_options *ndo, double ts) +{ + char buf[10] = {0}; +#if !defined(_MSC_VER) + struct tm time; +#else + struct tm *time; +#endif + time_t t = ts; + char *res, *p; + double fract; + size_t len; + +#if !defined(_MSC_VER) + if ((localtime_r(&t, &time)) != &time) { +#else + if ((time = localtime(&t)) == NULL) { +#endif + return NULL; + } + + if ((res = nd_malloc(ndo, TIME_BUF_LEN)) == NULL) { + return NULL; + } + p = res; + memset(res, 0, TIME_BUF_LEN); + +#if !defined(_MSC_VER) + if (!strftime(res, TIME_BUF_LEN, "%Y-%m-%d %H:%M:%S", &time)) { +#else + if (!strftime(res, TIME_BUF_LEN, "%Y-%m-%d %H:%M:%S", time)) { +#endif + return NULL; + } + + len = strlen(res); + p += len; + fract = ts - t; + snprintf(buf, sizeof(buf), "%lf", fract); + snprintf(p, TIME_BUF_LEN - len, "%s", buf + 1); + + return res; +} + +#define GR_NAME "Tarantool" +#define GR_MAXLEN 64 +#define ARR_LEN(p) (sizeof(p) / sizeof((p)[0])) +#define ND_PRINT_ERR_MPTYPE() (ndo->ndo_printf)(ndo, " unexpected MsgPack type") + +typedef struct { + uint64_t key; + union { + uint64_t val; + double val_d; + } u; +} kv_t; + +#define GEN_REQ(req) \ + static void parse_ ## req(netdissect_options *ndo, const char *msg, \ + const kv_t *kv, size_t kv_len); + +#define GEN_REQ_FUNC(req, name) \ +static void parse_ ## req(netdissect_options *ndo, const char *msg, \ + const kv_t *kv, size_t kv_len) \ +{ \ + double timestamp = 0; \ + uint64_t sync = 0, lsn = 0, rid = 0, flags = 0; \ + \ + for (size_t n = 0; n < kv_len; n++) { \ + switch (kv[n].key) { \ + case IPROTO_SYNC: \ + sync = kv[n].u.val; \ + break; \ + case IPROTO_LSN: \ + lsn = kv[n].u.val; \ + break; \ + case IPROTO_REPLICA_ID: \ + rid = kv[n].u.val; \ + break; \ + case IPROTO_FLAGS: \ + flags = kv[n].u.val; \ + break; \ + case IPROTO_TIMESTAMP: \ + timestamp = kv[n].u.val_d; \ + break; \ + } \ + } \ + \ + ND_PRINT(" request: %s, SYNC: %" PRIu64, #name, sync); \ + if (rid) { \ + ND_PRINT(", REPLICA_ID: %" PRIu64, rid); \ + } \ + if (lsn) { \ + ND_PRINT(", LSN: %" PRIu64, lsn); \ + } \ + if (timestamp) { \ + const char *time = get_time(ndo, timestamp); \ + ND_PRINT(", TIMESTAMP: %s", (time) ? time : "NULL"); \ + } \ + if (flags) { \ + ND_PRINT(", FLAGS: %" PRIu64, flags); \ + } \ + \ + if (ndo->ndo_vflag == 0) { \ + return; \ + } \ + \ + parse_body(ndo, msg); \ +} + +#define GEN_NOBODY_REQ_FUNC(req, name) \ +static void parse_ ## req(netdissect_options *ndo, const char *msg, \ + const kv_t *kv, size_t kv_len) \ +{ \ + uint64_t sync = 0; \ + (void) msg; \ + \ + for (size_t n = 0; n < kv_len; n++) { \ + switch (kv[n].key) { \ + case IPROTO_SYNC: \ + sync = kv[n].u.val; \ + break; \ + } \ + } \ + \ + ND_PRINT(" request: %s, SYNC: %" PRIu64, #name, sync); \ +} + +#define GEN_TRANS_REQ_FUNC(req, name) \ +static void parse_ ## req(netdissect_options *ndo, const char *msg, \ + const kv_t *kv, size_t kv_len) \ +{ \ + uint64_t sync, id; \ + (void) msg; \ + \ + sync = id = 0; \ + \ + for (size_t n = 0; n < kv_len; n++) { \ + switch (kv[n].key) { \ + case IPROTO_SYNC: \ + sync = kv[n].u.val; \ + break; \ + case IPROTO_STREAM_ID: \ + id = kv[n].u.val; \ + break; \ + default: \ + goto out; \ + } \ + } \ + \ + ND_PRINT(" request: %s, STREAM_ID: %" PRIu64 ", SYNC: %" PRIu64, \ + #name, id, sync); \ + \ + return; \ +out: \ + nd_print_invalid(ndo); \ +} + +typedef void (*request_print_t)(netdissect_options *ndo, const char *msg, + const kv_t *kv, size_t kv_len); + +GEN_REQ(ok) +GEN_REQ(id) +GEN_REQ(eval) +GEN_REQ(ping) +GEN_REQ(select) +GEN_REQ(insert) +GEN_REQ(update) +GEN_REQ(replace) +GEN_REQ(delete) +GEN_REQ(call) +GEN_REQ(call16) +GEN_REQ(auth) +GEN_REQ(upsert) +GEN_REQ(execute) +GEN_REQ(nop) +GEN_REQ(prepare) +GEN_REQ(begin) +GEN_REQ(commit) +GEN_REQ(rollback) +GEN_REQ(vote) +GEN_REQ(join) +GEN_REQ(subscribe) +GEN_REQ(join_meta) +GEN_REQ(join_snapshot) +GEN_REQ(raft) +GEN_REQ(raft_promote) +GEN_REQ(raft_confirm) +GEN_REQ(error) + +#define CASE_IPROTO_STR(param) \ + case IPROTO_ ## param: \ + { \ + const char *func; \ + \ + if (mp_typeof(*msg) != MP_STR) { \ + ND_PRINT_ERR_MPTYPE(); \ + goto out; \ + } \ + \ + func = get_string(ndo, msg); \ + if (func) { \ + ND_PRINT("\n%s: %s", #param, func); \ + } \ + mp_next(&msg); \ + } \ + break; + +#define CASE_IPROTO_UINT(param) \ + case IPROTO_ ## param: \ + if (mp_typeof(*msg) != MP_UINT) { \ + ND_PRINT_ERR_MPTYPE(); \ + goto out; \ + } \ + ND_PRINT("\n%s: %" PRIu64, #param, mp_decode_uint(&msg)); \ + break; + +#define CASE_IPROTO_ARRAY(param) \ + case IPROTO_ ## param: \ + if (mp_typeof(*msg) != MP_ARRAY) { \ + ND_PRINT_ERR_MPTYPE(); \ + goto out; \ + } \ + \ + ND_PRINT("\n%s: %s", #param, get_all_data(ndo, msg)); \ + mp_next(&msg); \ + break; \ + +#define CASE_IPROTO_MAP(param) \ + case IPROTO_ ## param: \ + if (mp_typeof(*msg) != MP_MAP) { \ + ND_PRINT_ERR_MPTYPE(); \ + goto out; \ + } \ + ND_PRINT("\n%s: %s", #param, get_all_data(ndo, msg)); \ + mp_next(&msg); \ + break; + +#define CASE_IPROTO_BOOL(param) \ + case IPROTO_ ## param: \ + if (mp_typeof(*msg) != MP_BOOL) { \ + ND_PRINT_ERR_MPTYPE(); \ + goto out; \ + } \ + ND_PRINT("\n%s: %s", #param, \ + mp_decode_bool(&msg) ? "true" : "false"); \ + break; + +/* must be sorted by type */ +static struct request { + enum request_type type; + request_print_t print; +} request_ops[] = { + { .type = IPROTO_OK, .print = parse_ok }, + { .type = IPROTO_SELECT, .print = parse_select }, + { .type = IPROTO_INSERT, .print = parse_insert }, + { .type = IPROTO_REPLACE, .print = parse_replace }, + { .type = IPROTO_UPDATE, .print = parse_update }, + { .type = IPROTO_DELETE, .print = parse_delete }, + { .type = IPROTO_CALL_16, .print = parse_call16 }, + { .type = IPROTO_AUTH, .print = parse_auth }, + { .type = IPROTO_EVAL, .print = parse_eval }, + { .type = IPROTO_UPSERT, .print = parse_upsert }, + { .type = IPROTO_CALL, .print = parse_call }, + { .type = IPROTO_EXECUTE, .print = parse_execute }, + { .type = IPROTO_NOP, .print = parse_nop }, + { .type = IPROTO_PREPARE, .print = parse_prepare }, + { .type = IPROTO_BEGIN, .print = parse_begin }, + { .type = IPROTO_COMMIT, .print = parse_commit }, + { .type = IPROTO_ROLLBACK, .print = parse_rollback }, + { .type = IPROTO_RAFT, .print = parse_raft }, + { .type = IPROTO_RAFT_PROMOTE, .print = parse_raft_promote }, + { .type = IPROTO_RAFT_CONFIRM, .print = parse_raft_confirm }, + { .type = IPROTO_PING, .print = parse_ping }, + { .type = IPROTO_JOIN, .print = parse_join }, + { .type = IPROTO_SUBSCRIBE, .print = parse_subscribe }, + { .type = IPROTO_VOTE, .print = parse_vote }, + { .type = IPROTO_JOIN_META, .print = parse_join_meta }, + { .type = IPROTO_JOIN_SNAPSHOT, .print = parse_join_snapshot }, + { .type = IPROTO_ID, .print = parse_id }, + { .type = IPROTO_TYPE_ERROR, .print = parse_error } +}; + +static int request_compar(const void *r1, const void *r2) +{ + const struct request *re1 = r1; + const struct request *re2 = r2; + + if (re1->type == re2->type) { + return 0; + } + + return (re1->type < re2->type) ? -1 : 1; +} + +static char *get_all_data(netdissect_options *ndo, const char *msg) +{ + int len = mp_snprint(NULL, 0, msg); + char *data = NULL; + + if (len > 0) { + len++; /* '\0' */ + + data = nd_malloc(ndo, len); + if (!data) { + return NULL; + } + mp_snprint(data, len, msg); + } + + return data; +} + +static char *get_string(netdissect_options *ndo, const char *msg) +{ + const char *str; + uint32_t len; + char *res; + + str = mp_decode_str(&msg, &len); + res = (char *)nd_malloc(ndo, len + 1); + if (!res) { + return NULL; + } + memcpy(res, str, len); + res[len] = '\0'; + + return res; +} + +static int snprint_error(const char **msg, char *buf, int size) +{ + int n = 0; + uint32_t stack_size; + int wlen = 0; + char *tmpbuf = NULL; + const char *err_ext = "(ERROR: "; + size_t err_ext_len = strlen(err_ext); + + if (buf != NULL) { + tmpbuf = calloc(1, size); + } + + if (!tmpbuf && buf) { + return snprintf(buf, size, "(Error: ENOMEM)"); + } + + if (mp_typeof(**msg) != MP_MAP) { + goto err_exit; + } + + if (mp_decode_map(msg) != 1) { + goto err_exit; + } + + if (mp_typeof(**msg) != MP_UINT) { + goto err_exit; + } + + if (mp_decode_uint(msg) != 0) { /* MP_ERROR_STACK */ + goto err_exit; + } + + if (mp_typeof(**msg) != MP_ARRAY) { + goto err_exit; + } + + stack_size = mp_decode_array(msg); + + if (buf != NULL) { + memcpy(tmpbuf + wlen, err_ext, err_ext_len); + } + wlen += err_ext_len; + + for (uint32_t s = 0; s < stack_size; s++) { + uint32_t map_items = mp_decode_map(msg); + + if (buf != NULL) { + memcpy(tmpbuf + wlen, "[", 1); + } + wlen++; + + for (uint32_t i = 0; i < map_items; i++) { + if (mp_typeof(**msg) != MP_UINT) { + goto err_exit; + } + uint64_t err_key = mp_decode_uint(msg); + + switch (err_key) { + case MP_ERROR_TYPE: + { + const char *type; + const char *info = "{ \"type\": \""; + size_t info_len = strlen(info); + uint32_t len; + + if (mp_typeof(**msg) != MP_STR) { + goto err_exit; + } + + type = mp_decode_str(msg, &len); + if (type != NULL) { + if (buf != NULL) { + memcpy(tmpbuf + wlen, info, info_len); + memcpy(tmpbuf + wlen + info_len, type, len); + memcpy(tmpbuf + wlen + info_len + len, "\"", 1); + } + wlen += (len + info_len + 1); + } + } + break; + case MP_ERROR_FILE: + { + const char *type; + const char *info = ", \"file\": \""; + size_t info_len = strlen(info); + uint32_t len; + + if (mp_typeof(**msg) != MP_STR) { + goto err_exit; + } + + type = mp_decode_str(msg, &len); + if (type != NULL) { + if (buf != NULL) { + memcpy(tmpbuf + wlen, info, info_len); + memcpy(tmpbuf + wlen + info_len, type, len); + memcpy(tmpbuf + wlen + info_len + len, "\"", 1); + } + wlen += (len + info_len + 1); + } + } + break; + case MP_ERROR_MESSAGE: + { + const char *type; + const char *info = ", \"message\": \""; + size_t info_len = strlen(info); + uint32_t len; + + if (mp_typeof(**msg) != MP_STR) { + goto err_exit; + } + + type = mp_decode_str(msg, &len); + if (type != NULL) { + if (buf != NULL) { + memcpy(tmpbuf + wlen, info, info_len); + memcpy(tmpbuf + wlen + info_len, type, len); + memcpy(tmpbuf + wlen + info_len + len, "\"", 1); + } + wlen += (len + info_len + 1); + } + } + break; + case MP_ERROR_LINE: + { + uint64_t num; + size_t num_len; + char num_buf[32] = {0}; + + if (mp_typeof(**msg) != MP_UINT) { + goto err_exit; + } + num = mp_decode_uint(msg); + snprintf(num_buf, sizeof(num_buf), + ", \"line\": %" PRIu64, num); + num_len = strlen(num_buf); + if (buf != NULL) { + memcpy(tmpbuf + wlen, num_buf, num_len); + } + wlen += num_len; + } + break; + case MP_ERROR_CODE: + { + uint64_t num; + size_t num_len; + char num_buf[32] = {0}; + + if (mp_typeof(**msg) != MP_UINT) { + goto err_exit; + } + num = mp_decode_uint(msg); + snprintf(num_buf, sizeof(num_buf), + ", \"code\": %" PRIu64 " }", num); + num_len = strlen(num_buf); + if (buf != NULL) { + memcpy(tmpbuf + wlen, num_buf, num_len); + } + wlen += num_len; + } + break; + case MP_ERROR_ERRNO: + { + uint64_t num; + size_t num_len; + char num_buf[32] = {0}; + + if (mp_typeof(**msg) != MP_UINT) { + goto err_exit; + } + num = mp_decode_uint(msg); + snprintf(num_buf, sizeof(num_buf), + ", \"errno\": %" PRIu64, num); + num_len = strlen(num_buf); + if (buf != NULL) { + memcpy(tmpbuf + wlen, num_buf, num_len); + } + wlen += num_len; + } + break; + case MP_ERROR_FIELDS: + { + if (mp_typeof(**msg) != MP_MAP) { + goto err_exit; + } + const char *fields_msg = ", \"fields\": {"; + size_t fields_len = strlen(fields_msg); + uint32_t fields = mp_decode_map(msg); + + if (buf != NULL && fields) { + memcpy(tmpbuf + wlen, fields_msg, fields_len); + } + + if (fields) { + wlen += fields_len; + } + + for (size_t f = 0; f < fields; f++) { + uint32_t len, val_len; + const char *k, *v; + + if (mp_typeof(**msg) != MP_STR) { + goto err_exit; + } + + k = mp_decode_str(msg, &len); + v = *msg; + mp_next(msg); + val_len = *msg - v; + + if (mp_typeof(*v) == MP_STR) { + v++; + val_len--; + } + + if (k && v && buf != NULL) { + memcpy(tmpbuf + wlen, " \"", 2); + memcpy(tmpbuf + wlen + 2, k, len); + memcpy(tmpbuf + wlen + 2 + len, "\": ", 3); + memcpy(tmpbuf + wlen + 5 + len, v, val_len); + memcpy(tmpbuf + wlen + 5 + len + val_len, + (f != fields - 1) ? "," : " ", 1); + } + + if (k && v) { + wlen += len + val_len + 6; + } + } + + if (buf != NULL && fields) { + memcpy(tmpbuf + wlen, "}", 1); + } + if (fields) { + wlen++; + } + } + break; + default: + mp_next(msg); + } + } + + if (buf != NULL) { + memcpy(tmpbuf + wlen, "]", 1); + } + wlen++; + } + + if (buf != NULL) { + memcpy(tmpbuf + wlen, ")", 1); + } + wlen++; + + if (buf != NULL) { + n = snprintf(buf, size, "%s", tmpbuf); + free(tmpbuf); + } else { + n = wlen; + } + return n; + +err_exit: + if (buf != NULL) { + free(tmpbuf); + return snprintf(buf, size, "(Error: incorrect message)"); + } else { + return strlen("(Error: incorrect message)"); + } +} + +/* format: {0: [{}]} */ +static void print_error(netdissect_options *ndo, const char **msg) +{ + uint32_t stack_size; + + if (!msg) { + return; + } + + if (mp_typeof(**msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + if (mp_decode_map(msg) != 1) { + goto out; + } + + if (mp_typeof(**msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + if (mp_decode_uint(msg) != 0) { /* MP_ERROR_STACK */ + goto out; + } + + if (mp_typeof(**msg) != MP_ARRAY) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + stack_size = mp_decode_array(msg); + for (uint32_t s = 0; s < stack_size; s++) { + uint32_t map_items = mp_decode_map(msg); + + if (map_items && s != 0) { + ND_PRINT("\n---"); + } + + for (uint32_t i = 0; i < map_items; i++) { + uint64_t err_key; + + if (mp_typeof(**msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + err_key = mp_decode_uint(msg); + switch (err_key) { + case MP_ERROR_TYPE: + { + const char *type; + + if (mp_typeof(**msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + type = get_string(ndo, *msg); + if (type) { + ND_PRINT("\nTYPE: %s", type); + } + mp_next(msg); + } + break; + case MP_ERROR_FILE: + { + const char *file; + + if (mp_typeof(**msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + file = get_string(ndo, *msg); + if (file) { + ND_PRINT("\nFILE: %s", file); + } + mp_next(msg); + } + break; + case MP_ERROR_LINE: + if (mp_typeof(**msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + ND_PRINT("\nLINE: %" PRIu64, mp_decode_uint(msg)); + break; + case MP_ERROR_MESSAGE: + { + const char *message; + + if (mp_typeof(**msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + message = get_string(ndo, *msg); + if (message) { + ND_PRINT("\nMESSAGE: %s", message); + } + mp_next(msg); + } + break; + case MP_ERROR_ERRNO: + if (mp_typeof(**msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + ND_PRINT("\nERRNO: %" PRIu64, mp_decode_uint(msg)); + break; + case MP_ERROR_CODE: + if (mp_typeof(**msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + ND_PRINT("\nCODE: %" PRIu64, mp_decode_uint(msg)); + break; + case MP_ERROR_FIELDS: + { + uint32_t fields = mp_decode_map(msg); + + if (fields) { + ND_PRINT("\nFIELDS:"); + } + + for (size_t f = 0; f < fields; f++) { + const char *k, *v; + + if (mp_typeof(**msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + k = get_string(ndo, *msg); + mp_next(msg); + v = get_string(ndo, *msg); + mp_next(msg); + + if (k && v) { + ND_PRINT(" %s: %s%s", k, v, + (f != fields - 1) ? "," : ""); + } + } + } + break; + } + } + } + return; +out: + nd_print_invalid(ndo); +} + +static void parse_body(netdissect_options *ndo, const char *msg) +{ + uint32_t body_items; + + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + body_items = mp_decode_map(&msg); + + for (uint32_t n = 0; n < body_items; n++) { + uint64_t key; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + key = mp_decode_uint(&msg); + switch (key) { + case IPROTO_SPACE_ID: + { + uint64_t sid; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + sid = mp_decode_uint(&msg); + if (sid >= BOX_SYSTEM_ID_MAX) { + ND_PRINT("\nSPACE_ID: %" PRIu64, sid); + } else { + struct space sp = { .id = sid }; + struct space *res; + + res = bsearch(&sp, system_spaces, ARR_LEN(system_spaces), + sizeof(struct space), space_compar); + if (res) { + ND_PRINT("\nSPACE: %s (ID: %" PRIu64 ")", + res->name, sid); + } else { + ND_PRINT("\nSPACE_ID: %" PRIu64, sid); + } + } + } + break; + case IPROTO_ITERATOR: + { + uint64_t it; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + it = mp_decode_uint(&msg); + + ND_PRINT("\nITERATOR: %s", (it >= ARR_LEN(iterator_type)) ? + "unknown" : iterator_type[it]); + } + break; + case IPROTO_BALLOT: + { + uint32_t ballot_items; + + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + ballot_items = mp_decode_map(&msg); + if (ballot_items) { + ND_PRINT("\n[BALLOT]"); + } + for (uint32_t b = 0; b < ballot_items; b++) { + uint64_t bkey; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + bkey = mp_decode_uint(&msg); + switch (bkey) { + CASE_IPROTO_BOOL(BALLOT_IS_RO_CFG); + CASE_IPROTO_BOOL(BALLOT_IS_RO); + CASE_IPROTO_BOOL(BALLOT_IS_ANON); + CASE_IPROTO_BOOL(BALLOT_IS_BOOTED); + CASE_IPROTO_BOOL(BALLOT_CAN_LEAD); + CASE_IPROTO_MAP(BALLOT_VCLOCK); + CASE_IPROTO_MAP(BALLOT_GC_VCLOCK); + } + } + } + break; + case IPROTO_DATA: + { + uint32_t data_items; + + if (mp_typeof(*msg) != MP_ARRAY) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + data_items = mp_decode_array(&msg); + if (data_items) { + ND_PRINT("\nDATA:"); + } + for (uint32_t d = 0; d < data_items; d++) { + switch (mp_typeof(*msg)) { + case MP_EXT: + { + int8_t type; + uint32_t len; + const char *ext = mp_decode_ext(&msg, &type, &len); + uint8_t idx = type; + ND_PRINT("\nEXTENSION: type %s [%d], len %u", + (idx >= ARR_LEN(extension_type)) ? + "UNKNOWN" : extension_type[idx], + type, len); + switch (type) { + case MP_ERROR: + print_error(ndo, &ext); + break; + } + break; + } + default: + ND_PRINT("\n%s", get_all_data(ndo, msg)); + mp_next(&msg); + break; + } + } + } + break; + CASE_IPROTO_STR(INSTANCE_UUID); + CASE_IPROTO_STR(CLUSTER_UUID); + CASE_IPROTO_STR(FUNCTION_NAME); + CASE_IPROTO_STR(SQL_TEXT); + CASE_IPROTO_STR(EXPR); + CASE_IPROTO_MAP(VCLOCK); + CASE_IPROTO_UINT(SERVER_VERSION); + CASE_IPROTO_UINT(VERSION); + CASE_IPROTO_UINT(BIND_COUNT); + CASE_IPROTO_UINT(INDEX_ID); + CASE_IPROTO_UINT(INDEX_BASE); + CASE_IPROTO_UINT(STMT_ID); + CASE_IPROTO_UINT(OFFSET); + CASE_IPROTO_UINT(LIMIT); + CASE_IPROTO_UINT(REPLICA_ID); + CASE_IPROTO_UINT(LSN); + CASE_IPROTO_UINT(TERM); + CASE_IPROTO_BOOL(REPLICA_ANON); + CASE_IPROTO_ARRAY(FEATURES); + CASE_IPROTO_ARRAY(METADATA); + CASE_IPROTO_ARRAY(BIND_METADATA); + CASE_IPROTO_ARRAY(KEY); + CASE_IPROTO_ARRAY(TUPLE); + CASE_IPROTO_ARRAY(OPS); + CASE_IPROTO_ARRAY(OPTIONS); + CASE_IPROTO_ARRAY(SQL_BIND); + CASE_IPROTO_ARRAY(ID_FILTER); + default: + ND_PRINT("\n_UNKNOWN_"); + mp_next(&msg); + } + } + + return; +out: + nd_print_invalid(ndo); +} + +GEN_REQ_FUNC(prepare, PREPARE) +GEN_REQ_FUNC(call, CALL) +GEN_REQ_FUNC(call16, CALL_16) +GEN_REQ_FUNC(id, ID) +GEN_REQ_FUNC(delete, DELETE) +GEN_REQ_FUNC(replace, REPLACE) +GEN_REQ_FUNC(upsert, UPSERT) +GEN_REQ_FUNC(update, UPDATE) +GEN_REQ_FUNC(execute, EXECUTE) +GEN_REQ_FUNC(insert, INSERT) +GEN_REQ_FUNC(select, SELECT) +GEN_REQ_FUNC(eval, EVAL) +GEN_REQ_FUNC(join, JOIN) +GEN_REQ_FUNC(subscribe, SUBSCRIBE) +GEN_REQ_FUNC(join_meta, JOIN_META) +GEN_REQ_FUNC(raft_promote, RAFT_PROMOTE) +GEN_REQ_FUNC(raft_confirm, RAFT_CONFIRM) +GEN_NOBODY_REQ_FUNC(ping, PING) +GEN_NOBODY_REQ_FUNC(nop, NOP) +GEN_NOBODY_REQ_FUNC(join_snapshot, JOIN_SNAPSHOT) +GEN_TRANS_REQ_FUNC(begin, BEGIN) +GEN_TRANS_REQ_FUNC(commit, COMMIT) +GEN_TRANS_REQ_FUNC(rollback, ROLLBACK) + +static void parse_heartbeat(netdissect_options *ndo, const char *msg) +{ + uint32_t body_items; + bool heartbeat_resp = false; + + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + body_items = mp_decode_map(&msg); + + for (uint32_t n = 0; n < body_items; n++) { + uint64_t key; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + key = mp_decode_uint(&msg); + switch (key) { + case IPROTO_VCLOCK: + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + heartbeat_resp = true; + break; + } + } + + if (heartbeat_resp) { + ND_PRINT(" response: HEARTBEAT\nVCLOCK: %s", get_all_data(ndo, msg)); + } + + return; +out: + nd_print_invalid(ndo); +} + +static void parse_ok(netdissect_options *ndo, const char *msg, + const kv_t *kv, size_t kv_len) +{ + uint64_t sync, version, key, replica_id; + double timestamp = 0; + + sync = version = key = replica_id = 0; + + if (!kv_len) { /* may be a heartbeat response */ + parse_heartbeat(ndo, msg); + return; + } + + for (size_t n = 0; n < kv_len; n++) { + switch (kv[n].key) { + case IPROTO_SYNC: + sync = kv[n].u.val; + break; + case IPROTO_SCHEMA_VERSION: + version = kv[n].u.val; + break; + case IPROTO_REPLICA_ID: + replica_id = kv[n].u.val; + break; + case IPROTO_TIMESTAMP: + timestamp = kv[n].u.val_d; + break; + default: + goto out; + } + } + + if (replica_id && timestamp) { /* heartbeat request */ + const char *time = get_time(ndo, timestamp); + ND_PRINT(" request: HEARTBEAT, REPLICA_ID: %" PRIu64 ", TIMESTAMP: %s", + replica_id, (time) ? time : "NULL"); + return; + } + + ND_PRINT(" response: OK, SYNC: %" PRIu64 ", SCHEMA_VERSION: %" PRIu64, + sync, version); + if (timestamp) { + const char *time = get_time(ndo, timestamp); + ND_PRINT(", TIMESTAMP: %s", (time) ? time : "NULL"); + } + + if (ndo->ndo_vflag == 0) { + return; + } + + parse_body(ndo, msg); + + return; +out: + nd_print_invalid(ndo); +} + +static void parse_error(netdissect_options *ndo, const char *msg, + const kv_t *kv, size_t kv_len) +{ + uint64_t sync, version, errcode; + uint32_t body_items; + + sync = version = errcode = 0; + + if (kv_len != 3) { + goto out; + } + + for (size_t n = 0; n < kv_len; n++) { + switch (kv[n].key) { + case IPROTO_SYNC: + sync = kv[n].u.val; + break; + case IPROTO_SCHEMA_VERSION: + version = kv[n].u.val; + break; + case IPROTO_REQUEST_TYPE: + errcode = kv[n].u.val; + break; + default: + goto out; + } + } + + ND_PRINT(" response: ERR: %s, SYNC: %" PRIu64 ", SCHEMA_VERSION: %" PRIu64, + (errcode >= ARR_LEN(error_codes)) ? "unknown" : + error_codes[errcode], sync, version); + + if (ndo->ndo_vflag == 0) { + return; + } + + /* parse and print body */ + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + body_items = mp_decode_map(&msg); + + if (body_items == 1) { /* versions <= 2.4.0 */ + uint64_t key; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + key = mp_decode_uint(&msg); + + if (key == IPROTO_ERROR_24) { + const char *error; + + if (mp_typeof(*msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + error = get_string(ndo, msg); + if (error) { + ND_PRINT("\nERROR: %s", error); + } + } + return; + } + + for (uint32_t n = 0; n < body_items; n++) { + uint64_t key; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + key = mp_decode_uint(&msg); + switch (key) { + case IPROTO_ERROR_24: + mp_next(&msg); + break; + case IPROTO_ERROR: + print_error(ndo, &msg); + break; + } + } + + return; +out: + nd_print_invalid(ndo); +} + +static void parse_vote(netdissect_options *ndo, const char *msg, + const kv_t *kv, size_t kv_len) +{ + (void) msg; + (void) kv; + (void) kv_len; + + ND_PRINT(" request: VOTE"); +} + +static const char +base64_chars[] = + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + +static char *base64_encode(netdissect_options *ndo, const uint8_t *src, + uint32_t src_len) +{ + size_t res_len; + char *res; + + res_len = 4 * ((src_len + 2) / 3); + res = nd_malloc(ndo, res_len + 1); + if (!res) { + return NULL; + } + + for (size_t i = 0, j = 0; i < src_len; i += 3, j += 4) { + size_t a = i < src_len ? src[i] : 0; + size_t b = i + 1 < src_len ? src[i + 1] : 0; + size_t c = i + 2 < src_len ? src[i + 2] : 0; + size_t abc = (a << 0x10) + (b << 0x8) + c; + + res[j] = base64_chars[(abc >> 18) & 0x3F]; + res[j + 1] = base64_chars[(abc >> 12) & 0x3F]; + + if (i + 1 < src_len) + res[j + 2] = base64_chars[(abc >> 6) & 0x3F]; + else + res[j + 2] = '='; + + if (i + 2 < src_len) + res[j + 3] = base64_chars[abc & 0x3F]; + else + res[j + 3] = '='; + } + + return res; +} + +/* IPROTO_AUTH requires additional processing: + * scramble is stored in binary format and needs to be encoded for printing */ +static void parse_auth(netdissect_options *ndo, const char *msg, + const kv_t *kv, size_t kv_len) +{ + uint64_t sync = 0; + uint32_t body_items; + + for (size_t n = 0; n < kv_len; n++) { + switch (kv[n].key) { + case IPROTO_SYNC: + sync = kv[n].u.val; + break; + } + } + + ND_PRINT(" request: AUTH, SYNC: %" PRIu64, sync); + + if (ndo->ndo_vflag == 0) { + return; + } + + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + body_items = mp_decode_map(&msg); + + for (uint32_t n = 0; n < body_items; n++) { + uint64_t key; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + key = mp_decode_uint(&msg); + switch (key) { + case IPROTO_TUPLE: + { + uint32_t items, scramble_len; + const char *auth, *scramble; + + if (mp_typeof(*msg) != MP_ARRAY) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + items = mp_decode_array(&msg); + if (items != 2) { + goto out; + } + + if (mp_typeof(*msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + auth = get_string(ndo, msg); + if (auth) { + ND_PRINT("\nAUTH: %s", auth); + } + mp_next(&msg); + + if (mp_typeof(*msg) != MP_STR) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + scramble = mp_decode_str(&msg, &scramble_len); + if (scramble) { + const char *scramble_encoded = base64_encode(ndo, + (const uint8_t *) scramble, scramble_len); + if (scramble_encoded) { + ND_PRINT("\nSCRAMBLE: %s", scramble_encoded); + } + } + } + break; + CASE_IPROTO_STR(USER_NAME); + default: + goto out; + } + } + + return; +out: + nd_print_invalid(ndo); +} + +/* IPROTO_RAFT body does not have unique key in enum iproto_key */ +static void parse_raft(netdissect_options *ndo, const char *msg, + const kv_t *kv, size_t kv_len) +{ + uint32_t body_items; + uint64_t sync, id; + + sync = id = 0; + + for (size_t n = 0; n < kv_len; n++) { + switch (kv[n].key) { + case IPROTO_SYNC: + sync = kv[n].u.val; + break; + case IPROTO_GROUP_ID: + id = kv[n].u.val; + break; + default: + goto out; + } + } + + ND_PRINT(" request: RAFT, GROUP_ID: %" PRIu64 ", SYNC: %" PRIu64, id, sync); + + if (ndo->ndo_vflag == 0) { + return; + } + + if (mp_typeof(*msg) != MP_MAP) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + body_items = mp_decode_map(&msg); + + for (uint32_t n = 0; n < body_items; n++) { + uint64_t key; + + if (mp_typeof(*msg) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + key = mp_decode_uint(&msg); + switch (key) { + CASE_IPROTO_UINT(RAFT_TERM); + CASE_IPROTO_UINT(RAFT_VOTE); + CASE_IPROTO_UINT(RAFT_STATE); + CASE_IPROTO_MAP(RAFT_VCLOCK); + } + } + + return; +out: + nd_print_invalid(ndo); +} + +/* Greeting message format: + * _version_:space:_uuid_:space::newline:_salt_:spaces: + */ +static int parse_greeting(netdissect_options *ndo, const char *msg) +{ + char version[GR_MAXLEN] = {0}; + char uuid[GR_MAXLEN] = {0}; + char *nl, *delim; + size_t len, ver_len, uuid_len; + + if (strncmp(msg, "Tarantool", sizeof(GR_NAME) - 1) != 0) { + return 0; + } + + ND_PRINT(": IPROTO: greeting: "); + nl = strchr(msg, '\n'); + + if (!nl) { + ND_PRINT("version: unknown, uuid: unknown"); + nd_print_invalid(ndo); + return 1; + } + + len = nl - msg; + + memcpy(version, msg, len); + version[len] = '\0'; + + delim = strrchr(version, 0x20); + if (!delim) { + ND_PRINT("version: unknown, uuid: unknown"); + nd_print_invalid(ndo); + return 1; + } + + /* cut last space */ + *delim = '\0'; + + delim = strrchr(version, 0x20); + if (!delim) { + ND_PRINT("version: unknown, uuid: unknown"); + nd_print_invalid(ndo); + return 1; + } + + ver_len = delim - version; + + uuid_len = len - ver_len; + memcpy(uuid, delim + 1, uuid_len - 1); + uuid[uuid_len] = '\0'; + version[ver_len] = '\0'; + + ND_PRINT("version: %s, uuid: %s", version, uuid); + + /* print salt if verbose */ + if (ndo->ndo_vflag >= 1) { + char salt[GR_MAXLEN] = {0}; + + delim = strchr(nl, 0x20); + if (!delim) { + return 1; + } + + memcpy(salt, nl + 1, delim - nl - 1); + ND_PRINT(", salt: %s", salt); + } + + return 1; +} + +void +tarantool_print(netdissect_options *ndo, const u_char *bp, u_int length) +{ + request_print_t print_req = NULL; + const char *payload = (const char *) bp; + uint32_t header_items; + size_t kvs_len = 0; + char *body = NULL; + char *hdr = NULL; + uint64_t size; + kv_t *kvs; + + /* override default MP_EXT serialization function */ + mp_snprint_ext = snprint_ext_custom; + + if (!bp || length <= 0) { + return; + } + + /* greeting message is not in MsgPack format */ + if (length >= (sizeof(GR_NAME) - 1)) { + if (parse_greeting(ndo, payload)) { + return; + } + } + + if (mp_typeof(*payload) != MP_UINT) { + return; + } + + size = mp_decode_uint(&payload); + + if (ndo->ndo_vflag == 2) { + hdr = get_all_data(ndo, payload); + } + + /* parse header */ + if (mp_typeof(*payload) != MP_MAP) { + return; + } + + ND_PRINT(": IPROTO size=%" PRIu64, size); + + header_items = mp_decode_map(&payload); + + if (!header_items) { + goto out; + } + + kvs = nd_malloc(ndo, header_items * sizeof(kv_t)); + if (!kvs) { + return; + } + + for (uint32_t n = 0; n < header_items; n++) { + uint64_t key, val = 0; + double val_d = 0; + + if (mp_typeof(*payload) != MP_UINT) { + ND_PRINT_ERR_MPTYPE(); + goto out; + } + key = mp_decode_uint(&payload); + + switch (mp_typeof(*payload)) { + case MP_UINT: + val = mp_decode_uint(&payload); + break; + case MP_DOUBLE: + val_d = mp_decode_double(&payload); + break; + default: + ND_PRINT_ERR_MPTYPE(); + goto out; + } + + if (key == IPROTO_REQUEST_TYPE) { + struct request *res; + struct request rkey = { .type = val }; + + /* error code is 0x8XXX */ + if (val >> 12 == 8) { + uint32_t err = val & 0xfff; + kvs[kvs_len].key = key; + kvs[kvs_len].u.val = err; + kvs_len++; + rkey.type = IPROTO_TYPE_ERROR; + } + + res = bsearch(&rkey, request_ops, ARR_LEN(request_ops), + sizeof(struct request), request_compar); + if (res) { + print_req = res->print; + } + + continue; /* we do not need to store request type */ + } + + kvs[kvs_len].key = key; + if (val_d) { + kvs[kvs_len].u.val_d = val_d; + } else { + kvs[kvs_len].u.val = val; + } + kvs_len++; + } + + if (print_req) { + print_req(ndo, payload, kvs, kvs_len); + } + + if (ndo->ndo_vflag == 2) { + if (mp_typeof(*payload) == MP_MAP) { + body = get_all_data(ndo, payload); + } + if (hdr) { + ND_PRINT("\nheader: %s", hdr); + } + if (body) { + ND_PRINT("\nbody: %s", body); + } + } + + return; +out: + nd_print_invalid(ndo); +} +#endif diff --git a/print-tcp.c b/print-tcp.c index f9dfbb7cbc..f0a659088d 100644 --- a/print-tcp.c +++ b/print-tcp.c @@ -742,6 +742,11 @@ tcp_print(netdissect_options *ndo, /* over_tcp: TRUE, is_mdns: FALSE */ domain_print(ndo, bp, length, TRUE, FALSE); break; +#ifdef HAVE_MSGPUCK + case PT_IPROTO: + tarantool_print(ndo, bp, length); + break; +#endif } return; } diff --git a/tcpdump.1.in b/tcpdump.1.in index 652dd79688..ba287702e7 100644 --- a/tcpdump.1.in +++ b/tcpdump.1.in @@ -748,6 +748,7 @@ Currently known types are \fBrtp\fR (Real-Time Applications protocol), \fBsnmp\fR (Simple Network Management Protocol), \fBsomeip\fR (SOME/IP), +\fBtarantool\fR (Tarantool binary protocol), \fBtftp\fR (Trivial File Transfer Protocol), \fBvat\fR (Visual Audio Tool), \fBvxlan\fR (Virtual eXtensible Local Area Network), diff --git a/tcpdump.c b/tcpdump.c index b5893eba86..cba6d4f264 100644 --- a/tcpdump.c +++ b/tcpdump.c @@ -1887,6 +1887,10 @@ main(int argc, char **argv) ndo->ndo_packettype = PT_DOMAIN; else if (ascii_strcasecmp(optarg, "quic") == 0) ndo->ndo_packettype = PT_QUIC; +#ifdef HAVE_MSGPUCK + else if (ascii_strcasecmp(optarg, "tarantool") == 0) + ndo->ndo_packettype = PT_IPROTO; +#endif else error("unknown packet type `%s'", optarg); break; diff --git a/tests/tarantool.out b/tests/tarantool.out new file mode 100644 index 0000000000..79c41b2aaf --- /dev/null +++ b/tests/tarantool.out @@ -0,0 +1,297 @@ + 1 16:57:31.257128 IP 127.0.0.1.40054 > 127.0.0.1.3309: Flags [S], seq 3784122596, win 65495, options [mss 65495,sackOK,TS val 1977541146 ecr 0,nop,wscale 7], length 0 + 2 16:57:31.257135 IP 127.0.0.1.3309 > 127.0.0.1.40054: Flags [S.], seq 4139244470, ack 3784122597, win 65483, options [mss 65495,sackOK,TS val 1977541146 ecr 1977541146,nop,wscale 7], length 0 + 3 16:57:31.257142 IP 127.0.0.1.40054 > 127.0.0.1.3309: Flags [.], ack 1, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 0 + 4 16:57:31.257310 IP 127.0.0.1.3309 > 127.0.0.1.40054: Flags [P.], seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: e6bd3069-1336-4934-97d1-61b2dc4392f9 + 5 16:57:31.257314 IP 127.0.0.1.40054 > 127.0.0.1.3309: Flags [.], ack 129, win 511, options [nop,nop,TS val 1977541146 ecr 1977541146], length 0 + 6 16:57:31.257375 IP 127.0.0.1.40054 > 127.0.0.1.3309: Flags [P.], seq 1:9, ack 129, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 8: IPROTO size=3 request: VOTE + 7 16:57:31.257378 IP 127.0.0.1.3309 > 127.0.0.1.40054: Flags [.], ack 9, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 0 + 8 16:57:31.257559 IP 127.0.0.1.3309 > 127.0.0.1.40054: Flags [P.], seq 129:174, ack 9, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 45: IPROTO size=40 response: OK, SYNC: 0, SCHEMA_VERSION: 0 + 9 16:57:31.266905 IP 127.0.0.1.40054 > 127.0.0.1.3309: Flags [F.], seq 9, ack 174, win 512, options [nop,nop,TS val 1977541156 ecr 1977541146], length 0 + 10 16:57:31.267007 IP 127.0.0.1.3309 > 127.0.0.1.40054: Flags [F.], seq 174, ack 10, win 512, options [nop,nop,TS val 1977541156 ecr 1977541156], length 0 + 11 16:57:31.267015 IP 127.0.0.1.40054 > 127.0.0.1.3309: Flags [.], ack 175, win 512, options [nop,nop,TS val 1977541156 ecr 1977541156], length 0 + 12 16:57:31.284958 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [S], seq 1357811807, win 65495, options [mss 65495,sackOK,TS val 1977541174 ecr 0,nop,wscale 7], length 0 + 13 16:57:31.284966 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [S.], seq 4221993135, ack 1357811808, win 65483, options [mss 65495,sackOK,TS val 1977541174 ecr 1977541174,nop,wscale 7], length 0 + 14 16:57:31.284972 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 1, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 0 + 15 16:57:31.285240 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: e6bd3069-1336-4934-97d1-61b2dc4392f9 + 16 16:57:31.285247 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 129, win 511, options [nop,nop,TS val 1977541174 ecr 1977541174], length 0 + 17 16:57:31.285353 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 1:9, ack 129, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 8: IPROTO size=3 request: VOTE + 18 16:57:31.285357 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 9, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 0 + 19 16:57:31.285461 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 129:176, ack 9, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 47: IPROTO size=42 response: OK, SYNC: 0, SCHEMA_VERSION: 80 + 20 16:57:31.285500 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 9:63, ack 176, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 54: IPROTO size=49 request: AUTH, SYNC: 0 + 21 16:57:31.285673 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 176:205, ack 63, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 29: IPROTO size=24 response: OK, SYNC: 0, SCHEMA_VERSION: 80 + 22 16:57:31.285736 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 63:117, ack 205, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 54: IPROTO size=49 request: JOIN, SYNC: 0 + 23 16:57:31.286004 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 205:218, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 10} + 24 16:57:31.286011 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 218:226, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 8: IPROTO size=3 request: JOIN_META, SYNC: 0 + 25 16:57:31.286014 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 226:243, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 17: IPROTO size=12 request: RAFT_PROMOTE, SYNC: 0, REPLICA_ID: 1 + 26 16:57:31.286016 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 243:251, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 8: IPROTO size=3 request: JOIN_SNAPSHOT, SYNC: 0 + 27 16:57:31.286048 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 251, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 0 + 28 16:57:31.286105 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 251:314, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 63: IPROTO size=58 request: INSERT, SYNC: 0 + 29 16:57:31.286111 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 314:341, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 27: IPROTO size=22 request: INSERT, SYNC: 0 + 30 16:57:31.286115 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 341:369, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 28: IPROTO size=23 request: INSERT, SYNC: 0 + 31 16:57:31.286118 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 369:402, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 33: IPROTO size=28 request: INSERT, SYNC: 0 + 32 16:57:31.286120 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 402:453, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 51: IPROTO size=46 request: INSERT, SYNC: 0 + 33 16:57:31.286122 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 453:506, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 53: IPROTO size=48 request: INSERT, SYNC: 0 + 34 16:57:31.286124 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 506:541, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 35: IPROTO size=30 request: INSERT, SYNC: 0 + 35 16:57:31.286126 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 541:599, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 36 16:57:31.286128 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 599:659, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 37 16:57:31.286130 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 659:718, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 + 38 16:57:31.286166 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 718, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 0 + 39 16:57:31.286173 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 718:5866, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 5148: IPROTO size=53 request: INSERT, SYNC: 0 + 40 16:57:31.286176 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 5866:5924, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 41 16:57:31.286178 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 5924:5984, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 42 16:57:31.286179 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 5984:6043, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 + 43 16:57:31.286181 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6043:6103, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 44 16:57:31.286183 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6103:6165, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 62: IPROTO size=57 request: INSERT, SYNC: 0 + 45 16:57:31.286185 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6165:6226, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 61: IPROTO size=56 request: INSERT, SYNC: 0 + 46 16:57:31.286187 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6226:6284, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 47 16:57:31.286189 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6284:6344, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 48 16:57:31.286190 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6344:6403, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 + 49 16:57:31.286192 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6403:6461, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 50 16:57:31.286194 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6461:6521, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 51 16:57:31.286196 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6521:6580, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 + 52 16:57:31.286198 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6580:6638, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 53 16:57:31.286200 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6638:6698, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 54 16:57:31.286202 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6698:6757, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 + 55 16:57:31.286204 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6757:6815, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 56 16:57:31.286206 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6815:6875, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 + 57 16:57:31.286208 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6875:6934, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 + 58 16:57:31.286210 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6934:6992, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 + 59 16:57:31.286312 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 6992, win 463, options [nop,nop,TS val 1977541175 ecr 1977541175], length 0 + 60 16:57:31.286319 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 6992:26160, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 19168: IPROTO size=55 request: INSERT, SYNC: 0 + 61 16:57:31.286320 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26160:26197, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 37: IPROTO size=32 request: INSERT, SYNC: 0 + 62 16:57:31.286322 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26197:26228, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 31: IPROTO size=26 request: INSERT, SYNC: 0 + 63 16:57:31.286325 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26228:26303, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 75: IPROTO size=70 request: INSERT, SYNC: 0 + 64 16:57:31.286328 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26303:26329, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 26: IPROTO size=21 request: INSERT, SYNC: 0 + 65 16:57:31.286330 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26329:26359, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 + 66 16:57:31.286332 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26359:26393, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 34: IPROTO size=29 request: INSERT, SYNC: 0 + 67 16:57:31.286334 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26393:26423, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 + 68 16:57:31.286336 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26423:26453, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 + 69 16:57:31.286338 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26453:26482, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 70 16:57:31.286340 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26482:26511, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 71 16:57:31.286342 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26511:26540, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 72 16:57:31.286344 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26540:26569, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 73 16:57:31.286346 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26569:26598, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 74 16:57:31.286348 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26598:26627, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 75 16:57:31.286350 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26627:26656, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 76 16:57:31.286352 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26656:26685, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 77 16:57:31.286354 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26685:26714, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 78 16:57:31.286357 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26714:26743, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 79 16:57:31.286359 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26743:26772, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 + 80 16:57:31.286361 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26772:26802, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 + 81 16:57:31.286363 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26802:26836, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 34: IPROTO size=29 request: INSERT, SYNC: 0 + 82 16:57:31.286365 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26836:26862, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 26: IPROTO size=21 request: INSERT, SYNC: 0 + 83 16:57:31.286369 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26862:26888, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 26: IPROTO size=21 request: INSERT, SYNC: 0 + 84 16:57:31.286371 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26888:26918, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 + 85 16:57:31.286373 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26918:26945, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 27: IPROTO size=22 request: INSERT, SYNC: 0 + 86 16:57:31.286375 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 26945:27001, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 56: IPROTO size=51 request: INSERT, SYNC: 0 + 87 16:57:31.286582 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27001:27014, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 88 16:57:31.286719 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27014:27082, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 68: IPROTO size=63 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 11, TIMESTAMP: 2022-12-15 16:57:31.286489 + 89 16:57:31.286800 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27082:27095, ack 117, win 512, options [nop,nop,TS val 1977541176 ecr 1977541175], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 90 16:57:31.290485 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27095, win 359, options [nop,nop,TS val 1977541179 ecr 1977541175], length 0 + 91 16:57:31.295019 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 117:219, ack 27095, win 512, options [nop,nop,TS val 1977541184 ecr 1977541175], length 102: IPROTO size=97 request: SUBSCRIBE, SYNC: 0 + 92 16:57:31.295163 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27095:27149, ack 219, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 54: IPROTO size=49 response: OK, SYNC: 0, SCHEMA_VERSION: 0 + 93 16:57:31.295184 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27149:27164, ack 219, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 15: IPROTO size=10 request: RAFT, GROUP_ID: 1, SYNC: 0 + 94 16:57:31.295204 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27164, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 0 + 95 16:57:31.295333 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 219:232, ack 27164, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 96 16:57:31.295554 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27164:27184, ack 232, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 20: IPROTO size=15 request: HEARTBEAT, REPLICA_ID: 1, TIMESTAMP: 2022-12-15 16:57:31.295484 + 97 16:57:31.295749 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 232:245, ack 27184, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 98 16:57:31.336637 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 245, win 512, options [nop,nop,TS val 1977541225 ecr 1977541184], length 0 + 99 16:57:31.368370 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [S], seq 3722433644, win 65495, options [mss 65495,sackOK,TS val 1977541257 ecr 0,nop,wscale 7], length 0 + 100 16:57:31.368378 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [S.], seq 3735401205, ack 3722433645, win 65483, options [mss 65495,sackOK,TS val 1977541257 ecr 1977541257,nop,wscale 7], length 0 + 101 16:57:31.368385 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [.], ack 1, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 0 + 102 16:57:31.368682 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: e6bd3069-1336-4934-97d1-61b2dc4392f9 + 103 16:57:31.368687 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [.], ack 129, win 511, options [nop,nop,TS val 1977541257 ecr 1977541257], length 0 + 104 16:57:31.368744 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 1:20, ack 129, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 19: IPROTO size=14 request: ID, SYNC: 1 + 105 16:57:31.368748 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [.], ack 20, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 0 + 106 16:57:31.368886 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 129:166, ack 20, win 512, options [nop,nop,TS val 1977541258 ecr 1977541257], length 37: IPROTO size=32 response: OK, SYNC: 1, SCHEMA_VERSION: 80 + 107 16:57:31.368950 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 20:89, ack 166, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 69: IPROTO size=18 request: SELECT, SYNC: 2 + 108 16:57:31.369122 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 166:19926, ack 89, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 19760: IPROTO size=4641 response: OK, SYNC: 2, SCHEMA_VERSION: 80 + 109 16:57:31.369454 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 89:112, ack 19926, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 23: IPROTO size=18 + 110 16:57:31.369464 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 112:122, ack 19926, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 10: IPROTO size=5 request: PING, SYNC: 5 + 111 16:57:31.369561 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [.], ack 122, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 0 + 112 16:57:31.369694 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 19926:19978, ack 122, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 52: IPROTO size=24 response: OK, SYNC: 5, SCHEMA_VERSION: 80 + 113 16:57:31.369766 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 122:164, ack 19978, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 42: IPROTO size=14 request: INSERT, SYNC: 6 + 114 16:57:31.370030 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27184:27217, ack 245, win 512, options [nop,nop,TS val 1977541259 ecr 1977541184], length 33: IPROTO size=28 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 12, TIMESTAMP: 2022-12-15 16:57:31.369981, FLAGS: 6 + 115 16:57:31.370150 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27217:27244, ack 245, win 512, options [nop,nop,TS val 1977541259 ecr 1977541184], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 13, TIMESTAMP: 2022-12-15 16:57:31.370125 + 116 16:57:31.370210 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27244, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 117 16:57:31.370210 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 19978:20016, ack 164, win 512, options [nop,nop,TS val 1977541259 ecr 1977541258], length 38: IPROTO size=33 response: OK, SYNC: 6, SCHEMA_VERSION: 80 + 118 16:57:31.370301 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 164:183, ack 20016, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 19: IPROTO size=14 request: INSERT, SYNC: 7 + 119 16:57:31.370368 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 245:268, ack 27244, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.369981 + 120 16:57:31.370446 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 268, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 121 16:57:31.370452 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 268:291, ack 27244, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370125 + 122 16:57:31.370460 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 291, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 123 16:57:31.370481 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27244:27277, ack 291, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 33: IPROTO size=28 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 14, TIMESTAMP: 2022-12-15 16:57:31.370455, FLAGS: 6 + 124 16:57:31.370486 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27277:27304, ack 291, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 15, TIMESTAMP: 2022-12-15 16:57:31.370469 + 125 16:57:31.370566 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20016:20054, ack 183, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 38: IPROTO size=33 response: OK, SYNC: 7, SCHEMA_VERSION: 80 + 126 16:57:31.370566 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27304, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 127 16:57:31.370627 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 183:202, ack 20054, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 19: IPROTO size=14 request: INSERT, SYNC: 8 + 128 16:57:31.370804 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 291:314, ack 27304, win 512, options [nop,nop,TS val 1977541260 ecr 1977541259], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370455 + 129 16:57:31.370845 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27304:27337, ack 314, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 33: IPROTO size=28 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 16, TIMESTAMP: 2022-12-15 16:57:31.370790, FLAGS: 6 + 130 16:57:31.370868 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27337:27364, ack 314, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 17, TIMESTAMP: 2022-12-15 16:57:31.370849 + 131 16:57:31.370898 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 132 16:57:31.370907 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 314:337, ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370469 + 133 16:57:31.371014 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20054:20092, ack 202, win 512, options [nop,nop,TS val 1977541260 ecr 1977541259], length 38: IPROTO size=33 response: OK, SYNC: 8, SCHEMA_VERSION: 80 + 134 16:57:31.371066 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 202:238, ack 20092, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 36: IPROTO size=31 request: INSERT, SYNC: 9 + 135 16:57:31.371114 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 337:360, ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370790 + 136 16:57:31.371124 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 360:383, ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370849 + 137 16:57:31.371200 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 383, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 138 16:57:31.371215 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27364:27414, ack 383, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 50: IPROTO size=45 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 18, TIMESTAMP: 2022-12-15 16:57:31.371191, FLAGS: 6 + 139 16:57:31.371222 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27414:27441, ack 383, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 19, TIMESTAMP: 2022-12-15 16:57:31.371215 + 140 16:57:31.371229 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27441, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 141 16:57:31.371234 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20092:20147, ack 238, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 55: IPROTO size=50 response: OK, SYNC: 9, SCHEMA_VERSION: 80 + 142 16:57:31.371254 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 238:272, ack 20147, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 34: IPROTO size=29 request: INSERT, SYNC: 10 + 143 16:57:31.371308 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 383:406, ack 27441, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371191 + 144 16:57:31.371317 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 406:429, ack 27441, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371215 + 145 16:57:31.371329 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 146 16:57:31.371341 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20147:20200, ack 272, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 53: IPROTO size=48 response: OK, SYNC: 10, SCHEMA_VERSION: 80 + 147 16:57:31.371343 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27441:27489, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 48: IPROTO size=43 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 20, TIMESTAMP: 2022-12-15 16:57:31.371308, FLAGS: 6 + 148 16:57:31.371348 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27489:27516, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 21, TIMESTAMP: 2022-12-15 16:57:31.371325 + 149 16:57:31.371352 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 272:311, ack 20200, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 39: IPROTO size=34 request: INSERT, SYNC: 11 + 150 16:57:31.371352 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27516, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 151 16:57:31.371378 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27516:27569, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 53: IPROTO size=48 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 22, TIMESTAMP: 2022-12-15 16:57:31.371363, FLAGS: 6 + 152 16:57:31.371384 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27569:27596, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 23, TIMESTAMP: 2022-12-15 16:57:31.371377 + 153 16:57:31.371391 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20200:20258, ack 311, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 58: IPROTO size=53 response: OK, SYNC: 11, SCHEMA_VERSION: 80 + 154 16:57:31.371392 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 155 16:57:31.371417 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 429:452, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371308 + 156 16:57:31.371430 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 452:475, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371325 + 157 16:57:31.371435 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 475, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 158 16:57:31.371435 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 475:498, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371363 + 159 16:57:31.371443 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 311:347, ack 20258, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 36: IPROTO size=31 request: INSERT, SYNC: 12 + 160 16:57:31.371451 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 498:521, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371377 + 161 16:57:31.371457 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 521, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 162 16:57:31.371476 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27596:27646, ack 521, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 50: IPROTO size=45 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 24, TIMESTAMP: 2022-12-15 16:57:31.371459, FLAGS: 6 + 163 16:57:31.371479 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20258:20313, ack 347, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 55: IPROTO size=50 response: OK, SYNC: 12, SCHEMA_VERSION: 80 + 164 16:57:31.371480 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27646:27673, ack 521, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 25, TIMESTAMP: 2022-12-15 16:57:31.371464 + 165 16:57:31.371484 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27673, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 166 16:57:31.371492 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 347:373, ack 20313, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 26: IPROTO size=21 request: SELECT, SYNC: 13 + 167 16:57:31.371509 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20313:20351, ack 373, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 38: IPROTO size=33 response: OK, SYNC: 13, SCHEMA_VERSION: 80 + 168 16:57:31.371522 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 373:402, ack 20351, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 29: IPROTO size=24 request: SELECT, SYNC: 14 + 169 16:57:31.371534 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20351:20476, ack 402, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 125: IPROTO size=120 response: OK, SYNC: 14, SCHEMA_VERSION: 80 + 170 16:57:31.371546 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 402:423, ack 20476, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 21: IPROTO size=16 request: REPLACE, SYNC: 15 + 171 16:57:31.371567 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 521:544, ack 27673, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371459 + 172 16:57:31.371579 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 544:567, ack 27673, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371464 + 173 16:57:31.371612 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 567, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 174 16:57:31.371626 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27673:27708, ack 567, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 35: IPROTO size=30 request: REPLACE, SYNC: 0, REPLICA_ID: 1, LSN: 26, TIMESTAMP: 2022-12-15 16:57:31.371598, FLAGS: 6 + 175 16:57:31.371633 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27708:27735, ack 567, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 27, TIMESTAMP: 2022-12-15 16:57:31.371622 + 176 16:57:31.371635 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20476:20516, ack 423, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 40: IPROTO size=35 response: OK, SYNC: 15, SCHEMA_VERSION: 80 + 177 16:57:31.371639 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27735, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 178 16:57:31.371650 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 423:452, ack 20516, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 29: IPROTO size=24 request: UPDATE, SYNC: 16 + 179 16:57:31.371705 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 567:590, ack 27735, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371598 + 180 16:57:31.371722 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 590:613, ack 27735, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371622 + 181 16:57:31.371734 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 613, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 182 16:57:31.371751 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27735:27776, ack 613, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 41: IPROTO size=36 request: UPDATE, SYNC: 0, REPLICA_ID: 1, LSN: 28, TIMESTAMP: 2022-12-15 16:57:31.371725, FLAGS: 6 + 183 16:57:31.371759 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27776:27803, ack 613, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 29, TIMESTAMP: 2022-12-15 16:57:31.371747 + 184 16:57:31.371760 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20516:20554, ack 452, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 38: IPROTO size=33 response: OK, SYNC: 16, SCHEMA_VERSION: 80 + 185 16:57:31.371765 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27803, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 186 16:57:31.371774 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 452:488, ack 20554, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 36: IPROTO size=31 request: UPSERT, SYNC: 17 + 187 16:57:31.371819 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27803:27853, ack 613, win 512, options [nop,nop,TS val 1977541261 ecr 1977541260], length 50: IPROTO size=45 request: UPSERT, SYNC: 0, REPLICA_ID: 1, LSN: 30, TIMESTAMP: 2022-12-15 16:57:31.371804, FLAGS: 6 + 188 16:57:31.371825 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27853:27880, ack 613, win 512, options [nop,nop,TS val 1977541261 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 31, TIMESTAMP: 2022-12-15 16:57:31.371814 + 189 16:57:31.371826 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20554:20589, ack 488, win 512, options [nop,nop,TS val 1977541261 ecr 1977541260], length 35: IPROTO size=30 response: OK, SYNC: 17, SCHEMA_VERSION: 80 + 190 16:57:31.371828 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 613:636, ack 27880, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371725 + 191 16:57:31.371836 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 488:508, ack 20589, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: DELETE, SYNC: 18 + 192 16:57:31.371841 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 636:659, ack 27880, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371747 + 193 16:57:31.371846 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 659, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 194 16:57:31.371861 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27880:27912, ack 659, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 32: IPROTO size=27 request: DELETE, SYNC: 0, REPLICA_ID: 1, LSN: 32, TIMESTAMP: 2022-12-15 16:57:31.371849, FLAGS: 6 + 195 16:57:31.371868 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27912:27939, ack 659, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 33, TIMESTAMP: 2022-12-15 16:57:31.371856 + 196 16:57:31.371870 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20589:20627, ack 508, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 18, SCHEMA_VERSION: 80 + 197 16:57:31.371873 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 198 16:57:31.371880 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 508:528, ack 20627, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: DELETE, SYNC: 19 + 199 16:57:31.371930 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 659:682, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371804 + 200 16:57:31.371948 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 682:705, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371814 + 201 16:57:31.371958 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 705:728, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371849 + 202 16:57:31.371960 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 705, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 203 16:57:31.371971 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 728:751, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371856 + 204 16:57:31.371977 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27939:27971, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 32: IPROTO size=27 request: DELETE, SYNC: 0, REPLICA_ID: 1, LSN: 34, TIMESTAMP: 2022-12-15 16:57:31.371951, FLAGS: 6 + 205 16:57:31.371984 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20627:20665, ack 528, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 19, SCHEMA_VERSION: 80 + 206 16:57:31.371984 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27971:27998, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 35, TIMESTAMP: 2022-12-15 16:57:31.371971 + 207 16:57:31.371988 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 27998, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 208 16:57:31.371995 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 528:548, ack 20665, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: DELETE, SYNC: 20 + 209 16:57:31.372021 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 27998:28030, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 32: IPROTO size=27 request: DELETE, SYNC: 0, REPLICA_ID: 1, LSN: 36, TIMESTAMP: 2022-12-15 16:57:31.372007, FLAGS: 6 + 210 16:57:31.372031 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], seq 28030:28057, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 37, TIMESTAMP: 2022-12-15 16:57:31.372020 + 211 16:57:31.372036 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 212 16:57:31.372036 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20665:20703, ack 548, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 20, SCHEMA_VERSION: 80 + 213 16:57:31.372046 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 548:608, ack 20703, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 60: IPROTO size=55 request: EVAL, SYNC: 21 + 214 16:57:31.372059 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 751:774, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371951 + 215 16:57:31.372070 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20703:20739, ack 608, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 36: IPROTO size=31 response: OK, SYNC: 21, SCHEMA_VERSION: 80 + 216 16:57:31.372079 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 774:797, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371971 + 217 16:57:31.372084 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 797:820, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.372007 + 218 16:57:31.372085 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 608:639, ack 20739, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 31: IPROTO size=26 request: EVAL, SYNC: 22 + 219 16:57:31.372113 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20739:20780, ack 639, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 41: IPROTO size=36 response: OK, SYNC: 22, SCHEMA_VERSION: 80 + 220 16:57:31.372121 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 639:685, ack 20780, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 46: IPROTO size=41 request: EVAL, SYNC: 23 + 221 16:57:31.372127 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], ack 820, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 222 16:57:31.372139 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20780:20815, ack 685, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 35: IPROTO size=30 response: OK, SYNC: 23, SCHEMA_VERSION: 80 + 223 16:57:31.372155 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 685:702, ack 20815, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 17: IPROTO size=12 request: CALL, SYNC: 24 + 224 16:57:31.372170 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20815:20851, ack 702, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 36: IPROTO size=31 response: OK, SYNC: 24, SCHEMA_VERSION: 80 + 225 16:57:31.372180 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 702:752, ack 20851, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 50: IPROTO size=45 request: EVAL, SYNC: 25 + 226 16:57:31.372181 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], seq 820:843, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.372020 + 227 16:57:31.372197 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20851:20886, ack 752, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 35: IPROTO size=30 response: OK, SYNC: 25, SCHEMA_VERSION: 80 + 228 16:57:31.372204 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 752:772, ack 20886, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: CALL, SYNC: 26 + 229 16:57:31.372216 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20886:20924, ack 772, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 26, SCHEMA_VERSION: 80 + 230 16:57:31.372224 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 772:799, ack 20924, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: PREPARE, SYNC: 27 + 231 16:57:31.372270 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 20924:21023, ack 799, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 99: IPROTO size=94 response: OK, SYNC: 27, SCHEMA_VERSION: 80 + 232 16:57:31.372281 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 799:823, ack 21023, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 24: IPROTO size=19 request: EXECUTE, SYNC: 28 + 233 16:57:31.372297 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 21023:21097, ack 823, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 74: IPROTO size=69 response: OK, SYNC: 28, SCHEMA_VERSION: 80 + 234 16:57:31.372309 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 823:835, ack 21097, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 12: IPROTO size=7 request: BEGIN, STREAM_ID: 1, SYNC: 29 + 235 16:57:31.372324 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 21097:21126, ack 835, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 29: IPROTO size=24 response: OK, SYNC: 29, SCHEMA_VERSION: 80 + 236 16:57:31.372331 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 835:847, ack 21126, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 12: IPROTO size=7 request: ROLLBACK, STREAM_ID: 1, SYNC: 30 + 237 16:57:31.372343 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 21126:21155, ack 847, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 29: IPROTO size=24 response: OK, SYNC: 30, SCHEMA_VERSION: 80 + 238 16:57:31.372350 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], seq 847:859, ack 21155, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 12: IPROTO size=7 request: COMMIT, STREAM_ID: 1, SYNC: 31 + 239 16:57:31.372362 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], seq 21155:21184, ack 859, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 29: IPROTO size=24 response: OK, SYNC: 31, SCHEMA_VERSION: 80 + 240 16:57:31.372419 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [F.], seq 859, ack 21184, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 241 16:57:31.372427 IP 127.0.0.1.3309 > 127.0.0.1.40076: Flags [F.], seq 21184, ack 860, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 242 16:57:31.372435 IP 127.0.0.1.40076 > 127.0.0.1.3309: Flags [.], ack 21185, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 243 16:57:31.373225 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [F.], seq 843, ack 28057, win 512, options [nop,nop,TS val 1977541262 ecr 1977541261], length 0 + 244 16:57:31.373454 IP 127.0.0.1.3309 > 127.0.0.1.40070: Flags [F.], seq 28057, ack 844, win 512, options [nop,nop,TS val 1977541262 ecr 1977541261], length 0 + 245 16:57:31.373458 IP 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], ack 28058, win 512, options [nop,nop,TS val 1977541262 ecr 1977541262], length 0 + 246 16:57:32.818697 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [S], seq 725422438, win 65495, options [mss 65495,sackOK,TS val 1977542707 ecr 0,nop,wscale 7], length 0 + 247 16:57:32.818705 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [S.], seq 2701899671, ack 725422439, win 65483, options [mss 65495,sackOK,TS val 1977542707 ecr 1977542707,nop,wscale 7], length 0 + 248 16:57:32.818713 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [.], ack 1, win 512, options [nop,nop,TS val 1977542707 ecr 1977542707], length 0 + 249 16:57:32.818891 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977542708 ecr 1977542707], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: 056cb614-461f-4cc2-a26b-8a50f5286086 + 250 16:57:32.818896 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [.], ack 129, win 511, options [nop,nop,TS val 1977542708 ecr 1977542708], length 0 + 251 16:57:32.818950 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 1:20, ack 129, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 19: IPROTO size=14 request: ID, SYNC: 1 + 252 16:57:32.818955 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [.], ack 20, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 0 + 253 16:57:32.819084 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 129:166, ack 20, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 37: IPROTO size=32 response: OK, SYNC: 1, SCHEMA_VERSION: 78 + 254 16:57:32.819150 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 20:89, ack 166, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 69: IPROTO size=18 request: SELECT, SYNC: 2 + 255 16:57:32.819319 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 166:19859, ack 89, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 19693: IPROTO size=4608 response: OK, SYNC: 2, SCHEMA_VERSION: 78 + 256 16:57:32.819674 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 89:112, ack 19859, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 23: IPROTO size=18 + 257 16:57:32.819692 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 112:182, ack 19859, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 70: IPROTO size=65 request: EVAL, SYNC: 5 + 258 16:57:32.819734 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [.], ack 182, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 0 + 259 16:57:32.819884 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 19859:19942, ack 182, win 512, options [nop,nop,TS val 1977542709 ecr 1977542708], length 83: IPROTO size=55 response: OK, SYNC: 5, SCHEMA_VERSION: 78 + 260 16:57:32.819963 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 182:252, ack 19942, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 70: IPROTO size=42 request: CALL, SYNC: 6 + 261 16:57:32.820143 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 19942:20022, ack 252, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 80: IPROTO size=75 response: OK, SYNC: 6, SCHEMA_VERSION: 78 + 262 16:57:32.820243 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 252:301, ack 20022, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 49: IPROTO size=44 request: CALL, SYNC: 7 + 263 16:57:32.820381 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 20022:20118, ack 301, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 96: IPROTO size=91 response: ERR: unknown, SYNC: 7, SCHEMA_VERSION: 78 + 264 16:57:32.820466 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 301:362, ack 20118, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 61: IPROTO size=56 request: CALL, SYNC: 8 + 265 16:57:32.820575 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 20118:20221, ack 362, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 103: IPROTO size=98 response: OK, SYNC: 8, SCHEMA_VERSION: 78 + 266 16:57:32.820661 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 362:425, ack 20221, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 63: IPROTO size=58 request: CALL, SYNC: 9 + 267 16:57:32.820841 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 20221:20341, ack 425, win 512, options [nop,nop,TS val 1977542710 ecr 1977542709], length 120: IPROTO size=115 response: ERR: unknown, SYNC: 9, SCHEMA_VERSION: 78 + 268 16:57:32.820928 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 425:459, ack 20341, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 34: IPROTO size=29 request: CALL, SYNC: 10 + 269 16:57:32.821055 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 20341:20579, ack 459, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 238: IPROTO size=233 response: OK, SYNC: 10, SCHEMA_VERSION: 78 + 270 16:57:32.821152 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 459:499, ack 20579, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 40: IPROTO size=35 request: CALL, SYNC: 11 + 271 16:57:32.821176 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 20579:20886, ack 499, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 307: IPROTO size=302 response: ERR: ER_ACCESS_DENIED, SYNC: 11, SCHEMA_VERSION: 78 + 272 16:57:32.821203 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 499:593, ack 20886, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 94: IPROTO size=89 request: CALL, SYNC: 12 + 273 16:57:32.821225 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 20886:21062, ack 593, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 176: IPROTO size=171 response: OK, SYNC: 12, SCHEMA_VERSION: 78 + 274 16:57:32.821253 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 593:689, ack 21062, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 96: IPROTO size=91 request: CALL, SYNC: 13 + 275 16:57:32.821272 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21062:21239, ack 689, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 177: IPROTO size=172 response: ERR: unknown, SYNC: 13, SCHEMA_VERSION: 78 + 276 16:57:32.821298 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 689:708, ack 21239, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 14 + 277 16:57:32.821311 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21239:21342, ack 708, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 103: IPROTO size=98 response: OK, SYNC: 14, SCHEMA_VERSION: 78 + 278 16:57:32.821335 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 708:727, ack 21342, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 15 + 279 16:57:32.821347 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21342:21447, ack 727, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 15, SCHEMA_VERSION: 78 + 280 16:57:32.821365 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 727:746, ack 21447, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 16 + 281 16:57:32.821377 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21447:21552, ack 746, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 16, SCHEMA_VERSION: 78 + 282 16:57:32.821392 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 746:765, ack 21552, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 17 + 283 16:57:32.821404 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21552:21655, ack 765, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 103: IPROTO size=98 response: OK, SYNC: 17, SCHEMA_VERSION: 78 + 284 16:57:32.821418 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 765:784, ack 21655, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 18 + 285 16:57:32.821431 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21655:21759, ack 784, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 104: IPROTO size=99 response: OK, SYNC: 18, SCHEMA_VERSION: 78 + 286 16:57:32.821444 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 784:803, ack 21759, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 19 + 287 16:57:32.821457 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21759:21864, ack 803, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 19, SCHEMA_VERSION: 78 + 288 16:57:32.821473 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], seq 803:822, ack 21864, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 20 + 289 16:57:32.821487 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], seq 21864:21969, ack 822, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 20, SCHEMA_VERSION: 78 + 290 16:57:32.821577 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [F.], seq 822, ack 21969, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 0 + 291 16:57:32.821584 IP 127.0.0.1.3309 > 127.0.0.1.40078: Flags [F.], seq 21969, ack 823, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 0 + 292 16:57:32.821591 IP 127.0.0.1.40078 > 127.0.0.1.3309: Flags [.], ack 21970, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 0 diff --git a/tests/tarantool.pcap b/tests/tarantool.pcap new file mode 100644 index 0000000000..3259d0105b Binary files /dev/null and b/tests/tarantool.pcap differ diff --git a/tests/tarantool.tests b/tests/tarantool.tests new file mode 100644 index 0000000000..38f3082469 --- /dev/null +++ b/tests/tarantool.tests @@ -0,0 +1,25 @@ +# -*- perl -*- + +# Only attempt Tarantool-specific tests when compiled with the msgpuck library. + +$testlist = [ + + { + config_set => 'HAVE_MSGPUCK', + name => 'tarantool', + input => 'tarantool.pcap', + output => 'tarantool.out', + args => '-T tarantool', + }, + + { + config_set => 'HAVE_MSGPUCK', + name => 'tarantool_v', + input => 'tarantool.pcap', + output => 'tarantool_v.out', + args => '-T tarantool -v', + }, + +]; + +1; diff --git a/tests/tarantool_v.out b/tests/tarantool_v.out new file mode 100644 index 0000000000..4d71b9ec78 --- /dev/null +++ b/tests/tarantool_v.out @@ -0,0 +1,1131 @@ + 1 16:57:31.257128 IP (tos 0x0, ttl 64, id 10331, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.40054 > 127.0.0.1.3309: Flags [S], cksum 0xfe30 (incorrect -> 0x4c33), seq 3784122596, win 65495, options [mss 65495,sackOK,TS val 1977541146 ecr 0,nop,wscale 7], length 0 + 2 16:57:31.257135 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.3309 > 127.0.0.1.40054: Flags [S.], cksum 0xfe30 (incorrect -> 0x21c6), seq 4139244470, ack 3784122597, win 65483, options [mss 65495,sackOK,TS val 1977541146 ecr 1977541146,nop,wscale 7], length 0 + 3 16:57:31.257142 IP (tos 0x0, ttl 64, id 10332, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40054 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4882), ack 1, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 0 + 4 16:57:31.257310 IP (tos 0x0, ttl 64, id 36974, offset 0, flags [DF], proto TCP (6), length 180) + 127.0.0.1.3309 > 127.0.0.1.40054: Flags [P.], cksum 0xfea8 (incorrect -> 0x9c6b), seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: e6bd3069-1336-4934-97d1-61b2dc4392f9, salt: JbnlcBzGrEJqDYVKNsxXSle8r3Ya8zMIJFlmT0KrP/A= + 5 16:57:31.257314 IP (tos 0x0, ttl 64, id 10333, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40054 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4803), ack 129, win 511, options [nop,nop,TS val 1977541146 ecr 1977541146], length 0 + 6 16:57:31.257375 IP (tos 0x0, ttl 64, id 10334, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.40054 > 127.0.0.1.3309: Flags [P.], cksum 0xfe30 (incorrect -> 0x762c), seq 1:9, ack 129, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 8: IPROTO size=3 request: VOTE + 7 16:57:31.257378 IP (tos 0x0, ttl 64, id 36975, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40054: Flags [.], cksum 0xfe28 (incorrect -> 0x47fa), ack 9, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 0 + 8 16:57:31.257559 IP (tos 0x0, ttl 64, id 36976, offset 0, flags [DF], proto TCP (6), length 97) + 127.0.0.1.3309 > 127.0.0.1.40054: Flags [P.], cksum 0xfe55 (incorrect -> 0x758b), seq 129:174, ack 9, win 512, options [nop,nop,TS val 1977541146 ecr 1977541146], length 45: IPROTO size=40 response: OK, SYNC: 0, SCHEMA_VERSION: 0 +[BALLOT] +BALLOT_IS_RO_CFG: false +BALLOT_IS_RO: true +BALLOT_IS_ANON: false +BALLOT_IS_BOOTED: false +BALLOT_VCLOCK: {} +BALLOT_GC_VCLOCK: {} +BALLOT_CAN_LEAD: false + 9 16:57:31.266905 IP (tos 0x0, ttl 64, id 10335, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40054 > 127.0.0.1.3309: Flags [F.], cksum 0xfe28 (incorrect -> 0x47c2), seq 9, ack 174, win 512, options [nop,nop,TS val 1977541156 ecr 1977541146], length 0 + 10 16:57:31.267007 IP (tos 0x0, ttl 64, id 36977, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40054: Flags [F.], cksum 0xfe28 (incorrect -> 0x47b7), seq 174, ack 10, win 512, options [nop,nop,TS val 1977541156 ecr 1977541156], length 0 + 11 16:57:31.267015 IP (tos 0x0, ttl 64, id 10336, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40054 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x47b7), ack 175, win 512, options [nop,nop,TS val 1977541156 ecr 1977541156], length 0 + 12 16:57:31.284958 IP (tos 0x0, ttl 64, id 43340, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [S], cksum 0xfe30 (incorrect -> 0x6d2b), seq 1357811807, win 65495, options [mss 65495,sackOK,TS val 1977541174 ecr 0,nop,wscale 7], length 0 + 13 16:57:31.284966 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [S.], cksum 0xfe30 (incorrect -> 0x98ba), seq 4221993135, ack 1357811808, win 65483, options [mss 65495,sackOK,TS val 1977541174 ecr 1977541174,nop,wscale 7], length 0 + 14 16:57:31.284972 IP (tos 0x0, ttl 64, id 43341, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xbf76), ack 1, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 0 + 15 16:57:31.285240 IP (tos 0x0, ttl 64, id 57315, offset 0, flags [DF], proto TCP (6), length 180) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfea8 (incorrect -> 0x7bad), seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: e6bd3069-1336-4934-97d1-61b2dc4392f9, salt: 5LkiDWp/a/53A4ggshLxyD5we4CNJmaVQFQmKhl+GPE= + 16 16:57:31.285247 IP (tos 0x0, ttl 64, id 43342, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xbef7), ack 129, win 511, options [nop,nop,TS val 1977541174 ecr 1977541174], length 0 + 17 16:57:31.285353 IP (tos 0x0, ttl 64, id 43343, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe30 (incorrect -> 0xed20), seq 1:9, ack 129, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 8: IPROTO size=3 request: VOTE + 18 16:57:31.285357 IP (tos 0x0, ttl 64, id 57316, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0xbeee), ack 9, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 0 + 19 16:57:31.285461 IP (tos 0x0, ttl 64, id 57317, offset 0, flags [DF], proto TCP (6), length 99) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe57 (incorrect -> 0xdf2c), seq 129:176, ack 9, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 47: IPROTO size=42 response: OK, SYNC: 0, SCHEMA_VERSION: 80 +[BALLOT] +BALLOT_IS_RO_CFG: false +BALLOT_IS_RO: false +BALLOT_IS_ANON: false +BALLOT_IS_BOOTED: true +BALLOT_VCLOCK: {1: 10} +BALLOT_GC_VCLOCK: {} +BALLOT_CAN_LEAD: false + 20 16:57:31.285500 IP (tos 0x0, ttl 64, id 43344, offset 0, flags [DF], proto TCP (6), length 106) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe5e (incorrect -> 0x3344), seq 9:63, ack 176, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 54: IPROTO size=49 request: AUTH, SYNC: 0 +USER_NAME: replicator +AUTH: chap-sha1 +SCRAMBLE: ywEByCJGlOrolJx1ESktfcC7G+A= + 21 16:57:31.285673 IP (tos 0x0, ttl 64, id 57318, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x4f25), seq 176:205, ack 63, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 29: IPROTO size=24 response: OK, SYNC: 0, SCHEMA_VERSION: 80 + 22 16:57:31.285736 IP (tos 0x0, ttl 64, id 43345, offset 0, flags [DF], proto TCP (6), length 106) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe5e (incorrect -> 0xf90d), seq 63:117, ack 205, win 512, options [nop,nop,TS val 1977541174 ecr 1977541174], length 54: IPROTO size=49 request: JOIN, SYNC: 0 +INSTANCE_UUID: 144d18f7-75fd-4654-a083-6998c1f10622 +SERVER_VERSION: 133636 + 23 16:57:31.286004 IP (tos 0x0, ttl 64, id 57319, offset 0, flags [DF], proto TCP (6), length 65) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe35 (incorrect -> 0xdb76), seq 205:218, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 10} + 24 16:57:31.286011 IP (tos 0x0, ttl 64, id 57320, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe30 (incorrect -> 0xec4f), seq 218:226, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 8: IPROTO size=3 request: JOIN_META, SYNC: 0 +VCLOCK: {1: 10} + 25 16:57:31.286014 IP (tos 0x0, ttl 64, id 57321, offset 0, flags [DF], proto TCP (6), length 69) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe39 (incorrect -> 0x5b0c), seq 226:243, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 17: IPROTO size=12 request: RAFT_PROMOTE, SYNC: 0, REPLICA_ID: 1 +REPLICA_ID: 1 +LSN: 0 +TERM: 2 + 26 16:57:31.286016 IP (tos 0x0, ttl 64, id 57322, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe30 (incorrect -> 0xec35), seq 243:251, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541174], length 8: IPROTO size=3 request: JOIN_SNAPSHOT, SYNC: 0 + 27 16:57:31.286048 IP (tos 0x0, ttl 64, id 43346, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xbe06), ack 251, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 0 + 28 16:57:31.286105 IP (tos 0x0, ttl 64, id 57323, offset 0, flags [DF], proto TCP (6), length 115) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe67 (incorrect -> 0xc94f), seq 251:314, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 63: IPROTO size=58 request: INSERT, SYNC: 0 +SPACE: _schema (ID: 272) +TUPLE: ["cluster", "0fa96161-16e5-4cfa-ae7e-c342258abedc"] + 29 16:57:31.286111 IP (tos 0x0, ttl 64, id 57324, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0xca1e), seq 314:341, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 27: IPROTO size=22 request: INSERT, SYNC: 0 +SPACE: _schema (ID: 272) +TUPLE: ["max_id", 512] + 30 16:57:31.286115 IP (tos 0x0, ttl 64, id 57325, offset 0, flags [DF], proto TCP (6), length 80) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe44 (incorrect -> 0x18db), seq 341:369, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 28: IPROTO size=23 request: INSERT, SYNC: 0 +SPACE: _schema (ID: 272) +TUPLE: ["version", 2, 10, 4] + 31 16:57:31.286118 IP (tos 0x0, ttl 64, id 57326, offset 0, flags [DF], proto TCP (6), length 85) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe49 (incorrect -> 0x554d), seq 369:402, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 33: IPROTO size=28 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [0, "none", 1, "BINARY", "", {}] + 32 16:57:31.286120 IP (tos 0x0, ttl 64, id 57327, offset 0, flags [DF], proto TCP (6), length 103) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5b (incorrect -> 0xa12b), seq 402:453, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 51: IPROTO size=46 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [1, "unicode", 1, "ICU", "", {"strength": "tertiary"}] + 33 16:57:31.286122 IP (tos 0x0, ttl 64, id 57328, offset 0, flags [DF], proto TCP (6), length 105) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5d (incorrect -> 0x8d49), seq 453:506, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 53: IPROTO size=48 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [2, "unicode_ci", 1, "ICU", "", {"strength": "primary"}] + 34 16:57:31.286124 IP (tos 0x0, ttl 64, id 57329, offset 0, flags [DF], proto TCP (6), length 87) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe4b (incorrect -> 0xe158), seq 506:541, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 35: IPROTO size=30 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [3, "binary", 1, "BINARY", "", {}] + 35 16:57:31.286126 IP (tos 0x0, ttl 64, id 57330, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x5c4a), seq 541:599, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [4, "unicode_af_s1", 1, "ICU", "af", {"strength": "primary"}] + 36 16:57:31.286128 IP (tos 0x0, ttl 64, id 57331, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0xfea0), seq 599:659, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [5, "unicode_af_s2", 1, "ICU", "af", {"strength": "secondary"}] + 37 16:57:31.286130 IP (tos 0x0, ttl 64, id 57332, offset 0, flags [DF], proto TCP (6), length 111) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe63 (incorrect -> 0xf7c0), seq 659:718, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [6, "unicode_af_s3", 1, "ICU", "af", {"strength": "tertiary"}] + 38 16:57:31.286166 IP (tos 0x0, ttl 64, id 43347, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xbc33), ack 718, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 0 + 39 16:57:31.286173 IP (tos 0x0, ttl 64, id 57333, offset 0, flags [DF], proto TCP (6), length 5200) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0x1245 (incorrect -> 0x0021), seq 718:5866, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 5148: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [7, "unicode_am_s1", 1, "ICU", "am", {"strength": "primary"}] + 40 16:57:31.286176 IP (tos 0x0, ttl 64, id 57334, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x4527), seq 5866:5924, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [88, "unicode_ha_s1", 1, "ICU", "ha", {"strength": "primary"}] + 41 16:57:31.286178 IP (tos 0x0, ttl 64, id 57335, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0xe77d), seq 5924:5984, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [89, "unicode_ha_s2", 1, "ICU", "ha", {"strength": "secondary"}] + 42 16:57:31.286179 IP (tos 0x0, ttl 64, id 57336, offset 0, flags [DF], proto TCP (6), length 111) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe63 (incorrect -> 0xe09d), seq 5984:6043, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [90, "unicode_ha_s3", 1, "ICU", "ha", {"strength": "tertiary"}] + 43 16:57:31.286181 IP (tos 0x0, ttl 64, id 57337, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0x4181), seq 6043:6103, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [91, "unicode_haw_s1", 1, "ICU", "haw", {"strength": "primary"}] + 44 16:57:31.286183 IP (tos 0x0, ttl 64, id 57338, offset 0, flags [DF], proto TCP (6), length 114) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe66 (incorrect -> 0xe2d6), seq 6103:6165, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 62: IPROTO size=57 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [92, "unicode_haw_s2", 1, "ICU", "haw", {"strength": "secondary"}] + 45 16:57:31.286185 IP (tos 0x0, ttl 64, id 57339, offset 0, flags [DF], proto TCP (6), length 113) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe65 (incorrect -> 0xdaf5), seq 6165:6226, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 61: IPROTO size=56 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [93, "unicode_haw_s3", 1, "ICU", "haw", {"strength": "tertiary"}] + 46 16:57:31.286187 IP (tos 0x0, ttl 64, id 57340, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x3fb5), seq 6226:6284, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [94, "unicode_he_s1", 1, "ICU", "he", {"strength": "primary"}] + 47 16:57:31.286189 IP (tos 0x0, ttl 64, id 57341, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0xe20b), seq 6284:6344, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [95, "unicode_he_s2", 1, "ICU", "he", {"strength": "secondary"}] + 48 16:57:31.286190 IP (tos 0x0, ttl 64, id 57342, offset 0, flags [DF], proto TCP (6), length 111) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe63 (incorrect -> 0xdb2b), seq 6344:6403, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [96, "unicode_he_s3", 1, "ICU", "he", {"strength": "tertiary"}] + 49 16:57:31.286192 IP (tos 0x0, ttl 64, id 57343, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x3afd), seq 6403:6461, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [97, "unicode_hi_s1", 1, "ICU", "hi", {"strength": "primary"}] + 50 16:57:31.286194 IP (tos 0x0, ttl 64, id 57344, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0xdd53), seq 6461:6521, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [98, "unicode_hi_s2", 1, "ICU", "hi", {"strength": "secondary"}] + 51 16:57:31.286196 IP (tos 0x0, ttl 64, id 57345, offset 0, flags [DF], proto TCP (6), length 111) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe63 (incorrect -> 0xd673), seq 6521:6580, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [99, "unicode_hi_s3", 1, "ICU", "hi", {"strength": "tertiary"}] + 52 16:57:31.286198 IP (tos 0x0, ttl 64, id 57346, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x3140), seq 6580:6638, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [100, "unicode_hr_s1", 1, "ICU", "hr", {"strength": "primary"}] + 53 16:57:31.286200 IP (tos 0x0, ttl 64, id 57347, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0xd396), seq 6638:6698, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [101, "unicode_hr_s2", 1, "ICU", "hr", {"strength": "secondary"}] + 54 16:57:31.286202 IP (tos 0x0, ttl 64, id 57348, offset 0, flags [DF], proto TCP (6), length 111) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe63 (incorrect -> 0xccb6), seq 6698:6757, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [102, "unicode_hr_s3", 1, "ICU", "hr", {"strength": "tertiary"}] + 55 16:57:31.286204 IP (tos 0x0, ttl 64, id 57349, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x2d89), seq 6757:6815, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [103, "unicode_hu_s1", 1, "ICU", "hu", {"strength": "primary"}] + 56 16:57:31.286206 IP (tos 0x0, ttl 64, id 57350, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe64 (incorrect -> 0xcfdf), seq 6815:6875, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 60: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [104, "unicode_hu_s2", 1, "ICU", "hu", {"strength": "secondary"}] + 57 16:57:31.286208 IP (tos 0x0, ttl 64, id 57351, offset 0, flags [DF], proto TCP (6), length 111) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe63 (incorrect -> 0xc8ff), seq 6875:6934, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 59: IPROTO size=54 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [105, "unicode_hu_s3", 1, "ICU", "hu", {"strength": "tertiary"}] + 58 16:57:31.286210 IP (tos 0x0, ttl 64, id 57352, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe62 (incorrect -> 0x28d1), seq 6934:6992, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 58: IPROTO size=53 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [106, "unicode_hy_s1", 1, "ICU", "hy", {"strength": "primary"}] + 59 16:57:31.286312 IP (tos 0x0, ttl 64, id 43348, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xa3e2), ack 6992, win 463, options [nop,nop,TS val 1977541175 ecr 1977541175], length 0 + 60 16:57:31.286319 IP (tos 0x0, ttl 64, id 57353, offset 0, flags [DF], proto TCP (6), length 19220) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0x4909 (incorrect -> 0xaa24), seq 6992:26160, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 19168: IPROTO size=55 request: INSERT, SYNC: 0 +SPACE: _collation (ID: 276) +TUPLE: [107, "unicode_hy_s2", 1, "ICU", "hy", {"strength": "secondary"}] + 61 16:57:31.286320 IP (tos 0x0, ttl 64, id 57354, offset 0, flags [DF], proto TCP (6), length 89) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe4d (incorrect -> 0x6eab), seq 26160:26197, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 37: IPROTO size=32 request: INSERT, SYNC: 0 +SPACE: _user (ID: 304) +TUPLE: [3, 1, "replication", "role", {}] + 62 16:57:31.286322 IP (tos 0x0, ttl 64, id 57355, offset 0, flags [DF], proto TCP (6), length 83) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe47 (incorrect -> 0xa3b4), seq 26197:26228, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 31: IPROTO size=26 request: INSERT, SYNC: 0 +SPACE: _user (ID: 304) +TUPLE: [31, 1, "super", "role", {}] + 63 16:57:31.286325 IP (tos 0x0, ttl 64, id 57356, offset 0, flags [DF], proto TCP (6), length 127) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe73 (incorrect -> 0x8eea), seq 26228:26303, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 75: IPROTO size=70 request: INSERT, SYNC: 0 +SPACE: _user (ID: 304) +TUPLE: [32, 1, "replicator", "user", {"chap-sha1": "JHDAwG3uQv0WGLuZAFrcouydHhk="}] + 64 16:57:31.286328 IP (tos 0x0, ttl 64, id 57357, offset 0, flags [DF], proto TCP (6), length 78) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe42 (incorrect -> 0x75ea), seq 26303:26329, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 26: IPROTO size=21 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 0, "role", 2, 4] + 65 16:57:31.286330 IP (tos 0x0, ttl 64, id 57358, offset 0, flags [DF], proto TCP (6), length 82) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe46 (incorrect -> 0x9ac5), seq 26329:26359, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 0, "universe", 0, 31] + 66 16:57:31.286332 IP (tos 0x0, ttl 64, id 57359, offset 0, flags [DF], proto TCP (6), length 86) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe4a (incorrect -> 0x94f4), seq 26359:26393, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 34: IPROTO size=29 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 1, "universe", 0, 4294967295] + 67 16:57:31.286334 IP (tos 0x0, ttl 64, id 57360, offset 0, flags [DF], proto TCP (6), length 82) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe46 (incorrect -> 0x96ac), seq 26393:26423, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "function", 1, 4] + 68 16:57:31.286336 IP (tos 0x0, ttl 64, id 57361, offset 0, flags [DF], proto TCP (6), length 82) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe46 (incorrect -> 0x5691), seq 26423:26453, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "function", 65, 1] + 69 16:57:31.286338 IP (tos 0x0, ttl 64, id 57362, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1374), seq 26453:26482, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 276, 2] + 70 16:57:31.286340 IP (tos 0x0, ttl 64, id 57363, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1456), seq 26482:26511, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 277, 1] + 71 16:57:31.286342 IP (tos 0x0, ttl 64, id 57364, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1435), seq 26511:26540, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 281, 1] + 72 16:57:31.286344 IP (tos 0x0, ttl 64, id 57365, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1413), seq 26540:26569, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 286, 1] + 73 16:57:31.286346 IP (tos 0x0, ttl 64, id 57366, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x13f3), seq 26569:26598, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 289, 1] + 74 16:57:31.286348 IP (tos 0x0, ttl 64, id 57367, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x13ce), seq 26598:26627, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 297, 1] + 75 16:57:31.286350 IP (tos 0x0, ttl 64, id 57368, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x13a9), seq 26627:26656, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 305, 1] + 76 16:57:31.286352 IP (tos 0x0, ttl 64, id 57369, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1384), seq 26656:26685, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 313, 1] + 77 16:57:31.286354 IP (tos 0x0, ttl 64, id 57370, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1256), seq 26685:26714, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 330, 2] + 78 16:57:31.286357 IP (tos 0x0, ttl 64, id 57371, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1107), seq 26714:26743, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 2, "space", 380, 3] + 79 16:57:31.286359 IP (tos 0x0, ttl 64, id 57372, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe45 (incorrect -> 0x1126), seq 26743:26772, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 29: IPROTO size=24 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 3, "space", 320, 2] + 80 16:57:31.286361 IP (tos 0x0, ttl 64, id 57373, offset 0, flags [DF], proto TCP (6), length 82) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe46 (incorrect -> 0x9628), seq 26772:26802, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 3, "universe", 0, 1] + 81 16:57:31.286363 IP (tos 0x0, ttl 64, id 57374, offset 0, flags [DF], proto TCP (6), length 86) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe4a (incorrect -> 0x7539), seq 26802:26836, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 34: IPROTO size=29 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 31, "universe", 0, 4294967295] + 82 16:57:31.286365 IP (tos 0x0, ttl 64, id 57375, offset 0, flags [DF], proto TCP (6), length 78) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe42 (incorrect -> 0x53d5), seq 26836:26862, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 26: IPROTO size=21 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 32, "role", 2, 4] + 83 16:57:31.286369 IP (tos 0x0, ttl 64, id 57376, offset 0, flags [DF], proto TCP (6), length 78) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe42 (incorrect -> 0x52bb), seq 26862:26888, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 26: IPROTO size=21 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 32, "role", 3, 4] + 84 16:57:31.286371 IP (tos 0x0, ttl 64, id 57377, offset 0, flags [DF], proto TCP (6), length 82) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe46 (incorrect -> 0x789d), seq 26888:26918, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 30: IPROTO size=25 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 32, "universe", 0, 24] + 85 16:57:31.286373 IP (tos 0x0, ttl 64, id 57378, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0xb7a8), seq 26918:26945, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 27: IPROTO size=22 request: INSERT, SYNC: 0 +SPACE: _priv (ID: 312) +TUPLE: [1, 32, "user", 32, 128] + 86 16:57:31.286375 IP (tos 0x0, ttl 64, id 57379, offset 0, flags [DF], proto TCP (6), length 108) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe60 (incorrect -> 0xc36e), seq 26945:27001, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 56: IPROTO size=51 request: INSERT, SYNC: 0 +SPACE: _cluster (ID: 320) +TUPLE: [1, "e6bd3069-1336-4934-97d1-61b2dc4392f9"] + 87 16:57:31.286582 IP (tos 0x0, ttl 64, id 57380, offset 0, flags [DF], proto TCP (6), length 65) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe35 (incorrect -> 0x71c9), seq 27001:27014, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 88 16:57:31.286719 IP (tos 0x0, ttl 64, id 57381, offset 0, flags [DF], proto TCP (6), length 120) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe6c (incorrect -> 0xecdd), seq 27014:27082, ack 117, win 512, options [nop,nop,TS val 1977541175 ecr 1977541175], length 68: IPROTO size=63 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 11, TIMESTAMP: 2022-12-15 16:57:31.286489 +SPACE: _cluster (ID: 320) +TUPLE: [2, "144d18f7-75fd-4654-a083-6998c1f10622"] + 89 16:57:31.286800 IP (tos 0x0, ttl 64, id 57382, offset 0, flags [DF], proto TCP (6), length 65) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe35 (incorrect -> 0x7177), seq 27082:27095, ack 117, win 512, options [nop,nop,TS val 1977541176 ecr 1977541175], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 90 16:57:31.290485 IP (tos 0x0, ttl 64, id 43349, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x55bf), ack 27095, win 359, options [nop,nop,TS val 1977541179 ecr 1977541175], length 0 + 91 16:57:31.295019 IP (tos 0x0, ttl 64, id 43350, offset 0, flags [DF], proto TCP (6), length 154) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe8e (incorrect -> 0x9680), seq 117:219, ack 27095, win 512, options [nop,nop,TS val 1977541184 ecr 1977541175], length 102: IPROTO size=97 request: SUBSCRIBE, SYNC: 0 +CLUSTER_UUID: 0fa96161-16e5-4cfa-ae7e-c342258abedc +INSTANCE_UUID: 144d18f7-75fd-4654-a083-6998c1f10622 +VCLOCK: {1: 11} +SERVER_VERSION: 133636 +REPLICA_ANON: false +ID_FILTER: [2] + 92 16:57:31.295163 IP (tos 0x0, ttl 64, id 57383, offset 0, flags [DF], proto TCP (6), length 106) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5e (incorrect -> 0x7969), seq 27095:27149, ack 219, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 54: IPROTO size=49 response: OK, SYNC: 0, SCHEMA_VERSION: 0 +VCLOCK: {1: 11} +CLUSTER_UUID: 0fa96161-16e5-4cfa-ae7e-c342258abedc + 93 16:57:31.295184 IP (tos 0x0, ttl 64, id 57384, offset 0, flags [DF], proto TCP (6), length 67) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe37 (incorrect -> 0xefc0), seq 27149:27164, ack 219, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 15: IPROTO size=10 request: RAFT, GROUP_ID: 1, SYNC: 0 +RAFT_TERM: 2 +RAFT_STATE: 1 + 94 16:57:31.295204 IP (tos 0x0, ttl 64, id 43351, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x546d), ack 27164, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 0 + 95 16:57:31.295333 IP (tos 0x0, ttl 64, id 43352, offset 0, flags [DF], proto TCP (6), length 65) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe35 (incorrect -> 0x70ae), seq 219:232, ack 27164, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 96 16:57:31.295554 IP (tos 0x0, ttl 64, id 57385, offset 0, flags [DF], proto TCP (6), length 72) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe3c (incorrect -> 0xdf3f), seq 27164:27184, ack 232, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 20: IPROTO size=15 request: HEARTBEAT, REPLICA_ID: 1, TIMESTAMP: 2022-12-15 16:57:31.295484 + 97 16:57:31.295749 IP (tos 0x0, ttl 64, id 43353, offset 0, flags [DF], proto TCP (6), length 65) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe35 (incorrect -> 0x708d), seq 232:245, ack 27184, win 512, options [nop,nop,TS val 1977541184 ecr 1977541184], length 13: IPROTO size=8 response: HEARTBEAT +VCLOCK: {1: 11} + 98 16:57:31.336637 IP (tos 0x0, ttl 64, id 57386, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x5416), ack 245, win 512, options [nop,nop,TS val 1977541225 ecr 1977541184], length 0 + 99 16:57:31.368370 IP (tos 0x0, ttl 64, id 12066, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [S], cksum 0xfe30 (incorrect -> 0x9bd3), seq 3722433644, win 65495, options [mss 65495,sackOK,TS val 1977541257 ecr 0,nop,wscale 7], length 0 + 100 16:57:31.368378 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [S.], cksum 0xfe30 (incorrect -> 0xb1ca), seq 3735401205, ack 3722433645, win 65483, options [mss 65495,sackOK,TS val 1977541257 ecr 1977541257,nop,wscale 7], length 0 + 101 16:57:31.368385 IP (tos 0x0, ttl 64, id 12067, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xd886), ack 1, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 0 + 102 16:57:31.368682 IP (tos 0x0, ttl 64, id 51474, offset 0, flags [DF], proto TCP (6), length 180) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfea8 (incorrect -> 0x4f67), seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: e6bd3069-1336-4934-97d1-61b2dc4392f9, salt: IrPp7kzbyxmkm23YKBDponl9diEvxWKter1Z0mpJga8= + 103 16:57:31.368687 IP (tos 0x0, ttl 64, id 12068, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0xd807), ack 129, win 511, options [nop,nop,TS val 1977541257 ecr 1977541257], length 0 + 104 16:57:31.368744 IP (tos 0x0, ttl 64, id 12069, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xdc72), seq 1:20, ack 129, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 19: IPROTO size=14 request: ID, SYNC: 1 +VERSION: 3 +FEATURES: [0, 1, 2, 3] + 105 16:57:31.368748 IP (tos 0x0, ttl 64, id 51475, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [.], cksum 0xfe28 (incorrect -> 0xd7f3), ack 20, win 512, options [nop,nop,TS val 1977541257 ecr 1977541257], length 0 + 106 16:57:31.368886 IP (tos 0x0, ttl 64, id 51476, offset 0, flags [DF], proto TCP (6), length 89) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4d (incorrect -> 0xc2d9), seq 129:166, ack 20, win 512, options [nop,nop,TS val 1977541258 ecr 1977541257], length 37: IPROTO size=32 response: OK, SYNC: 1, SCHEMA_VERSION: 80 +VERSION: 3 +FEATURES: [0, 1, 2, 3] + 107 16:57:31.368950 IP (tos 0x0, ttl 64, id 12070, offset 0, flags [DF], proto TCP (6), length 121) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe6d (incorrect -> 0xbd35), seq 20:89, ack 166, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 69: IPROTO size=18 request: SELECT, SYNC: 2 +SPACE: _vspace (ID: 281) +LIMIT: 4294967295 +KEY: [] + 108 16:57:31.369122 IP (tos 0x0, ttl 64, id 51477, offset 0, flags [DF], proto TCP (6), length 19812) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0x4b59 (incorrect -> 0x3d22), seq 166:19926, ack 89, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 19760: IPROTO size=4641 response: OK, SYNC: 2, SCHEMA_VERSION: 80 +DATA: +[257, 1, "_vinyl_deferred_delete", "blackhole", 0, {"group_id": 1}, [{"name": "space_id", "type": "unsigned"}, {"name": "lsn", "type": "unsigned"}, {"name": "tuple", "type": "array"}]] +[272, 1, "_schema", "memtx", 0, {}, [{"type": "string", "name": "key"}, {"type": "any", "name": "value", "is_nullable": true}]] +[276, 1, "_collation", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "owner", "type": "unsigned"}, {"name": "type", "type": "string"}, {"name": "locale", "type": "string"}, {"name": "opts", "type": "map"}]] +[277, 1, "_vcollation", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "owner", "type": "unsigned"}, {"name": "type", "type": "string"}, {"name": "locale", "type": "string"}, {"name": "opts", "type": "map"}]] +[280, 1, "_space", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "engine", "type": "string"}, {"name": "field_count", "type": "unsigned"}, {"name": "flags", "type": "map"}, {"name": "format", "type": "array"}]] +[281, 1, "_vspace", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "engine", "type": "string"}, {"name": "field_count", "type": "unsigned"}, {"name": "flags", "type": "map"}, {"name": "format", "type": "array"}]] +[284, 1, "_sequence", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "step", "type": "integer"}, {"name": "min", "type": "integer"}, {"name": "max", "type": "integer"}, {"name": "start", "type": "integer"}, {"name": "cache", "type": "integer"}, {"name": "cycle", "type": "boolean"}]] +[285, 1, "_sequence_data", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "value", "type": "integer"}]] +[286, 1, "_vsequence", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "step", "type": "integer"}, {"name": "min", "type": "integer"}, {"name": "max", "type": "integer"}, {"name": "start", "type": "integer"}, {"name": "cache", "type": "integer"}, {"name": "cycle", "type": "boolean"}]] +[288, 1, "_index", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "iid", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "opts", "type": "map"}, {"name": "parts", "type": "array"}]] +[289, 1, "_vindex", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "iid", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "opts", "type": "map"}, {"name": "parts", "type": "array"}]] +[296, 1, "_func", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "setuid", "type": "unsigned"}, {"name": "language", "type": "string"}, {"name": "body", "type": "string"}, {"name": "routine_type", "type": "string"}, {"name": "param_list", "type": "array"}, {"name": "returns", "type": "string"}, {"name": "aggregate", "type": "string"}, {"name": "sql_data_access", "type": "string"}, {"name": "is_deterministic", "type": "boolean"}, {"name": "is_sandboxed", "type": "boolean"}, {"name": "is_null_call", "type": "boolean"}, {"name": "exports", "type": "array"}, {"name": "opts", "type": "map"}, {"name": "comment", "type": "string"}, {"name": "created", "type": "string"}, {"name": "last_altered", "type": "string"}]] +[297, 1, "_vfunc", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "setuid", "type": "unsigned"}, {"name": "language", "type": "string"}, {"name": "body", "type": "string"}, {"name": "routine_type", "type": "string"}, {"name": "param_list", "type": "array"}, {"name": "returns", "type": "string"}, {"name": "aggregate", "type": "string"}, {"name": "sql_data_access", "type": "string"}, {"name": "is_deterministic", "type": "boolean"}, {"name": "is_sandboxed", "type": "boolean"}, {"name": "is_null_call", "type": "boolean"}, {"name": "exports", "type": "array"}, {"name": "opts", "type": "map"}, {"name": "comment", "type": "string"}, {"name": "created", "type": "string"}, {"name": "last_altered", "type": "string"}]] +[304, 1, "_user", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "auth", "type": "map"}]] +[305, 1, "_vuser", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "auth", "type": "map"}]] +[312, 1, "_priv", "memtx", 0, {}, [{"name": "grantor", "type": "unsigned"}, {"name": "grantee", "type": "unsigned"}, {"name": "object_type", "type": "string"}, {"name": "object_id", "type": "scalar"}, {"name": "privilege", "type": "unsigned"}]] +[313, 1, "_vpriv", "sysview", 0, {}, [{"name": "grantor", "type": "unsigned"}, {"name": "grantee", "type": "unsigned"}, {"name": "object_type", "type": "string"}, {"name": "object_id", "type": "scalar"}, {"name": "privilege", "type": "unsigned"}]] +[320, 1, "_cluster", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "uuid", "type": "string"}]] +[328, 1, "_trigger", "memtx", 0, {}, [{"name": "name", "type": "string"}, {"name": "space_id", "type": "unsigned"}, {"name": "opts", "type": "map"}]] +[330, 1, "_truncate", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "count", "type": "unsigned"}]] +[340, 1, "_space_sequence", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "sequence_id", "type": "unsigned"}, {"name": "is_generated", "type": "boolean"}, {"name": "field", "type": "unsigned"}, {"name": "path", "type": "string"}]] +[356, 1, "_fk_constraint", "memtx", 0, {}, [{"name": "name", "type": "string"}, {"name": "child_id", "type": "unsigned"}, {"name": "parent_id", "type": "unsigned"}, {"name": "is_deferred", "type": "boolean"}, {"name": "match", "type": "string"}, {"name": "on_delete", "type": "string"}, {"name": "on_update", "type": "string"}, {"name": "child_cols", "type": "array"}, {"name": "parent_cols", "type": "array"}]] +[364, 1, "_ck_constraint", "memtx", 0, {}, [{"name": "space_id", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "is_deferred", "type": "boolean"}, {"name": "language", "type": "str"}, {"name": "code", "type": "str"}, {"name": "is_enabled", "type": "boolean"}]] +[372, 1, "_func_index", "memtx", 0, {}, [{"name": "space_id", "type": "unsigned"}, {"name": "index_id", "type": "unsigned"}, {"name": "func_id", "type": "unsigned"}]] +[380, 1, "_session_settings", "service", 2, {"temporary": true}, [{"name": "name", "type": "string"}, {"name": "value", "type": "any"}]] +[512, 1, "testspace", "memtx", 0, {"is_sync": true}, []] + 109 16:57:31.369454 IP (tos 0x0, ttl 64, id 12071, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0x2375), seq 89:112, ack 19926, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 23: IPROTO size=18 + 110 16:57:31.369464 IP (tos 0x0, ttl 64, id 12072, offset 0, flags [DF], proto TCP (6), length 62) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe32 (incorrect -> 0xb566), seq 112:122, ack 19926, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 10: IPROTO size=5 request: PING, SYNC: 5 + 111 16:57:31.369561 IP (tos 0x0, ttl 64, id 51478, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [.], cksum 0xfe28 (incorrect -> 0x8a36), ack 122, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 0 + 112 16:57:31.369694 IP (tos 0x0, ttl 64, id 51479, offset 0, flags [DF], proto TCP (6), length 104) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe5c (incorrect -> 0x554f), seq 19926:19978, ack 122, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 52: IPROTO size=24 response: OK, SYNC: 5, SCHEMA_VERSION: 80 + 113 16:57:31.369766 IP (tos 0x0, ttl 64, id 12073, offset 0, flags [DF], proto TCP (6), length 94) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe52 (incorrect -> 0xfda8), seq 122:164, ack 19978, win 512, options [nop,nop,TS val 1977541258 ecr 1977541258], length 42: IPROTO size=14 request: INSERT, SYNC: 6 +SPACE_ID: 512 +TUPLE: [1, 10] + 114 16:57:31.370030 IP (tos 0x0, ttl 64, id 57387, offset 0, flags [DF], proto TCP (6), length 85) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe49 (incorrect -> 0x15e7), seq 27184:27217, ack 245, win 512, options [nop,nop,TS val 1977541259 ecr 1977541184], length 33: IPROTO size=28 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 12, TIMESTAMP: 2022-12-15 16:57:31.369981, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [1, 10] + 115 16:57:31.370150 IP (tos 0x0, ttl 64, id 57388, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x7e7f), seq 27217:27244, ack 245, win 512, options [nop,nop,TS val 1977541259 ecr 1977541184], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 13, TIMESTAMP: 2022-12-15 16:57:31.370125 +REPLICA_ID: 1 +LSN: 12 + 116 16:57:31.370210 IP (tos 0x0, ttl 64, id 43354, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x536d), ack 27244, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 117 16:57:31.370210 IP (tos 0x0, ttl 64, id 51480, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x3097), seq 19978:20016, ack 164, win 512, options [nop,nop,TS val 1977541259 ecr 1977541258], length 38: IPROTO size=33 response: OK, SYNC: 6, SCHEMA_VERSION: 80 +DATA: +[1, 10] + 118 16:57:31.370301 IP (tos 0x0, ttl 64, id 12074, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb6d2), seq 164:183, ack 20016, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 19: IPROTO size=14 request: INSERT, SYNC: 7 +SPACE_ID: 512 +TUPLE: [2, 20] + 119 16:57:31.370368 IP (tos 0x0, ttl 64, id 43355, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0x0a90), seq 245:268, ack 27244, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.369981 +VCLOCK: {1: 12} + 120 16:57:31.370446 IP (tos 0x0, ttl 64, id 57389, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x5356), ack 268, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 121 16:57:31.370452 IP (tos 0x0, ttl 64, id 43356, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0x071c), seq 268:291, ack 27244, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370125 +VCLOCK: {1: 13} + 122 16:57:31.370460 IP (tos 0x0, ttl 64, id 57390, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x533f), ack 291, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 123 16:57:31.370481 IP (tos 0x0, ttl 64, id 57391, offset 0, flags [DF], proto TCP (6), length 85) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe49 (incorrect -> 0x0368), seq 27244:27277, ack 291, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 33: IPROTO size=28 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 14, TIMESTAMP: 2022-12-15 16:57:31.370455, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [2, 20] + 124 16:57:31.370486 IP (tos 0x0, ttl 64, id 57392, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x7625), seq 27277:27304, ack 291, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 15, TIMESTAMP: 2022-12-15 16:57:31.370469 +REPLICA_ID: 1 +LSN: 14 + 125 16:57:31.370566 IP (tos 0x0, ttl 64, id 51481, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2f52), seq 20016:20054, ack 183, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 38: IPROTO size=33 response: OK, SYNC: 7, SCHEMA_VERSION: 80 +DATA: +[2, 20] + 126 16:57:31.370566 IP (tos 0x0, ttl 64, id 43357, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x5303), ack 27304, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 0 + 127 16:57:31.370627 IP (tos 0x0, ttl 64, id 12075, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xac97), seq 183:202, ack 20054, win 512, options [nop,nop,TS val 1977541259 ecr 1977541259], length 19: IPROTO size=14 request: INSERT, SYNC: 8 +SPACE_ID: 512 +TUPLE: [3, 30] + 128 16:57:31.370804 IP (tos 0x0, ttl 64, id 43358, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0x005e), seq 291:314, ack 27304, win 512, options [nop,nop,TS val 1977541260 ecr 1977541259], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370455 +VCLOCK: {1: 14} + 129 16:57:31.370845 IP (tos 0x0, ttl 64, id 57393, offset 0, flags [DF], proto TCP (6), length 85) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe49 (incorrect -> 0xf394), seq 27304:27337, ack 314, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 33: IPROTO size=28 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 16, TIMESTAMP: 2022-12-15 16:57:31.370790, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [3, 30] + 130 16:57:31.370868 IP (tos 0x0, ttl 64, id 57394, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x6d93), seq 27337:27364, ack 314, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 17, TIMESTAMP: 2022-12-15 16:57:31.370849 +REPLICA_ID: 1 +LSN: 16 + 131 16:57:31.370898 IP (tos 0x0, ttl 64, id 43359, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x52ae), ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 132 16:57:31.370907 IP (tos 0x0, ttl 64, id 43360, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xfed0), seq 314:337, ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370469 +VCLOCK: {1: 15} + 133 16:57:31.371014 IP (tos 0x0, ttl 64, id 51482, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2e0d), seq 20054:20092, ack 202, win 512, options [nop,nop,TS val 1977541260 ecr 1977541259], length 38: IPROTO size=33 response: OK, SYNC: 8, SCHEMA_VERSION: 80 +DATA: +[3, 30] + 134 16:57:31.371066 IP (tos 0x0, ttl 64, id 12076, offset 0, flags [DF], proto TCP (6), length 88) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe4c (incorrect -> 0x7165), seq 202:238, ack 20092, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 36: IPROTO size=31 request: INSERT, SYNC: 9 +SPACE_ID: 512 +TUPLE: [4, (UUID: 8ca72637-11b1-4d80-8ac8-8f530a623953)] + 135 16:57:31.371114 IP (tos 0x0, ttl 64, id 43361, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xf877), seq 337:360, ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370790 +VCLOCK: {1: 16} + 136 16:57:31.371124 IP (tos 0x0, ttl 64, id 43362, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xf667), seq 360:383, ack 27364, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.370849 +VCLOCK: {1: 17} + 137 16:57:31.371200 IP (tos 0x0, ttl 64, id 57395, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x5269), ack 383, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 138 16:57:31.371215 IP (tos 0x0, ttl 64, id 57396, offset 0, flags [DF], proto TCP (6), length 102) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5a (incorrect -> 0xb189), seq 27364:27414, ack 383, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 50: IPROTO size=45 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 18, TIMESTAMP: 2022-12-15 16:57:31.371191, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [4, (UUID: 8ca72637-11b1-4d80-8ac8-8f530a623953)] + 139 16:57:31.371222 IP (tos 0x0, ttl 64, id 57397, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x6501), seq 27414:27441, ack 383, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 19, TIMESTAMP: 2022-12-15 16:57:31.371215 +REPLICA_ID: 1 +LSN: 18 + 140 16:57:31.371229 IP (tos 0x0, ttl 64, id 43363, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x521c), ack 27441, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 141 16:57:31.371234 IP (tos 0x0, ttl 64, id 51483, offset 0, flags [DF], proto TCP (6), length 107) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe5f (incorrect -> 0x3786), seq 20092:20147, ack 238, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 55: IPROTO size=50 response: OK, SYNC: 9, SCHEMA_VERSION: 80 +DATA: +[4, (UUID: 8ca72637-11b1-4d80-8ac8-8f530a623953)] + 142 16:57:31.371254 IP (tos 0x0, ttl 64, id 12077, offset 0, flags [DF], proto TCP (6), length 86) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe4a (incorrect -> 0x50cc), seq 238:272, ack 20147, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 34: IPROTO size=29 request: INSERT, SYNC: 10 +SPACE_ID: 512 +TUPLE: [5, (Decimal: -0987654321.0000000000123)] + 143 16:57:31.371308 IP (tos 0x0, ttl 64, id 43364, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xef6a), seq 383:406, ack 27441, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371191 +VCLOCK: {1: 18} + 144 16:57:31.371317 IP (tos 0x0, ttl 64, id 43365, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xedee), seq 406:429, ack 27441, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371215 +VCLOCK: {1: 19} + 145 16:57:31.371329 IP (tos 0x0, ttl 64, id 57398, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x51ee), ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 146 16:57:31.371341 IP (tos 0x0, ttl 64, id 51484, offset 0, flags [DF], proto TCP (6), length 105) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe5d (incorrect -> 0xfa0b), seq 20147:20200, ack 272, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 53: IPROTO size=48 response: OK, SYNC: 10, SCHEMA_VERSION: 80 +DATA: +[5, (Decimal: -0987654321.0000000000123)] + 147 16:57:31.371343 IP (tos 0x0, ttl 64, id 57399, offset 0, flags [DF], proto TCP (6), length 100) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe58 (incorrect -> 0x8ee5), seq 27441:27489, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 48: IPROTO size=43 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 20, TIMESTAMP: 2022-12-15 16:57:31.371308, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [5, (Decimal: -0987654321.0000000000123)] + 148 16:57:31.371348 IP (tos 0x0, ttl 64, id 57400, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x60b6), seq 27489:27516, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 21, TIMESTAMP: 2022-12-15 16:57:31.371325 +REPLICA_ID: 1 +LSN: 20 + 149 16:57:31.371352 IP (tos 0x0, ttl 64, id 12078, offset 0, flags [DF], proto TCP (6), length 91) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe4f (incorrect -> 0x26b1), seq 272:311, ack 20200, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 39: IPROTO size=34 request: INSERT, SYNC: 11 +SPACE_ID: 512 +TUPLE: [6, (Decimal: 0.0123456789876543212345678987654321)] + 150 16:57:31.371352 IP (tos 0x0, ttl 64, id 43366, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x51a3), ack 27516, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 151 16:57:31.371378 IP (tos 0x0, ttl 64, id 57401, offset 0, flags [DF], proto TCP (6), length 105) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5d (incorrect -> 0x63ec), seq 27516:27569, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 53: IPROTO size=48 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 22, TIMESTAMP: 2022-12-15 16:57:31.371363, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [6, (Decimal: 0.0123456789876543212345678987654321)] + 152 16:57:31.371384 IP (tos 0x0, ttl 64, id 57402, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x5d8c), seq 27569:27596, ack 429, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 23, TIMESTAMP: 2022-12-15 16:57:31.371377 +REPLICA_ID: 1 +LSN: 22 + 153 16:57:31.371391 IP (tos 0x0, ttl 64, id 51485, offset 0, flags [DF], proto TCP (6), length 110) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe62 (incorrect -> 0x3685), seq 20200:20258, ack 311, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 58: IPROTO size=53 response: OK, SYNC: 11, SCHEMA_VERSION: 80 +DATA: +[6, (Decimal: 0.0123456789876543212345678987654321)] + 154 16:57:31.371392 IP (tos 0x0, ttl 64, id 43367, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x5153), ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 155 16:57:31.371417 IP (tos 0x0, ttl 64, id 43368, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xeab7), seq 429:452, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371308 +VCLOCK: {1: 20} + 156 16:57:31.371430 IP (tos 0x0, ttl 64, id 43369, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xe955), seq 452:475, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371325 +VCLOCK: {1: 21} + 157 16:57:31.371435 IP (tos 0x0, ttl 64, id 57403, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x5125), ack 475, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 158 16:57:31.371435 IP (tos 0x0, ttl 64, id 43370, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xe7a0), seq 475:498, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371363 +VCLOCK: {1: 22} + 159 16:57:31.371443 IP (tos 0x0, ttl 64, id 12079, offset 0, flags [DF], proto TCP (6), length 88) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe4c (incorrect -> 0x14d0), seq 311:347, ack 20258, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 36: IPROTO size=31 request: INSERT, SYNC: 12 +SPACE_ID: 512 +TUPLE: [7, (Datetime: len 16)] + 160 16:57:31.371451 IP (tos 0x0, ttl 64, id 43371, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xe64f), seq 498:521, ack 27596, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371377 +VCLOCK: {1: 23} + 161 16:57:31.371457 IP (tos 0x0, ttl 64, id 57404, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x50f7), ack 521, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 162 16:57:31.371476 IP (tos 0x0, ttl 64, id 57405, offset 0, flags [DF], proto TCP (6), length 102) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5a (incorrect -> 0x502d), seq 27596:27646, ack 521, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 50: IPROTO size=45 request: INSERT, SYNC: 0, REPLICA_ID: 1, LSN: 24, TIMESTAMP: 2022-12-15 16:57:31.371459, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [7, (Datetime: len 16)] + 163 16:57:31.371479 IP (tos 0x0, ttl 64, id 51486, offset 0, flags [DF], proto TCP (6), length 107) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe5f (incorrect -> 0xb714), seq 20258:20313, ack 347, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 55: IPROTO size=50 response: OK, SYNC: 12, SCHEMA_VERSION: 80 +DATA: +[7, (Datetime: len 16)] + 164 16:57:31.371480 IP (tos 0x0, ttl 64, id 57406, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x5972), seq 27646:27673, ack 521, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 25, TIMESTAMP: 2022-12-15 16:57:31.371464 +REPLICA_ID: 1 +LSN: 24 + 165 16:57:31.371484 IP (tos 0x0, ttl 64, id 43372, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x50aa), ack 27673, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 166 16:57:31.371492 IP (tos 0x0, ttl 64, id 12080, offset 0, flags [DF], proto TCP (6), length 78) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe42 (incorrect -> 0xbc9c), seq 347:373, ack 20313, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 26: IPROTO size=21 request: SELECT, SYNC: 13 +SPACE_ID: 512 +INDEX_ID: 0 +ITERATOR: EQ +OFFSET: 0 +LIMIT: 2 +KEY: [1] + 167 16:57:31.371509 IP (tos 0x0, ttl 64, id 51487, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2e6d), seq 20313:20351, ack 373, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 38: IPROTO size=33 response: OK, SYNC: 13, SCHEMA_VERSION: 80 +DATA: +[1, 10] + 168 16:57:31.371522 IP (tos 0x0, ttl 64, id 12081, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe45 (incorrect -> 0xec58), seq 373:402, ack 20351, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 29: IPROTO size=24 request: SELECT, SYNC: 14 +SPACE_ID: 512 +INDEX_ID: 0 +ITERATOR: ALL +OFFSET: 0 +LIMIT: 4294967295 +KEY: [] + 169 16:57:31.371534 IP (tos 0x0, ttl 64, id 51488, offset 0, flags [DF], proto TCP (6), length 177) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfea5 (incorrect -> 0xc7f2), seq 20351:20476, ack 402, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 125: IPROTO size=120 response: OK, SYNC: 14, SCHEMA_VERSION: 80 +DATA: +[1, 10] +[2, 20] +[3, 30] +[4, (UUID: 8ca72637-11b1-4d80-8ac8-8f530a623953)] +[5, (Decimal: -0987654321.0000000000123)] +[6, (Decimal: 0.0123456789876543212345678987654321)] +[7, (Datetime: len 16)] + 170 16:57:31.371546 IP (tos 0x0, ttl 64, id 12082, offset 0, flags [DF], proto TCP (6), length 73) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3d (incorrect -> 0xb601), seq 402:423, ack 20476, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 21: IPROTO size=16 request: REPLACE, SYNC: 15 +SPACE_ID: 512 +TUPLE: [5, 6, 7, 8] + 171 16:57:31.371567 IP (tos 0x0, ttl 64, id 43373, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xe393), seq 521:544, ack 27673, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371459 +VCLOCK: {1: 24} + 172 16:57:31.371579 IP (tos 0x0, ttl 64, id 43374, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xe265), seq 544:567, ack 27673, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371464 +VCLOCK: {1: 25} + 173 16:57:31.371612 IP (tos 0x0, ttl 64, id 57407, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x507c), ack 567, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 174 16:57:31.371626 IP (tos 0x0, ttl 64, id 57408, offset 0, flags [DF], proto TCP (6), length 87) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe4b (incorrect -> 0xefd1), seq 27673:27708, ack 567, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 35: IPROTO size=30 request: REPLACE, SYNC: 0, REPLICA_ID: 1, LSN: 26, TIMESTAMP: 2022-12-15 16:57:31.371598, FLAGS: 6 +SPACE_ID: 512 +TUPLE: [5, 6, 7, 8] + 175 16:57:31.371633 IP (tos 0x0, ttl 64, id 57409, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x5470), seq 27708:27735, ack 567, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 27, TIMESTAMP: 2022-12-15 16:57:31.371622 +REPLICA_ID: 1 +LSN: 26 + 176 16:57:31.371635 IP (tos 0x0, ttl 64, id 51489, offset 0, flags [DF], proto TCP (6), length 92) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe50 (incorrect -> 0x208e), seq 20476:20516, ack 423, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 40: IPROTO size=35 response: OK, SYNC: 15, SCHEMA_VERSION: 80 +DATA: +[5, 6, 7, 8] + 177 16:57:31.371639 IP (tos 0x0, ttl 64, id 43375, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x503e), ack 27735, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 178 16:57:31.371650 IP (tos 0x0, ttl 64, id 12083, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe45 (incorrect -> 0xc36b), seq 423:452, ack 20516, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 29: IPROTO size=24 request: UPDATE, SYNC: 16 +SPACE_ID: 512 +INDEX_ID: 0 +INDEX_BASE: 1 +KEY: [1] +TUPLE: [["=", 2, 5]] + 179 16:57:31.371705 IP (tos 0x0, ttl 64, id 43376, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xdedf), seq 567:590, ack 27735, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371598 +VCLOCK: {1: 26} + 180 16:57:31.371722 IP (tos 0x0, ttl 64, id 43377, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xdd65), seq 590:613, ack 27735, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371622 +VCLOCK: {1: 27} + 181 16:57:31.371734 IP (tos 0x0, ttl 64, id 57410, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x5010), ack 613, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 182 16:57:31.371751 IP (tos 0x0, ttl 64, id 57411, offset 0, flags [DF], proto TCP (6), length 93) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe51 (incorrect -> 0xfe0b), seq 27735:27776, ack 613, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 41: IPROTO size=36 request: UPDATE, SYNC: 0, REPLICA_ID: 1, LSN: 28, TIMESTAMP: 2022-12-15 16:57:31.371725, FLAGS: 6 +SPACE_ID: 512 +INDEX_BASE: 1 +KEY: [1] +TUPLE: [["=", 2, 5]] + 183 16:57:31.371759 IP (tos 0x0, ttl 64, id 57412, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x4ff1), seq 27776:27803, ack 613, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 29, TIMESTAMP: 2022-12-15 16:57:31.371747 +REPLICA_ID: 1 +LSN: 28 + 184 16:57:31.371760 IP (tos 0x0, ttl 64, id 51490, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2d55), seq 20516:20554, ack 452, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 38: IPROTO size=33 response: OK, SYNC: 16, SCHEMA_VERSION: 80 +DATA: +[1, 5] + 185 16:57:31.371765 IP (tos 0x0, ttl 64, id 43378, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4fcc), ack 27803, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 0 + 186 16:57:31.371774 IP (tos 0x0, ttl 64, id 12084, offset 0, flags [DF], proto TCP (6), length 88) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe4c (incorrect -> 0x0551), seq 452:488, ack 20554, win 512, options [nop,nop,TS val 1977541260 ecr 1977541260], length 36: IPROTO size=31 request: UPSERT, SYNC: 17 +SPACE_ID: 512 +INDEX_BASE: 1 +TUPLE: [12, "c"] +OPS: [["=", 3, "a"], ["=", 4, "b"]] + 187 16:57:31.371819 IP (tos 0x0, ttl 64, id 57413, offset 0, flags [DF], proto TCP (6), length 102) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe5a (incorrect -> 0xa723), seq 27803:27853, ack 613, win 512, options [nop,nop,TS val 1977541261 ecr 1977541260], length 50: IPROTO size=45 request: UPSERT, SYNC: 0, REPLICA_ID: 1, LSN: 30, TIMESTAMP: 2022-12-15 16:57:31.371804, FLAGS: 6 +SPACE_ID: 512 +INDEX_BASE: 1 +OPS: [["=", 3, "a"], ["=", 4, "b"]] +TUPLE: [12, "c"] + 188 16:57:31.371825 IP (tos 0x0, ttl 64, id 57414, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x4c86), seq 27853:27880, ack 613, win 512, options [nop,nop,TS val 1977541261 ecr 1977541260], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 31, TIMESTAMP: 2022-12-15 16:57:31.371814 +REPLICA_ID: 1 +LSN: 30 + 189 16:57:31.371826 IP (tos 0x0, ttl 64, id 51491, offset 0, flags [DF], proto TCP (6), length 87) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4b (incorrect -> 0x32a3), seq 20554:20589, ack 488, win 512, options [nop,nop,TS val 1977541261 ecr 1977541260], length 35: IPROTO size=30 response: OK, SYNC: 17, SCHEMA_VERSION: 80 + 190 16:57:31.371828 IP (tos 0x0, ttl 64, id 43379, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xda0b), seq 613:636, ack 27880, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371725 +VCLOCK: {1: 28} + 191 16:57:31.371836 IP (tos 0x0, ttl 64, id 12085, offset 0, flags [DF], proto TCP (6), length 72) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3c (incorrect -> 0xc62f), seq 488:508, ack 20589, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: DELETE, SYNC: 18 +SPACE_ID: 512 +INDEX_ID: 0 +KEY: [1] + 192 16:57:31.371841 IP (tos 0x0, ttl 64, id 43380, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xd899), seq 636:659, ack 27880, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371747 +VCLOCK: {1: 29} + 193 16:57:31.371846 IP (tos 0x0, ttl 64, id 57415, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x4f4f), ack 659, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 194 16:57:31.371861 IP (tos 0x0, ttl 64, id 57416, offset 0, flags [DF], proto TCP (6), length 84) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe48 (incorrect -> 0xfe91), seq 27880:27912, ack 659, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 32: IPROTO size=27 request: DELETE, SYNC: 0, REPLICA_ID: 1, LSN: 32, TIMESTAMP: 2022-12-15 16:57:31.371849, FLAGS: 6 +SPACE_ID: 512 +KEY: [1] + 195 16:57:31.371868 IP (tos 0x0, ttl 64, id 57417, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x4968), seq 27912:27939, ack 659, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 33, TIMESTAMP: 2022-12-15 16:57:31.371856 +REPLICA_ID: 1 +LSN: 32 + 196 16:57:31.371870 IP (tos 0x0, ttl 64, id 51492, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2cd0), seq 20589:20627, ack 508, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 18, SCHEMA_VERSION: 80 +DATA: +[1, 5] + 197 16:57:31.371873 IP (tos 0x0, ttl 64, id 43381, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4f14), ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 198 16:57:31.371880 IP (tos 0x0, ttl 64, id 12086, offset 0, flags [DF], proto TCP (6), length 72) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3c (incorrect -> 0xc5f3), seq 508:528, ack 20627, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: DELETE, SYNC: 19 +SPACE_ID: 512 +INDEX_ID: 0 +KEY: [2] + 199 16:57:31.371930 IP (tos 0x0, ttl 64, id 43382, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xd656), seq 659:682, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371804 +VCLOCK: {1: 30} + 200 16:57:31.371948 IP (tos 0x0, ttl 64, id 43383, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xd515), seq 682:705, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371814 +VCLOCK: {1: 31} + 201 16:57:31.371958 IP (tos 0x0, ttl 64, id 43384, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xd36d), seq 705:728, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371849 +VCLOCK: {1: 32} + 202 16:57:31.371960 IP (tos 0x0, ttl 64, id 57418, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x4ee6), ack 705, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 203 16:57:31.371971 IP (tos 0x0, ttl 64, id 43385, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xd235), seq 728:751, ack 27939, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371856 +VCLOCK: {1: 33} + 204 16:57:31.371977 IP (tos 0x0, ttl 64, id 57419, offset 0, flags [DF], proto TCP (6), length 84) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe48 (incorrect -> 0xfc48), seq 27939:27971, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 32: IPROTO size=27 request: DELETE, SYNC: 0, REPLICA_ID: 1, LSN: 34, TIMESTAMP: 2022-12-15 16:57:31.371951, FLAGS: 6 +SPACE_ID: 512 +KEY: [2] + 205 16:57:31.371984 IP (tos 0x0, ttl 64, id 51493, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2b86), seq 20627:20665, ack 528, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 19, SCHEMA_VERSION: 80 +DATA: +[2, 20] + 206 16:57:31.371984 IP (tos 0x0, ttl 64, id 57420, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x44f0), seq 27971:27998, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 35, TIMESTAMP: 2022-12-15 16:57:31.371971 +REPLICA_ID: 1 +LSN: 34 + 207 16:57:31.371988 IP (tos 0x0, ttl 64, id 43386, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4e7d), ack 27998, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 208 16:57:31.371995 IP (tos 0x0, ttl 64, id 12087, offset 0, flags [DF], proto TCP (6), length 72) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3c (incorrect -> 0xc5b7), seq 528:548, ack 20665, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: DELETE, SYNC: 20 +SPACE_ID: 512 +INDEX_ID: 0 +KEY: [3] + 209 16:57:31.372021 IP (tos 0x0, ttl 64, id 57421, offset 0, flags [DF], proto TCP (6), length 84) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe48 (incorrect -> 0xfb21), seq 27998:28030, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 32: IPROTO size=27 request: DELETE, SYNC: 0, REPLICA_ID: 1, LSN: 36, TIMESTAMP: 2022-12-15 16:57:31.372007, FLAGS: 6 +SPACE_ID: 512 +KEY: [3] + 210 16:57:31.372031 IP (tos 0x0, ttl 64, id 57422, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [P.], cksum 0xfe43 (incorrect -> 0x41e2), seq 28030:28057, ack 751, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: RAFT_CONFIRM, SYNC: 0, REPLICA_ID: 1, LSN: 37, TIMESTAMP: 2022-12-15 16:57:31.372020 +REPLICA_ID: 1 +LSN: 36 + 211 16:57:31.372036 IP (tos 0x0, ttl 64, id 43387, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4e42), ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 212 16:57:31.372036 IP (tos 0x0, ttl 64, id 51494, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x2a41), seq 20665:20703, ack 548, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 20, SCHEMA_VERSION: 80 +DATA: +[3, 30] + 213 16:57:31.372046 IP (tos 0x0, ttl 64, id 12088, offset 0, flags [DF], proto TCP (6), length 112) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe64 (incorrect -> 0x6e7a), seq 548:608, ack 20703, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 60: IPROTO size=55 request: EVAL, SYNC: 21 +EXPR: function f5() return 5 + 5 end; return f5(); +TUPLE: [] + 214 16:57:31.372059 IP (tos 0x0, ttl 64, id 43388, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xcf1a), seq 751:774, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371951 +VCLOCK: {1: 34} + 215 16:57:31.372070 IP (tos 0x0, ttl 64, id 51495, offset 0, flags [DF], proto TCP (6), length 88) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4c (incorrect -> 0x2f86), seq 20703:20739, ack 608, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 36: IPROTO size=31 response: OK, SYNC: 21, SCHEMA_VERSION: 80 +DATA: +10 + 216 16:57:31.372079 IP (tos 0x0, ttl 64, id 43389, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xcdb2), seq 774:797, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.371971 +VCLOCK: {1: 35} + 217 16:57:31.372084 IP (tos 0x0, ttl 64, id 43390, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xcc03), seq 797:820, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.372007 +VCLOCK: {1: 36} + 218 16:57:31.372085 IP (tos 0x0, ttl 64, id 12089, offset 0, flags [DF], proto TCP (6), length 83) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe47 (incorrect -> 0xb82f), seq 608:639, ack 20739, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 31: IPROTO size=26 request: EVAL, SYNC: 22 +EXPR: return ... +TUPLE: [1, 2, [3, "x"]] + 219 16:57:31.372113 IP (tos 0x0, ttl 64, id 51496, offset 0, flags [DF], proto TCP (6), length 93) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe51 (incorrect -> 0xaa12), seq 20739:20780, ack 639, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 41: IPROTO size=36 response: OK, SYNC: 22, SCHEMA_VERSION: 80 +DATA: +1 +2 +[3, "x"] + 220 16:57:31.372121 IP (tos 0x0, ttl 64, id 12090, offset 0, flags [DF], proto TCP (6), length 98) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe56 (incorrect -> 0x218e), seq 639:685, ack 20780, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 46: IPROTO size=41 request: EVAL, SYNC: 23 +EXPR: function f1() return 5 + 5 end; +TUPLE: [] + 221 16:57:31.372127 IP (tos 0x0, ttl 64, id 57423, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [.], cksum 0xfe28 (incorrect -> 0x4dfd), ack 820, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 222 16:57:31.372139 IP (tos 0x0, ttl 64, id 51497, offset 0, flags [DF], proto TCP (6), length 87) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4b (incorrect -> 0x30f5), seq 20780:20815, ack 685, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 35: IPROTO size=30 response: OK, SYNC: 23, SCHEMA_VERSION: 80 + 223 16:57:31.372155 IP (tos 0x0, ttl 64, id 12091, offset 0, flags [DF], proto TCP (6), length 69) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe39 (incorrect -> 0xc31b), seq 685:702, ack 20815, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 17: IPROTO size=12 request: CALL, SYNC: 24 +FUNCTION_NAME: f1 +TUPLE: [] + 224 16:57:31.372170 IP (tos 0x0, ttl 64, id 51498, offset 0, flags [DF], proto TCP (6), length 88) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4c (incorrect -> 0x2eb5), seq 20815:20851, ack 702, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 36: IPROTO size=31 response: OK, SYNC: 24, SCHEMA_VERSION: 80 +DATA: +10 + 225 16:57:31.372180 IP (tos 0x0, ttl 64, id 12092, offset 0, flags [DF], proto TCP (6), length 102) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe5a (incorrect -> 0x54e6), seq 702:752, ack 20851, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 50: IPROTO size=45 request: EVAL, SYNC: 25 +EXPR: function f2(x, y) return x, y end; +TUPLE: [] + 226 16:57:31.372181 IP (tos 0x0, ttl 64, id 43391, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xcab3), seq 820:843, ack 28057, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 23: IPROTO size=18 response: OK, SYNC: 0, SCHEMA_VERSION: 0, TIMESTAMP: 2022-12-15 16:57:31.372020 +VCLOCK: {1: 37} + 227 16:57:31.372197 IP (tos 0x0, ttl 64, id 51499, offset 0, flags [DF], proto TCP (6), length 87) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4b (incorrect -> 0x3069), seq 20851:20886, ack 752, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 35: IPROTO size=30 response: OK, SYNC: 25, SCHEMA_VERSION: 80 + 228 16:57:31.372204 IP (tos 0x0, ttl 64, id 12093, offset 0, flags [DF], proto TCP (6), length 72) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3c (incorrect -> 0x1b49), seq 752:772, ack 20886, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 20: IPROTO size=15 request: CALL, SYNC: 26 +FUNCTION_NAME: f2 +TUPLE: [1, "B"] + 229 16:57:31.372216 IP (tos 0x0, ttl 64, id 51500, offset 0, flags [DF], proto TCP (6), length 90) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe4e (incorrect -> 0x89ea), seq 20886:20924, ack 772, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 38: IPROTO size=33 response: OK, SYNC: 26, SCHEMA_VERSION: 80 +DATA: +1 +"B" + 230 16:57:31.372224 IP (tos 0x0, ttl 64, id 12094, offset 0, flags [DF], proto TCP (6), length 79) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe43 (incorrect -> 0xb620), seq 772:799, ack 20924, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 27: IPROTO size=22 request: PREPARE, SYNC: 27 +SQL_TEXT: VALUES (?, ?); + 231 16:57:31.372270 IP (tos 0x0, ttl 64, id 51501, offset 0, flags [DF], proto TCP (6), length 151) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe8b (incorrect -> 0x555e), seq 20924:21023, ack 799, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 99: IPROTO size=94 response: OK, SYNC: 27, SCHEMA_VERSION: 80 +STMT_ID: 3618272283 +BIND_COUNT: 2 +BIND_METADATA: [{0: "?", 1: "ANY"}, {0: "?", 1: "ANY"}] +METADATA: [{0: "COLUMN_1", 1: "boolean"}, {0: "COLUMN_2", 1: "boolean"}] + 232 16:57:31.372281 IP (tos 0x0, ttl 64, id 12095, offset 0, flags [DF], proto TCP (6), length 76) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe40 (incorrect -> 0x29b4), seq 799:823, ack 21023, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 24: IPROTO size=19 request: EXECUTE, SYNC: 28 +STMT_ID: 3618272283 +SQL_BIND: [1, "a"] +OPTIONS: [] + 233 16:57:31.372297 IP (tos 0x0, ttl 64, id 51502, offset 0, flags [DF], proto TCP (6), length 126) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe72 (incorrect -> 0xcc59), seq 21023:21097, ack 823, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 74: IPROTO size=69 response: OK, SYNC: 28, SCHEMA_VERSION: 80 +METADATA: [{0: "COLUMN_1", 1: "integer"}, {0: "COLUMN_2", 1: "text"}] +DATA: +[1, "a"] + 234 16:57:31.372309 IP (tos 0x0, ttl 64, id 12096, offset 0, flags [DF], proto TCP (6), length 64) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe34 (incorrect -> 0xa21c), seq 823:835, ack 21097, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 12: IPROTO size=7 request: BEGIN, STREAM_ID: 1, SYNC: 29 + 235 16:57:31.372324 IP (tos 0x0, ttl 64, id 51503, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe45 (incorrect -> 0x1353), seq 21097:21126, ack 835, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 29: IPROTO size=24 response: OK, SYNC: 29, SCHEMA_VERSION: 80 + 236 16:57:31.372331 IP (tos 0x0, ttl 64, id 12097, offset 0, flags [DF], proto TCP (6), length 64) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe34 (incorrect -> 0xa1f0), seq 835:847, ack 21126, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 12: IPROTO size=7 request: ROLLBACK, STREAM_ID: 1, SYNC: 30 + 237 16:57:31.372343 IP (tos 0x0, ttl 64, id 51504, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe45 (incorrect -> 0x1329), seq 21126:21155, ack 847, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 29: IPROTO size=24 response: OK, SYNC: 30, SCHEMA_VERSION: 80 + 238 16:57:31.372350 IP (tos 0x0, ttl 64, id 12098, offset 0, flags [DF], proto TCP (6), length 64) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [P.], cksum 0xfe34 (incorrect -> 0xa1c7), seq 847:859, ack 21155, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 12: IPROTO size=7 request: COMMIT, STREAM_ID: 1, SYNC: 31 + 239 16:57:31.372362 IP (tos 0x0, ttl 64, id 51505, offset 0, flags [DF], proto TCP (6), length 81) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [P.], cksum 0xfe45 (incorrect -> 0x12ff), seq 21155:21184, ack 859, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 29: IPROTO size=24 response: OK, SYNC: 31, SCHEMA_VERSION: 80 + 240 16:57:31.372419 IP (tos 0x0, ttl 64, id 12099, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [F.], cksum 0xfe28 (incorrect -> 0x8264), seq 859, ack 21184, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 241 16:57:31.372427 IP (tos 0x0, ttl 64, id 51506, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40076: Flags [F.], cksum 0xfe28 (incorrect -> 0x8263), seq 21184, ack 860, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 242 16:57:31.372435 IP (tos 0x0, ttl 64, id 12100, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40076 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x8263), ack 21185, win 512, options [nop,nop,TS val 1977541261 ecr 1977541261], length 0 + 243 16:57:31.373225 IP (tos 0x0, ttl 64, id 43392, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [F.], cksum 0xfe28 (incorrect -> 0x4de4), seq 843, ack 28057, win 512, options [nop,nop,TS val 1977541262 ecr 1977541261], length 0 + 244 16:57:31.373454 IP (tos 0x0, ttl 64, id 57424, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40070: Flags [F.], cksum 0xfe28 (incorrect -> 0x4de3), seq 28057, ack 844, win 512, options [nop,nop,TS val 1977541262 ecr 1977541261], length 0 + 245 16:57:31.373458 IP (tos 0x0, ttl 64, id 43393, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40070 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x4de2), ack 28058, win 512, options [nop,nop,TS val 1977541262 ecr 1977541262], length 0 + 246 16:57:32.818697 IP (tos 0x0, ttl 64, id 13000, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [S], cksum 0xfe30 (incorrect -> 0x0bd1), seq 725422438, win 65495, options [mss 65495,sackOK,TS val 1977542707 ecr 0,nop,wscale 7], length 0 + 247 16:57:32.818705 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto TCP (6), length 60) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [S.], cksum 0xfe30 (incorrect -> 0x5516), seq 2701899671, ack 725422439, win 65483, options [mss 65495,sackOK,TS val 1977542707 ecr 1977542707,nop,wscale 7], length 0 + 248 16:57:32.818713 IP (tos 0x0, ttl 64, id 13001, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x7bd2), ack 1, win 512, options [nop,nop,TS val 1977542707 ecr 1977542707], length 0 + 249 16:57:32.818891 IP (tos 0x0, ttl 64, id 7475, offset 0, flags [DF], proto TCP (6), length 180) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfea8 (incorrect -> 0x4eef), seq 1:129, ack 1, win 512, options [nop,nop,TS val 1977542708 ecr 1977542707], length 128: IPROTO: greeting: version: Tarantool 2.10.4 (Binary), uuid: 056cb614-461f-4cc2-a26b-8a50f5286086, salt: 5ndApMi9Bm1zp5fR42X/WpfXcUBCabHQX+Na6hRot+0= + 250 16:57:32.818896 IP (tos 0x0, ttl 64, id 13002, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x7b51), ack 129, win 511, options [nop,nop,TS val 1977542708 ecr 1977542708], length 0 + 251 16:57:32.818950 IP (tos 0x0, ttl 64, id 13003, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0x7fbc), seq 1:20, ack 129, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 19: IPROTO size=14 request: ID, SYNC: 1 +VERSION: 3 +FEATURES: [0, 1, 2, 3] + 252 16:57:32.818955 IP (tos 0x0, ttl 64, id 7476, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [.], cksum 0xfe28 (incorrect -> 0x7b3d), ack 20, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 0 + 253 16:57:32.819084 IP (tos 0x0, ttl 64, id 7477, offset 0, flags [DF], proto TCP (6), length 89) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe4d (incorrect -> 0x6626), seq 129:166, ack 20, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 37: IPROTO size=32 response: OK, SYNC: 1, SCHEMA_VERSION: 78 +VERSION: 3 +FEATURES: [0, 1, 2, 3] + 254 16:57:32.819150 IP (tos 0x0, ttl 64, id 13004, offset 0, flags [DF], proto TCP (6), length 121) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe6d (incorrect -> 0x6081), seq 20:89, ack 166, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 69: IPROTO size=18 request: SELECT, SYNC: 2 +SPACE: _vspace (ID: 281) +LIMIT: 4294967295 +KEY: [] + 255 16:57:32.819319 IP (tos 0x0, ttl 64, id 7478, offset 0, flags [DF], proto TCP (6), length 19745) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0x4b16 (incorrect -> 0x1dce), seq 166:19859, ack 89, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 19693: IPROTO size=4608 response: OK, SYNC: 2, SCHEMA_VERSION: 78 +DATA: +[257, 1, "_vinyl_deferred_delete", "blackhole", 0, {"group_id": 1}, [{"name": "space_id", "type": "unsigned"}, {"name": "lsn", "type": "unsigned"}, {"name": "tuple", "type": "array"}]] +[272, 1, "_schema", "memtx", 0, {}, [{"type": "string", "name": "key"}, {"type": "any", "name": "value", "is_nullable": true}]] +[276, 1, "_collation", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "owner", "type": "unsigned"}, {"name": "type", "type": "string"}, {"name": "locale", "type": "string"}, {"name": "opts", "type": "map"}]] +[277, 1, "_vcollation", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "owner", "type": "unsigned"}, {"name": "type", "type": "string"}, {"name": "locale", "type": "string"}, {"name": "opts", "type": "map"}]] +[280, 1, "_space", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "engine", "type": "string"}, {"name": "field_count", "type": "unsigned"}, {"name": "flags", "type": "map"}, {"name": "format", "type": "array"}]] +[281, 1, "_vspace", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "engine", "type": "string"}, {"name": "field_count", "type": "unsigned"}, {"name": "flags", "type": "map"}, {"name": "format", "type": "array"}]] +[284, 1, "_sequence", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "step", "type": "integer"}, {"name": "min", "type": "integer"}, {"name": "max", "type": "integer"}, {"name": "start", "type": "integer"}, {"name": "cache", "type": "integer"}, {"name": "cycle", "type": "boolean"}]] +[285, 1, "_sequence_data", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "value", "type": "integer"}]] +[286, 1, "_vsequence", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "step", "type": "integer"}, {"name": "min", "type": "integer"}, {"name": "max", "type": "integer"}, {"name": "start", "type": "integer"}, {"name": "cache", "type": "integer"}, {"name": "cycle", "type": "boolean"}]] +[288, 1, "_index", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "iid", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "opts", "type": "map"}, {"name": "parts", "type": "array"}]] +[289, 1, "_vindex", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "iid", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "opts", "type": "map"}, {"name": "parts", "type": "array"}]] +[296, 1, "_func", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "setuid", "type": "unsigned"}, {"name": "language", "type": "string"}, {"name": "body", "type": "string"}, {"name": "routine_type", "type": "string"}, {"name": "param_list", "type": "array"}, {"name": "returns", "type": "string"}, {"name": "aggregate", "type": "string"}, {"name": "sql_data_access", "type": "string"}, {"name": "is_deterministic", "type": "boolean"}, {"name": "is_sandboxed", "type": "boolean"}, {"name": "is_null_call", "type": "boolean"}, {"name": "exports", "type": "array"}, {"name": "opts", "type": "map"}, {"name": "comment", "type": "string"}, {"name": "created", "type": "string"}, {"name": "last_altered", "type": "string"}]] +[297, 1, "_vfunc", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "setuid", "type": "unsigned"}, {"name": "language", "type": "string"}, {"name": "body", "type": "string"}, {"name": "routine_type", "type": "string"}, {"name": "param_list", "type": "array"}, {"name": "returns", "type": "string"}, {"name": "aggregate", "type": "string"}, {"name": "sql_data_access", "type": "string"}, {"name": "is_deterministic", "type": "boolean"}, {"name": "is_sandboxed", "type": "boolean"}, {"name": "is_null_call", "type": "boolean"}, {"name": "exports", "type": "array"}, {"name": "opts", "type": "map"}, {"name": "comment", "type": "string"}, {"name": "created", "type": "string"}, {"name": "last_altered", "type": "string"}]] +[304, 1, "_user", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "auth", "type": "map"}]] +[305, 1, "_vuser", "sysview", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "owner", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "type", "type": "string"}, {"name": "auth", "type": "map"}]] +[312, 1, "_priv", "memtx", 0, {}, [{"name": "grantor", "type": "unsigned"}, {"name": "grantee", "type": "unsigned"}, {"name": "object_type", "type": "string"}, {"name": "object_id", "type": "scalar"}, {"name": "privilege", "type": "unsigned"}]] +[313, 1, "_vpriv", "sysview", 0, {}, [{"name": "grantor", "type": "unsigned"}, {"name": "grantee", "type": "unsigned"}, {"name": "object_type", "type": "string"}, {"name": "object_id", "type": "scalar"}, {"name": "privilege", "type": "unsigned"}]] +[320, 1, "_cluster", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "uuid", "type": "string"}]] +[328, 1, "_trigger", "memtx", 0, {}, [{"name": "name", "type": "string"}, {"name": "space_id", "type": "unsigned"}, {"name": "opts", "type": "map"}]] +[330, 1, "_truncate", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "count", "type": "unsigned"}]] +[340, 1, "_space_sequence", "memtx", 0, {}, [{"name": "id", "type": "unsigned"}, {"name": "sequence_id", "type": "unsigned"}, {"name": "is_generated", "type": "boolean"}, {"name": "field", "type": "unsigned"}, {"name": "path", "type": "string"}]] +[356, 1, "_fk_constraint", "memtx", 0, {}, [{"name": "name", "type": "string"}, {"name": "child_id", "type": "unsigned"}, {"name": "parent_id", "type": "unsigned"}, {"name": "is_deferred", "type": "boolean"}, {"name": "match", "type": "string"}, {"name": "on_delete", "type": "string"}, {"name": "on_update", "type": "string"}, {"name": "child_cols", "type": "array"}, {"name": "parent_cols", "type": "array"}]] +[364, 1, "_ck_constraint", "memtx", 0, {}, [{"name": "space_id", "type": "unsigned"}, {"name": "name", "type": "string"}, {"name": "is_deferred", "type": "boolean"}, {"name": "language", "type": "str"}, {"name": "code", "type": "str"}, {"name": "is_enabled", "type": "boolean"}]] +[372, 1, "_func_index", "memtx", 0, {}, [{"name": "space_id", "type": "unsigned"}, {"name": "index_id", "type": "unsigned"}, {"name": "func_id", "type": "unsigned"}]] +[380, 1, "_session_settings", "service", 2, {"temporary": true}, [{"name": "name", "type": "string"}, {"name": "value", "type": "any"}]] + 256 16:57:32.819674 IP (tos 0x0, ttl 64, id 13005, offset 0, flags [DF], proto TCP (6), length 75) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3f (incorrect -> 0xc703), seq 89:112, ack 19859, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 23: IPROTO size=18 + 257 16:57:32.819692 IP (tos 0x0, ttl 64, id 13006, offset 0, flags [DF], proto TCP (6), length 122) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe6e (incorrect -> 0x0a20), seq 112:182, ack 19859, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 70: IPROTO size=65 request: EVAL, SYNC: 5 +EXPR: return box.error.new(box.error.ILLEGAL_PARAMS, "test") +TUPLE: [] + 258 16:57:32.819734 IP (tos 0x0, ttl 64, id 7479, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [.], cksum 0xfe28 (incorrect -> 0x2d89), ack 182, win 512, options [nop,nop,TS val 1977542708 ecr 1977542708], length 0 + 259 16:57:32.819884 IP (tos 0x0, ttl 64, id 7480, offset 0, flags [DF], proto TCP (6), length 135) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe7b (incorrect -> 0x83ed), seq 19859:19942, ack 182, win 512, options [nop,nop,TS val 1977542709 ecr 1977542708], length 83: IPROTO size=55 response: OK, SYNC: 5, SCHEMA_VERSION: 78 +DATA: +"Illegal parameters, test" + 260 16:57:32.819963 IP (tos 0x0, ttl 64, id 13007, offset 0, flags [DF], proto TCP (6), length 122) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe6e (incorrect -> 0x4b79), seq 182:252, ack 19942, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 70: IPROTO size=42 request: CALL, SYNC: 6 +FUNCTION_NAME: error_new +TUPLE: [{"code": 1000, "reason": "Reason"}] + 261 16:57:32.820143 IP (tos 0x0, ttl 64, id 7481, offset 0, flags [DF], proto TCP (6), length 132) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe78 (incorrect -> 0x3e9e), seq 19942:20022, ack 252, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 80: IPROTO size=75 response: OK, SYNC: 6, SCHEMA_VERSION: 78 +DATA: +EXTENSION: type ERROR [3], len 42 +TYPE: ClientError +LINE: 4294967295 +FILE: [C] +MESSAGE: Reason +ERRNO: 0 +CODE: 1000 + 262 16:57:32.820243 IP (tos 0x0, ttl 64, id 13008, offset 0, flags [DF], proto TCP (6), length 101) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe59 (incorrect -> 0x97e5), seq 252:301, ack 20022, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 49: IPROTO size=44 request: CALL, SYNC: 7 +FUNCTION_NAME: error_throw +TUPLE: [{"code": 1000, "reason": "Reason"}] + 263 16:57:32.820381 IP (tos 0x0, ttl 64, id 7482, offset 0, flags [DF], proto TCP (6), length 148) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe88 (incorrect -> 0x1b6c), seq 20022:20118, ack 301, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 96: IPROTO size=91 response: ERR: unknown, SYNC: 7, SCHEMA_VERSION: 78 +TYPE: ClientError +LINE: 42 +FILE: extended_error.test.lua +MESSAGE: Reason +ERRNO: 0 +CODE: 1000 + 264 16:57:32.820466 IP (tos 0x0, ttl 64, id 13009, offset 0, flags [DF], proto TCP (6), length 113) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe65 (incorrect -> 0x03a4), seq 301:362, ack 20118, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 61: IPROTO size=56 request: CALL, SYNC: 8 +FUNCTION_NAME: error_new +TUPLE: [{"type": "MyError", "reason": "Reason2", "code": 1001}] + 265 16:57:32.820575 IP (tos 0x0, ttl 64, id 7483, offset 0, flags [DF], proto TCP (6), length 155) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe8f (incorrect -> 0xac0a), seq 20118:20221, ack 362, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 103: IPROTO size=98 response: OK, SYNC: 8, SCHEMA_VERSION: 78 +DATA: +EXTENSION: type ERROR [3], len 65 +TYPE: CustomError +LINE: 4294967295 +FILE: [C] +MESSAGE: Reason2 +ERRNO: 0 +CODE: 1001 +FIELDS: custom_type: MyError + 266 16:57:32.820661 IP (tos 0x0, ttl 64, id 13010, offset 0, flags [DF], proto TCP (6), length 115) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe67 (incorrect -> 0x8c84), seq 362:425, ack 20221, win 512, options [nop,nop,TS val 1977542709 ecr 1977542709], length 63: IPROTO size=58 request: CALL, SYNC: 9 +FUNCTION_NAME: error_throw +TUPLE: [{"type": "MyError", "reason": "Reason2", "code": 1001}] + 267 16:57:32.820841 IP (tos 0x0, ttl 64, id 7484, offset 0, flags [DF], proto TCP (6), length 172) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfea0 (incorrect -> 0x78a3), seq 20221:20341, ack 425, win 512, options [nop,nop,TS val 1977542710 ecr 1977542709], length 120: IPROTO size=115 response: ERR: unknown, SYNC: 9, SCHEMA_VERSION: 78 +TYPE: CustomError +LINE: 42 +FILE: extended_error.test.lua +MESSAGE: Reason2 +ERRNO: 0 +CODE: 1001 +FIELDS: custom_type: MyError + 268 16:57:32.820928 IP (tos 0x0, ttl 64, id 13011, offset 0, flags [DF], proto TCP (6), length 86) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe4a (incorrect -> 0x3127), seq 425:459, ack 20341, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 34: IPROTO size=29 request: CALL, SYNC: 10 +FUNCTION_NAME: error_access_denied +TUPLE: [] + 269 16:57:32.821055 IP (tos 0x0, ttl 64, id 7485, offset 0, flags [DF], proto TCP (6), length 290) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xff16 (incorrect -> 0xa534), seq 20341:20579, ack 459, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 238: IPROTO size=233 response: OK, SYNC: 10, SCHEMA_VERSION: 78 +DATA: +EXTENSION: type ERROR [3], len 200 +TYPE: AccessDeniedError +LINE: 533 +FILE: ./src/box/func.c +MESSAGE: Execute access to function 'forbidden_function' is denied for user 'guest' +ERRNO: 0 +CODE: 42 +FIELDS: object_type: function, object_name: forbidden_function, access_type: Execute + 270 16:57:32.821152 IP (tos 0x0, ttl 64, id 13012, offset 0, flags [DF], proto TCP (6), length 92) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe50 (incorrect -> 0xecb1), seq 459:499, ack 20579, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 40: IPROTO size=35 request: CALL, SYNC: 11 +FUNCTION_NAME: error_throw_access_denied +TUPLE: [] + 271 16:57:32.821176 IP (tos 0x0, ttl 64, id 7486, offset 0, flags [DF], proto TCP (6), length 359) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xff5b (incorrect -> 0xe952), seq 20579:20886, ack 499, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 307: IPROTO size=302 response: ERR: ER_ACCESS_DENIED, SYNC: 11, SCHEMA_VERSION: 78 +TYPE: AccessDeniedError +LINE: 533 +FILE: ./src/box/func.c +MESSAGE: Execute access to function 'forbidden_function' is denied for user 'guest' +ERRNO: 0 +CODE: 42 +FIELDS: object_type: function, object_name: forbidden_function, access_type: Execute + 272 16:57:32.821203 IP (tos 0x0, ttl 64, id 13013, offset 0, flags [DF], proto TCP (6), length 146) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe86 (incorrect -> 0xe338), seq 499:593, ack 20886, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 94: IPROTO size=89 request: CALL, SYNC: 12 +FUNCTION_NAME: error_new_stacked +TUPLE: [{"type": "MyError2", "reason": "Reason3", "code": 1003}, {"code": 1004, "reason": "Reason4"}] + 273 16:57:32.821225 IP (tos 0x0, ttl 64, id 7487, offset 0, flags [DF], proto TCP (6), length 228) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfed8 (incorrect -> 0x46d8), seq 20886:21062, ack 593, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 176: IPROTO size=171 response: OK, SYNC: 12, SCHEMA_VERSION: 78 +DATA: +EXTENSION: type ERROR [3], len 138 +TYPE: CustomError +LINE: 46 +FILE: extended_error.test.lua +MESSAGE: Reason3 +ERRNO: 0 +CODE: 1003 +FIELDS: custom_type: MyError2 +--- +TYPE: ClientError +LINE: 47 +FILE: extended_error.test.lua +MESSAGE: Reason4 +ERRNO: 0 +CODE: 1004 + 274 16:57:32.821253 IP (tos 0x0, ttl 64, id 13014, offset 0, flags [DF], proto TCP (6), length 148) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe88 (incorrect -> 0x6baf), seq 593:689, ack 21062, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 96: IPROTO size=91 request: CALL, SYNC: 13 +FUNCTION_NAME: error_throw_stacked +TUPLE: [{"type": "MyError2", "reason": "Reason3", "code": 1003}, {"code": 1004, "reason": "Reason4"}] + 275 16:57:32.821272 IP (tos 0x0, ttl 64, id 7488, offset 0, flags [DF], proto TCP (6), length 229) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfed9 (incorrect -> 0x4aeb), seq 21062:21239, ack 689, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 177: IPROTO size=172 response: ERR: unknown, SYNC: 13, SCHEMA_VERSION: 78 +TYPE: CustomError +LINE: 46 +FILE: extended_error.test.lua +MESSAGE: Reason3 +ERRNO: 0 +CODE: 1003 +FIELDS: custom_type: MyError2 +--- +TYPE: ClientError +LINE: 47 +FILE: extended_error.test.lua +MESSAGE: Reason4 +ERRNO: 0 +CODE: 1004 + 276 16:57:32.821298 IP (tos 0x0, ttl 64, id 13015, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb95a), seq 689:708, ack 21239, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 14 +FUNCTION_NAME: func +TUPLE: [] + 277 16:57:32.821311 IP (tos 0x0, ttl 64, id 7489, offset 0, flags [DF], proto TCP (6), length 155) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe8f (incorrect -> 0xa75d), seq 21239:21342, ack 708, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 103: IPROTO size=98 response: OK, SYNC: 14, SCHEMA_VERSION: 78 +DATA: +[(ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 278 16:57:32.821335 IP (tos 0x0, ttl 64, id 13016, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb8df), seq 708:727, ack 21342, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 15 +FUNCTION_NAME: func +TUPLE: [] + 279 16:57:32.821347 IP (tos 0x0, ttl 64, id 7490, offset 0, flags [DF], proto TCP (6), length 157) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe91 (incorrect -> 0xa24f), seq 21342:21447, ack 727, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 15, SCHEMA_VERSION: 78 +DATA: +[1] +[(ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 280 16:57:32.821365 IP (tos 0x0, ttl 64, id 13017, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb862), seq 727:746, ack 21447, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 16 +FUNCTION_NAME: func +TUPLE: [] + 281 16:57:32.821377 IP (tos 0x0, ttl 64, id 7491, offset 0, flags [DF], proto TCP (6), length 157) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe91 (incorrect -> 0xa1d2), seq 21447:21552, ack 746, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 16, SCHEMA_VERSION: 78 +DATA: +[1] +[(ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 282 16:57:32.821392 IP (tos 0x0, ttl 64, id 13018, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb7e5), seq 746:765, ack 21552, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 17 +FUNCTION_NAME: func +TUPLE: [] + 283 16:57:32.821404 IP (tos 0x0, ttl 64, id 7492, offset 0, flags [DF], proto TCP (6), length 155) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe8f (incorrect -> 0xa5e8), seq 21552:21655, ack 765, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 103: IPROTO size=98 response: OK, SYNC: 17, SCHEMA_VERSION: 78 +DATA: +[(ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 284 16:57:32.821418 IP (tos 0x0, ttl 64, id 13019, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb76a), seq 765:784, ack 21655, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 18 +FUNCTION_NAME: func +TUPLE: [] + 285 16:57:32.821431 IP (tos 0x0, ttl 64, id 7493, offset 0, flags [DF], proto TCP (6), length 156) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe90 (incorrect -> 0x4fbf), seq 21655:21759, ack 784, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 104: IPROTO size=99 response: OK, SYNC: 18, SCHEMA_VERSION: 78 +DATA: +[1, (ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 286 16:57:32.821444 IP (tos 0x0, ttl 64, id 13020, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb6ee), seq 784:803, ack 21759, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 19 +FUNCTION_NAME: func +TUPLE: [] + 287 16:57:32.821457 IP (tos 0x0, ttl 64, id 7494, offset 0, flags [DF], proto TCP (6), length 157) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe91 (incorrect -> 0xa05e), seq 21759:21864, ack 803, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 19, SCHEMA_VERSION: 78 +DATA: +[1] +[(ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 288 16:57:32.821473 IP (tos 0x0, ttl 64, id 13021, offset 0, flags [DF], proto TCP (6), length 71) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [P.], cksum 0xfe3b (incorrect -> 0xb671), seq 803:822, ack 21864, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 19: IPROTO size=14 request: CALL_16, SYNC: 20 +FUNCTION_NAME: func +TUPLE: [] + 289 16:57:32.821487 IP (tos 0x0, ttl 64, id 7495, offset 0, flags [DF], proto TCP (6), length 157) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [P.], cksum 0xfe91 (incorrect -> 0x9fe1), seq 21864:21969, ack 822, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 105: IPROTO size=100 response: OK, SYNC: 20, SCHEMA_VERSION: 78 +DATA: +[1] +[(ERROR: [{ "type": "ClientError", "line": 158, "file": "extended_error.test.lua", "message": "Unknown error", "errno": 0, "code": 0 }])] + 290 16:57:32.821577 IP (tos 0x0, ttl 64, id 13022, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [F.], cksum 0xfe28 (incorrect -> 0x22c6), seq 822, ack 21969, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 0 + 291 16:57:32.821584 IP (tos 0x0, ttl 64, id 7496, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.3309 > 127.0.0.1.40078: Flags [F.], cksum 0xfe28 (incorrect -> 0x22c5), seq 21969, ack 823, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 0 + 292 16:57:32.821591 IP (tos 0x0, ttl 64, id 13023, offset 0, flags [DF], proto TCP (6), length 52) + 127.0.0.1.40078 > 127.0.0.1.3309: Flags [.], cksum 0xfe28 (incorrect -> 0x22c5), ack 21970, win 512, options [nop,nop,TS val 1977542710 ecr 1977542710], length 0