PL/Java is a free add-on module that brings Java™ Stored Procedures, Triggers, Functions, Aggregates, Operators, Types, etc., to the PostgreSQL™ backend.
Addresses #416, an unlikely scenario that combined a database set for SQL_ASCII with an unworkable setting in pljava.vmoptions, where the combination caused an UnsupportedCharsetException during initialization in String.c, and elogExceptionMessage tried to use the incompletely-initialized String routines, causing a crash.
Effort had been put in String.c to avoid such outcomes, by having initial values of uninitialized and s_two_step_conversion that provide a fallback capability before initialization is complete. However, the initial value of s_two_step_conversion could be changed to its runtime-determined value too early, with some other initialization steps yet to be done.
Addresses #416, an unlikely scenario that combined a database set for
SQL_ASCII
with an unworkable setting inpljava.vmoptions
, where the combination caused anUnsupportedCharsetException
during initialization inString.c
, andelogExceptionMessage
tried to use the incompletely-initializedString
routines, causing a crash.Effort had been put in
String.c
to avoid such outcomes, by having initial values ofuninitialized
ands_two_step_conversion
that provide a fallback capability before initialization is complete. However, the initial value ofs_two_step_conversion
could be changed to its runtime-determined value too early, with some other initialization steps yet to be done.