[tarantool-patches] Re: [PATCH v1 1/2] sql: introduce pragma sql_default_engine

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Wed Jun 27 15:32:55 MSK 2018


Hello. Thanks for the fixes!

> diff --git a/src/box/schema_def.h b/src/box/schema_def.h
> index b9a5fa5..e6a7206 100644
> --- a/src/box/schema_def.h
> +++ b/src/box/schema_def.h
> @@ -243,6 +243,13 @@ enum schema_object_type {
>   	schema_object_type_MAX = 8
>   };
>   
> +/** SQL Storage engine. */
> +enum sql_storage_engine {
> +    SQL_STORAGE_ENGINE_MEMTX = 0,
> +    SQL_STORAGE_ENGINE_VINYL = 1,
> +    sql_storage_engine_MAX = 2
> +};

Please, put _strs here as extern and declare it in schema_def.c
like it is done for other enum + _strs pairs (enum + extern strs in
a header and declaration in source).

> +
>   enum schema_object_type
>   schema_object_type(const char *name);
>   


On the branch I got these errors:

/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:102:6: error: variable 'trigger_name' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
         if (sqlite3FixSrcList(&fixdb, table) != 0)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:156:20: note: uninitialized use occurs here
         sqlite3DbFree(db, trigger_name);
                           ^~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:102:2: note: remove the 'if' if its condition is always false
         if (sqlite3FixSrcList(&fixdb, table) != 0)
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:98:6: error: variable 'trigger_name' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
         if (db->mallocFailed)
             ^~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:156:20: note: uninitialized use occurs here
         sqlite3DbFree(db, trigger_name);
                           ^~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:98:2: note: remove the 'if' if its condition is always false
         if (db->mallocFailed)
         ^~~~~~~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:91:6: error: variable 'trigger_name' is used uninitialized whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
         if (table == NULL || db->mallocFailed)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:156:20: note: uninitialized use occurs here
         sqlite3DbFree(db, trigger_name);
                           ^~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:91:2: note: remove the 'if' if its condition is always false
         if (table == NULL || db->mallocFailed)
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:91:6: error: variable 'trigger_name' is used uninitialized whenever '||' condition is true [-Werror,-Wsometimes-uninitialized]
         if (table == NULL || db->mallocFailed)
             ^~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:156:20: note: uninitialized use occurs here
         sqlite3DbFree(db, trigger_name);
                           ^~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:91:6: note: remove the '||' if its condition is always false
         if (table == NULL || db->mallocFailed)
             ^~~~~~~~~~~~~~~~
/Users/v.shpilevoy/Work/Repositories/tarantool/src/box/sql/trigger.c:105:2: note: variable 'trigger_name' is declared here
         char *trigger_name = sqlite3NameFromToken(db, name);
         ^
4 errors generated.




More information about the Tarantool-patches mailing list