]
Paul Ferraro updated ISPN-12124:
--------------------------------
Priority: Critical (was: Major)
OracleTableManager is overly conservative with object name max
length
---------------------------------------------------------------------
Key: ISPN-12124
URL:
https://issues.redhat.com/browse/ISPN-12124
Project: Infinispan
Issue Type: Enhancement
Components: Loaders and Stores
Affects Versions: 11.0.1.Final
Reporter: Paul Ferraro
Priority: Critical
The OracleTableManager limits the size of generated object names to 30 characters. While
30 characters was the max object name length in 12.1 and earlier, since 12.2, this limit
was increased to 128 characters.
30 characters is prohibitively restrictive when it come to objects like the index name,
the names for which are auto-generated based on the cache name, table name, and, in the
case of the segment column, a long hard coded prefix (e.g. "segment_index") uses
up nearly half of the available characters.
Rather than fixed lengths per database type, Infinispan should leverage the
DatabaseMetaData to determine the max size for a given database object, e.g.
getMaxTableNameLength(), getMaxColumnNameLength(), etc.