Subject Re: Approaches at JB-to-FB conenctions regarding charsets
Author the_a_rioch
> Sure - no. But in the database world we have either TRUE or FALSE, not
> VERY LIKELY.

...

> who use NONE do their dirty work further.

which they VERY LIKELY would be able to do for a while.
and when it all crash - they would ask "why don't you warn as ? why you just connected as if everything normal ? are you bank lawyers ?"

> > To me it looks quite opposite.
> > http://www.trackstudio.ru/forum/download/file.php?id=212
> > Users would instantly detect and "cry early"
>
> Aha, and what about the applications that compute in background?

And you start them without user interactions at all ?
And u change database/jaybird without shutting them down ?

Why to store human-readable data into database ?
You mean you would not have i18n-ed GUI for reading logs, but rather route user to IBConsole ?

> > In a way that users would see garbage, cease operations and request
> > admin to fix it.
>
> Not an option, since things might get screwed before somebody notices.

In some very specific circumstances.
And for the rest NONEers things might get screwed at any time due to environment change.
One time chance to screw rather non-typical installments vs continuos chances to screw typical ones.

That is "breaking changes in JB 2.2.0" not mere "release notes for 2.1.7"


> No double conversion - neither piece of code will apply any conversion
> if NONE is used (explicitly or implicitly). The conversion to string
> with platform's default encoding will happen far above the code that
> performs network calls.

So you rely on FBClient VERY UNLIKELY would transcode on it's own.


> That is the requirement of Java, you have to
> live with it.

You can workaround it.
You can explicitly fail.
Or You can implicitly apply some heuristics.

That is all the matter of choice for any of the clients.

You rely on FBClient not trying to Query GetThreadLocale and start transcoding to ANSI or OEM.
I rely upon Jaybird doing the same until explicitly .

> Below that level only bytes are shifted over the wire.
I was talking not about wire protocol, but about Jaybird working via FBClient.dll