Subject | Handling charactersets |
---|---|
Author | Mark Rotteveel |
Post date | 2012-07-03T12:46:05Z |
On Tue, 03 Jul 2012 14:24:40 +0200, Roman Rokytskyy <roman@...>
wrote:
charactersets in Jaybird is not without (significant) risk. I would like to
propose a gradual change in the way Jaybird handles unspecified connection
charactersets. The final goal would be to default to UTF-8 as the default
characterset when no characterset is specified.
We could introduce this in Jaybird 2.3 as an optional default (requiring a
Java system property to enable it). I would propose we also add warnings in
the logs (and maybe a SQLWarning on the Connection, although most
developers ignore those) when no explicit connection characterset is
selected. This would really be required for the current behavior, but
probably also a good idea for the new behavior.
This change would be explicitly mentioned in the releasenotes etc. For
Jaybird 3.0 we switch this around: using UTF-8 as the default, people
preferring the old way would need to explicitly specify the connection
characterset as NONE. Optionally we may also need to allow for more control
on how one specific connection converts the bytes received when connecting
explicitly with NONE (eg to allow for conversion and fixes of data between
two connections).
Mark
wrote:
> Let's stop this discussion here - it is becoming to lengthy. :)I am of the opinion that changing the handling of unspecified
charactersets in Jaybird is not without (significant) risk. I would like to
propose a gradual change in the way Jaybird handles unspecified connection
charactersets. The final goal would be to default to UTF-8 as the default
characterset when no characterset is specified.
We could introduce this in Jaybird 2.3 as an optional default (requiring a
Java system property to enable it). I would propose we also add warnings in
the logs (and maybe a SQLWarning on the Connection, although most
developers ignore those) when no explicit connection characterset is
selected. This would really be required for the current behavior, but
probably also a good idea for the new behavior.
This change would be explicitly mentioned in the releasenotes etc. For
Jaybird 3.0 we switch this around: using UTF-8 as the default, people
preferring the old way would need to explicitly specify the connection
characterset as NONE. Optionally we may also need to allow for more control
on how one specific connection converts the bytes received when connecting
explicitly with NONE (eg to allow for conversion and fixes of data between
two connections).
Mark