[tarantool-patches] Re: [PATCH 5/8] sql: replace field type with affinity for VDBE runtime
n.pettik
korablev at tarantool.org
Tue Feb 5 20:46:25 MSK 2019
> On 5 Feb 2019, at 18:08, Vladislav Shpilevoy <v.shpilevoy at tarantool.org> wrote:
>
> Hi! Thanks for the fixes!
>
>>>> diff --git a/src/box/sql/vdbe.c b/src/box/sql/vdbe.c
>>>> index 24d992284..80d2fd0aa 100644
>>>> --- a/src/box/sql/vdbe.c
>>>> +++ b/src/box/sql/vdbe.c
>>>> @@ -2881,7 +2873,7 @@ case OP_MakeRecord: {
>>>> * of the record to data0.
>>>> */
>>>> nField = pOp->p1;
>>>> - zAffinity = pOp->p4.z;
>>>> + enum field_type *types = (enum field_type *)pOp->p4.z;
>>>
>>> 2. Maybe, it is worth adding enum field_type *types into VdbeOp.p4union
>>> and do not cast. Like we did with many other pointers.
>> Thanks for suggestion, but I guess it is not necessary now.
>> Lets consider this refactoring a bit later.
>
> Space * and other members of p4union also were not
> necessary, but they make it easier to understand what can
> be stored in p4, when you look at struct VdbeOp. So please,
> apply this:
Ok, sorry, I slightly misunderstood your proposal:
I forgot that they would have the same layout and
we wouldn’t have to refactor sqlite3VdbeChangeP4()
with P4_FIELDTYPE and so on. Thanks, applied.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.tarantool.org/pipermail/tarantool-patches/attachments/20190205/3cc39640/attachment.html>
More information about the Tarantool-patches
mailing list