However, a more grave issue is that Oracle does not allow starting with an underscore in unquoted column names. So in order to support Oracle, you would need to replace all
WHERE _uid="dwho"
with
WHERE `_uid`="dwho"
Which looks like a pretty big change potentially impacting all other modules, just for Oracle's benefit.
Since this bug seems like it's been around for a while, I'm wondering if Oracle is being used in the wild with this module at all?
(One of my clients is running an intrusively patched version of Apache::Session::Browseable in order to mitigate those problems, but they might be the only ones)
I'm wondering what's best between fixing Oracle support in its current state (using underscore-prefixed column names), or changing the module to instead make use of native JSON data types in oracle ( https://docs.oracle.com/database/121/ADXDB/json.htm#ADXDB6399) similar to PgJson
Oracle support on this module is currently broken. There is a syntax error at https://github.com/LemonLDAPNG/Apache-Session-Browseable/blob/8a4857459ade45b3d6cfb793783a0b22885f4a35/lib/Apache/Session/Browseable/Oracle.pm#L9 (missing semicolon)
and incorrect module references at https://github.com/LemonLDAPNG/Apache-Session-Browseable/blob/8a4857459ade45b3d6cfb793783a0b22885f4a35/lib/Apache/Session/Browseable/Oracle.pm#L23 (should be JSON::(un)serialize)
However, a more grave issue is that Oracle does not allow starting with an underscore in unquoted column names. So in order to support Oracle, you would need to replace all
with
Which looks like a pretty big change potentially impacting all other modules, just for Oracle's benefit.
Since this bug seems like it's been around for a while, I'm wondering if Oracle is being used in the wild with this module at all?
(One of my clients is running an intrusively patched version of Apache::Session::Browseable in order to mitigate those problems, but they might be the only ones)
I'm wondering what's best between fixing Oracle support in its current state (using underscore-prefixed column names), or changing the module to instead make use of native JSON data types in oracle ( https://docs.oracle.com/database/121/ADXDB/json.htm#ADXDB6399) similar to PgJson