11.06.2019 12:44, Alex Peshkoff via Firebird-devel wrote:
On 11.06.2019 1:41, Vlad Khorsun wrote:

Do this 2 facts

- client have some ICU library, but it can't convert region ID obtained from
  server (because of different ICU version), or even
- wrong conversion of region ID at client side because of mismatched ICU
  version (sounds impossible, but not improbable)


mean that IDs difer between ICU versions?

  Note, i wrote: "sounds impossible, but not improbable". I.e. i think nobody 
will
change region ID in incompatible way intentionally. But it could be made by 
error or
by another reason we can't control or predict (it is external code, at last).

One of "simple" solutions could be to ask sever once for whole conversion
table and to keep it at some temp file (or nearby fbclient\app) for future 
usage.
It is also not ideal, as different servers could have different ICU versions, 
but
it could be a starting point to think on the better solution.


If different ICUs have different ID for same TZ than:
- ID should be extended with ICU version,

  It is too much, i think. Client could ask database about current ICU version 
and
choose appropriate cached conversion table.

- suggested by Vlad table should have ICU version in the header.

  Yes, version of a conversion table as a whole, not per region ID.

Yes, client will store >1 copies of that table if it connects to different servers (veray rare in practice case).

  Different servers not necessary uses different ICU versions ;)

Regards,
Vlad



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

Reply via email to