• last updated a few minutes ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
improving Oracle upgrade scripts

Oracle has no "ALTER TABLE ADD COLUMN ...."

Oracle has no "ALTER TABLE ADD COLUMN if exists .."

    • -3
    • +17
    ./oracle/upgrade/upgrade-5.10.0d11-5.10.0d12.sql
  1. … 8 more files in changeset.
fixes for Oracle 19c

  1. … 5 more files in changeset.
Do not insert object_ids that do not exist in acs_object (leftover group message keys)

    • -1
    • +2
    ./postgresql/upgrade/upgrade-5.10.0d13-5.10.0d14.sql
Take also care to populate the newly created column with the group ids coming from automatically generated message keys

    • -0
    • +7
    ./postgresql/upgrade/upgrade-5.10.0d13-5.10.0d14.sql
  1. … 1 more file in changeset.
Create index on the new lang_message_keys.object_id column

    • -0
    • +2
    ./postgresql/upgrade/upgrade-5.10.0d12-5.10.0d13.sql
  1. … 1 more file in changeset.
acs-lang reform

Provide an optional object_id which can be used to register message keys that will be bound to the lifecycle of an acs-object. When the object is deleted, so will the message key.

This is useful for groups that automatically define a message key for their pretty name. Tcl api was already aware of this and would cleanup such message keys, but other idioms e.g. stored procedures used to delete groups would leave leftovers behind. These can become relatively numerous on group-intensive systems such as LEARN.

Other future usages for this new feature might be the automatic localization of xowiki FormPage properties.

    • -0
    • +4
    ./postgresql/upgrade/upgrade-5.10.0d11-5.10.0d12.sql
  1. … 6 more files in changeset.
Trim padding from column to be sure

Redefine ad_locales.language table column as varchar to avoid Oracle idiosyncrasies when comparing a char(n) with other string datatypes when using bind variables (following insightful LARS's remark)

char(n) in Oracle are automatically padded to be n characters long. Apparently, comparing char(n) -> char(n) is "blanks insensitive", while comparing char(n) -> varchar2(n) will account for such automatically inserted blanks. When using bind variables, one should carefully specify the type to use to avoid surprises with char(n) (for this we should touch the oracle driver), normalize the value via trim/pad all the time or replace every char(n) datatype with varchar2. ...are there other places where this is happening?

    • -0
    • +11
    ./postgresql/upgrade/upgrade-5.10.0d2-5.10.0d3.sql
  1. … 2 more files in changeset.