On 04/03/2019 20:01, Mark Rotteveel wrote:
And that is not the point of this thread. I know it is a 16 bit unsigned short inside Firebird, and I know how the value works.

My question is about the **encoding** in the data buffer obtained from the native client. I want to avoid incorrectly implementing the support in Jaybird. And FYI, In the wire protocol 16 bit integers are encoded as 32 bit integers, and the length of the buffer from fbclient (12 instead of 10 bytes for TIMESTAMP WITH TIME ZONE) seemed to suggest it is in native as well. However as I said in my reply above, it probably is just padded to a multiple of 4.

In any case it's 'yet another' way of addressing the 'timezone' problem, and it's not playing nicely with any of the other equally bad methods adopted by other engines and other interfaces. That it IS using 12 bytes over the wire is perhaps another reason that simply making it natively work with second accuracy rather than minute would have been a step in the right direction? At least that would be more compatible with some of the other approaches and make cross working a little easier.

--
Lester Caine - G8HFL
-----------------------------
Contact - https://lsces.co.uk/wiki/?page=contact
L.S.Caine Electronic Services - https://lsces.co.uk
EnquirySolve - https://enquirysolve.com/
Model Engineers Digital Workshop - https://medw.co.uk
Rainbow Digital Media - https://rainbowdigitalmedia.co.uk


Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to