[tarantool-patches] Re: [PATCH 1/2] sql: refactor sql_expr_coll and sql_binary_compare_coll_seq functions
Konstantin Osipov
kostja at tarantool.org
Thu Jan 17 16:28:02 MSK 2019
* Nikita Pettik <korablev at tarantool.org> [19/01/16 17:06]:
> Lets make sql_expr_coll() return error code for two reasons. Firstly,
> we are going to use this function to detect operands of concatenation
> with incompatible collations. Secondly, pointer to struct coll in most
> cases is redundant since collation id (which in turn returned via output
> parameter) is enough to proceed the same operations.
It is redundant but it is potentially faster. What are benefits of
changing a pointer to an id? This looks like de-optimization.
> For the same reason lets make sql_binary_compare_coll_seq() return
> collation id instead of struct coll* and remove corresponding output
> parameter.
It should be always possible to query id from struct coll. I don't
see a reason to operate with ids in the source code anywhere but
in DDL.
Moreover, if we keep changing it back and forth to our taste it
will be a mess.
the general rule for space id, index id, coll id is that they
should not be used unless necessary for locking/consistency
reasons.
--
Konstantin Osipov, Moscow, Russia, +7 903 626 22 32
http://tarantool.io - www.twitter.com/kostja_osipov
More information about the Tarantool-patches
mailing list