Long Identifiers
The maximum length of names for certain objects has increased from 32 to 256 bytes.
Names for the following objects can now be a maximum of 256 bytes:
• Table
• View
• Index
• Column
• Partition
• Procedure
• Procedure parameter
• Rule
• Sequence
• Synonym
• Object
• Constraint
• Integrity
The maximum length of names for the following objects remains at 32 bytes:
• Database
• Owner
• User
• Group
• Profile
• Role
• Schema
• Location
• Event
• Alarm
• Node
The maximum length of a collation sequence name is 64 bytes.
The maximum length for names of objects managed by Ingres tools such as Query-By-Forms, Report-By-Forms, Vision, and Visual Forms Editor remains at 32 bytes. (Examples of these objects are Forms, JoinDefs, QBFnames, Graphs, and Reports.) These tools may be unable to display and operate on objects (such as tables and columns) with long names.
The size of related columns in the standard catalog interface has also increased. For example, iitables.table_name, which is a view on iirelation.relid, has increased from 32 to 256.
The Long Identifiers feature changes the catalogs and the format of many log records, which means that after running upgradedb, previous journals and checkpoints will be invalid.
Pre-Ingres-10 databases must be upgraded with upgradedb before they can be accessed. Alternatively, you can unload your database before installing Ingres 10 and then reload the database after installing Ingres 10.
An older version (such as 9.2) client can access an Ingres 10 database if you limit names to a maximum of 32 bytes.
Note: Migration If an application is using dynamic SQL and is dynamically linked against libq, you must recompile the application to properly access the SQL Descriptor Area because of changes in the IISQLVAR structure for Long Identifiers.