Skip to content

Commit a52ebd3

Browse files
committed
Add Tarantool error codes to crash patterns
ER_LOADING has been removed from a list as it is often appears on replicas bootstrap. Closes #46
1 parent e5aeff7 commit a52ebd3

File tree

2 files changed

+230
-1
lines changed

2 files changed

+230
-1
lines changed

src/tarantool/errcode.clj

Lines changed: 226 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,226 @@
1+
(ns tarantool.errcode
2+
"Tarantool error codes.")
3+
4+
(def codes
5+
"A list of error codes that used in Tarantool.
6+
Source: src/box/errcode.h"
7+
[:ER_UNKNOWN
8+
:ER_ILLEGAL_PARAMS
9+
:ER_MEMORY_ISSUE
10+
:ER_TUPLE_FOUND
11+
:ER_TUPLE_NOT_FOUND
12+
:ER_UNSUPPORTED
13+
:ER_NONMASTER
14+
:ER_READONLY
15+
:ER_INJECTION
16+
:ER_CREATE_SPACE
17+
:ER_SPACE_EXISTS
18+
:ER_DROP_SPACE
19+
:ER_ALTER_SPACE
20+
:ER_INDEX_TYPE
21+
:ER_MODIFY_INDEX
22+
:ER_LAST_DROP
23+
:ER_TUPLE_FORMAT_LIMIT
24+
:ER_DROP_PRIMARY_KEY
25+
:ER_KEY_PART_TYPE
26+
:ER_EXACT_MATCH
27+
:ER_INVALID_MSGPACK
28+
:ER_PROC_RET
29+
:ER_TUPLE_NOT_ARRAY
30+
:ER_FIELD_TYPE
31+
:ER_INDEX_PART_TYPE_MISMATCH
32+
:ER_UPDATE_SPLICE
33+
:ER_UPDATE_ARG_TYPE
34+
:ER_FORMAT_MISMATCH_INDEX_PART
35+
:ER_UNKNOWN_UPDATE_OP
36+
:ER_UPDATE_FIELD
37+
:ER_FUNCTION_TX_ACTIVE
38+
:ER_KEY_PART_COUNT
39+
:ER_PROC_LUA
40+
:ER_NO_SUCH_PROC
41+
:ER_NO_SUCH_TRIGGER
42+
:ER_NO_SUCH_INDEX_ID
43+
:ER_NO_SUCH_SPACE
44+
:ER_NO_SUCH_FIELD_NO
45+
:ER_EXACT_FIELD_COUNT
46+
:ER_FIELD_MISSING
47+
:ER_WAL_IO
48+
:ER_MORE_THAN_ONE_TUPLE
49+
:ER_ACCESS_DENIED
50+
:ER_CREATE_USER
51+
:ER_DROP_USER
52+
:ER_NO_SUCH_USER
53+
:ER_USER_EXISTS
54+
:ER_PASSWORD_MISMATCH
55+
:ER_UNKNOWN_REQUEST_TYPE
56+
:ER_UNKNOWN_SCHEMA_OBJECT
57+
:ER_CREATE_FUNCTION
58+
:ER_NO_SUCH_FUNCTION
59+
:ER_FUNCTION_EXISTS
60+
:ER_BEFORE_REPLACE_RET
61+
:ER_MULTISTATEMENT_TRANSACTION
62+
:ER_TRIGGER_EXISTS
63+
:ER_USER_MAX
64+
:ER_NO_SUCH_ENGINE
65+
:ER_RELOAD_CFG
66+
:ER_CFG
67+
:ER_SAVEPOINT_EMPTY_TX
68+
:ER_NO_SUCH_SAVEPOINT
69+
:ER_UNKNOWN_REPLICA
70+
:ER_REPLICASET_UUID_MISMATCH
71+
:ER_INVALID_UUID
72+
:ER_REPLICASET_UUID_IS_RO
73+
:ER_INSTANCE_UUID_MISMATCH
74+
:ER_REPLICA_ID_IS_RESERVED
75+
:ER_INVALID_ORDER
76+
:ER_MISSING_REQUEST_FIELD
77+
:ER_IDENTIFIER
78+
:ER_DROP_FUNCTION
79+
:ER_ITERATOR_TYPE
80+
:ER_REPLICA_MAX
81+
:ER_INVALID_XLOG
82+
:ER_INVALID_XLOG_NAME
83+
:ER_INVALID_XLOG_ORDER
84+
:ER_NO_CONNECTION
85+
:ER_TIMEOUT
86+
:ER_ACTIVE_TRANSACTION
87+
:ER_CURSOR_NO_TRANSACTION
88+
:ER_CROSS_ENGINE_TRANSACTION
89+
:ER_NO_SUCH_ROLE
90+
:ER_ROLE_EXISTS
91+
:ER_CREATE_ROLE
92+
:ER_INDEX_EXISTS
93+
:ER_SESSION_CLOSED
94+
:ER_ROLE_LOOP
95+
:ER_GRANT
96+
:ER_PRIV_GRANTED
97+
:ER_ROLE_GRANTED
98+
:ER_PRIV_NOT_GRANTED
99+
:ER_ROLE_NOT_GRANTED
100+
:ER_MISSING_SNAPSHOT
101+
:ER_CANT_UPDATE_PRIMARY_KEY
102+
:ER_UPDATE_INTEGER_OVERFLOW
103+
:ER_GUEST_USER_PASSWORD
104+
:ER_TRANSACTION_CONFLICT
105+
:ER_UNSUPPORTED_PRIV
106+
:ER_LOAD_FUNCTION
107+
:ER_FUNCTION_LANGUAGE
108+
:ER_RTREE_RECT
109+
:ER_PROC_C
110+
:ER_UNKNOWN_RTREE_INDEX_DISTANCE_TYPE
111+
:ER_PROTOCOL
112+
:ER_UPSERT_UNIQUE_SECONDARY_KEY
113+
:ER_WRONG_INDEX_RECORD
114+
:ER_WRONG_INDEX_PARTS
115+
:ER_WRONG_INDEX_OPTIONS
116+
:ER_WRONG_SCHEMA_VERSION
117+
:ER_MEMTX_MAX_TUPLE_SIZE
118+
:ER_WRONG_SPACE_OPTIONS
119+
:ER_UNSUPPORTED_INDEX_FEATURE
120+
:ER_VIEW_IS_RO
121+
:ER_NO_TRANSACTION
122+
:ER_SYSTEM
123+
:ER_CONNECTION_TO_SELF
124+
:ER_KEY_PART_IS_TOO_LONG
125+
:ER_COMPRESSION
126+
:ER_CHECKPOINT_IN_PROGRESS
127+
:ER_SUB_STMT_MAX
128+
:ER_COMMIT_IN_SUB_STMT
129+
:ER_ROLLBACK_IN_SUB_STMT
130+
:ER_DECOMPRESSION
131+
:ER_INVALID_XLOG_TYPE
132+
:ER_ALREADY_RUNNING
133+
:ER_INDEX_FIELD_COUNT_LIMIT
134+
:ER_LOCAL_INSTANCE_ID_IS_READ_ONLY
135+
:ER_BACKUP_IN_PROGRESS
136+
:ER_READ_VIEW_ABORTED
137+
:ER_INVALID_INDEX_FILE
138+
:ER_INVALID_RUN_FILE
139+
:ER_INVALID_VYLOG_FILE
140+
:ER_CHECKPOINT_ROLLBACK
141+
:ER_VY_QUOTA_TIMEOUT
142+
:ER_PARTIAL_KEY
143+
:ER_TRUNCATE_SYSTEM_SPACE
144+
:ER_LOAD_MODULE
145+
:ER_VINYL_MAX_TUPLE_SIZE
146+
:ER_WRONG_DD_VERSION
147+
:ER_WRONG_SPACE_FORMAT
148+
:ER_CREATE_SEQUENCE
149+
:ER_ALTER_SEQUENCE
150+
:ER_DROP_SEQUENCE
151+
:ER_NO_SUCH_SEQUENCE
152+
:ER_SEQUENCE_EXISTS
153+
:ER_SEQUENCE_OVERFLOW
154+
:ER_NO_SUCH_INDEX_NAME
155+
:ER_SPACE_FIELD_IS_DUPLICATE
156+
:ER_CANT_CREATE_COLLATION
157+
:ER_WRONG_COLLATION_OPTIONS
158+
:ER_NULLABLE_PRIMARY
159+
:ER_NO_SUCH_FIELD_NAME_IN_SPACE
160+
:ER_TRANSACTION_YIELD
161+
:ER_NO_SUCH_GROUP
162+
:ER_SQL_BIND_VALUE
163+
:ER_SQL_BIND_TYPE
164+
:ER_SQL_BIND_PARAMETER_MAX
165+
:ER_SQL_EXECUTE
166+
:ER_UPDATE_DECIMAL_OVERFLOW
167+
:ER_SQL_BIND_NOT_FOUND
168+
:ER_ACTION_MISMATCH
169+
:ER_VIEW_MISSING_SQL
170+
:ER_FOREIGN_KEY_CONSTRAINT
171+
:ER_NO_SUCH_MODULE
172+
:ER_NO_SUCH_COLLATION
173+
:ER_CREATE_FK_CONSTRAINT
174+
:ER_DROP_FK_CONSTRAINT
175+
:ER_NO_SUCH_CONSTRAINT
176+
:ER_CONSTRAINT_EXISTS
177+
:ER_SQL_TYPE_MISMATCH
178+
:ER_ROWID_OVERFLOW
179+
:ER_DROP_COLLATION
180+
:ER_ILLEGAL_COLLATION_MIX
181+
:ER_SQL_NO_SUCH_PRAGMA
182+
:ER_SQL_CANT_RESOLVE_FIELD
183+
:ER_INDEX_EXISTS_IN_SPACE
184+
:ER_INCONSISTENT_TYPES
185+
:ER_SQL_SYNTAX_WITH_POS
186+
:ER_SQL_STACK_OVERFLOW
187+
:ER_SQL_SELECT_WILDCARD
188+
:ER_SQL_STATEMENT_EMPTY
189+
:ER_SQL_KEYWORD_IS_RESERVED
190+
:ER_SQL_SYNTAX_NEAR_TOKEN
191+
:ER_SQL_UNKNOWN_TOKEN
192+
:ER_SQL_PARSER_GENERIC
193+
:ER_SQL_ANALYZE_ARGUMENT
194+
:ER_SQL_COLUMN_COUNT_MAX
195+
:ER_HEX_LITERAL_MAX
196+
:ER_INT_LITERAL_MAX
197+
:ER_SQL_PARSER_LIMIT
198+
:ER_INDEX_DEF_UNSUPPORTED
199+
:ER_CK_DEF_UNSUPPORTED
200+
:ER_MULTIKEY_INDEX_MISMATCH
201+
:ER_CREATE_CK_CONSTRAINT
202+
:ER_CK_CONSTRAINT_FAILED
203+
:ER_SQL_COLUMN_COUNT
204+
:ER_FUNC_INDEX_FUNC
205+
:ER_FUNC_INDEX_FORMAT
206+
:ER_FUNC_INDEX_PARTS
207+
:ER_NO_SUCH_FIELD_NAME
208+
:ER_FUNC_WRONG_ARG_COUNT
209+
:ER_BOOTSTRAP_READONLY
210+
:ER_SQL_FUNC_WRONG_RET_COUNT
211+
:ER_FUNC_INVALID_RETURN_TYPE
212+
:ER_SQL_PARSER_GENERIC_WITH_POS
213+
:ER_REPLICA_NOT_ANON
214+
:ER_CANNOT_REGISTER
215+
:ER_SESSION_SETTING_INVALID_VALUE
216+
:ER_SQL_PREPARE
217+
:ER_WRONG_QUERY_ID
218+
:ER_SEQUENCE_NOT_STARTED
219+
:ER_NO_SUCH_SESSION_SETTING
220+
:ER_UNCOMMITTED_FOREIGN_SYNC_TXNS
221+
:ER_SYNC_MASTER_MISMATCH
222+
:ER_SYNC_QUORUM_TIMEOUT
223+
:ER_SYNC_ROLLBACK
224+
:ER_TUPLE_METADATA_IS_TOO_BIG
225+
:ER_XLOG_GAP
226+
:ER_TOO_EARLY_SUBSCRIBE])

src/tarantool/runner.clj

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
;[knossos.model :as model]
2020
[jepsen.os.ubuntu :as ubuntu]
2121
[tarantool [db :as db]
22+
[errcode :as err]
2223
[register :as register]
2324
[sets :as sets]
2425
[counter :as counter]]))
@@ -82,7 +83,9 @@
8283

8384
(def crash-pattern
8485
"An egrep pattern we use to find crashes in the Tarantool logs."
85-
"Segmentation fault|F>")
86+
(str/join "|"
87+
(vector "Segmentation fault|F>"
88+
(str/join "|" (map name err/codes)))))
8689

8790
(defn logged-crashes
8891
"Takes a test, and returns a map of nodes to strings from their Tarantool logs

0 commit comments

Comments
 (0)