Hello! Thank you for review! My answer below.
I was able to reproduce this failure on current 2.0:
Now it is good on travis:Please, next time attach intermediate diff (i.e. diff between two versions) or inline each hunk as answer to comment. It is quite complicated to review full patch (especially when it comes to patches containing hundreds of lines) each time. https://travis-ci.org/tarantool/tarantool/jobs/436232731 box/sql.test.lua fails on Travis. Please, fix it.
https://travis-ci.org/tarantool/tarantool/builds/439704198
Diff between two last versions:
diff --git a/src/box/sql/analyze.c b/src/box/sql/analyze.c
index 95c516a..a886d8a 100644
--- a/src/box/sql/analyze.c
+++ b/src/box/sql/analyze.c
@@ -797,13 +797,13 @@ vdbe_emit_analyze_space(struct Parse *parse, struct space *space)
assert(space->index_count != 0);
struct Vdbe *v = sqlite3GetVdbe(parse);
assert(v != NULL);
- const char *tab_name = space_name(space);
+ MAYBE_UNUSED const char *tab_name = space_name(space);
sqlite3VdbeAddOp4(v, OP_IteratorOpen, tab_cursor, 0, 0, (void *) space,
P4_SPACEPTR);
sqlite3VdbeAddOp2(v, OP_Integer, space->def->id, space_id_reg);
for (uint32_t j = 0; j < space->index_count; ++j) {
struct index *idx = space->index[j];
- const char *idx_name;
+ MAYBE_UNUSED const char *idx_name;
/*
* Primary indexes feature automatically generated
* names. Thus, for the sake of clarity, use
Actually, this diff doesn’t look like fix of that failed test.I guess it is simply flaky, so this time you get lucky and it is passed.Did you checked that test-trace from Travis fails on fresh 2.0 as well?Did you manage to understand the reason of failure? Otherwise there isno guarantee that you patch is innocent in this situation.Without any investigation I can give my approval on this patch.