maria-discuss team mailing list archive
-
maria-discuss team
-
Mailing list archive
-
Message #02421
Re: GSOC 2015 :UDFs returning arrays
Hi,
Sorry for the misunderstanding.
On Tue, Mar 10, 2015 at 3:17 PM, Oleksandr Byelkin <sanja@xxxxxxxxxxxxxxxx>
wrote:
> Hi!
>
> On 10.03.15 21:41, Justin Swanhart wrote:
>
>> No,
>>
>> You SAY the UDF can support them, but you neglect to point to a technical
>> way how.
>>
>> If you want to return a row as an array, well, how do you add an item to
>> a row outside of the UDF, remove one? How do you count the items in the
>> row? How do you get an item by index? If you want to use internal
>> Item_result, well, how do you access item functions without a THD? You
>> can't get a THD in a UDF, except an opaque pointer to one, unless you pull
>> in half the server and it isn't really "legal" to do so. How do you pass
>> an array to a stored routine, how does the routine modify it, can routines
>> return arrays or just UDF? Row as an array is a ludicrous hack. You can't
>> even pass row to other functions.
>>
>> If you want a new UDF interface that can do those things, use a pluggable
>> item function which I linked to the patch to. You absolutely can't change
>> an unversioned binary interface like the existing UDF without risking
>> server crash.
>>
>> So, if you want ARRAY to be returned by a UDF, you have to start with a
>> new UDF interface. Again, pluggable item func are the right way to do it.
>>
>>
>> It looks like you misunderstand me.
>
> I do not want something with UDF at all, I just mentioned that internally
> there is something array-like and somebody who will do the task can be
> aware of it.
>
> P.S.: But now I see that UDF interface should be changed due to problems
> you mentioned.
>
References