|
Cool ! When will the next official jar drop be of Derby which includes this ?
Any document how to incorporate this patch into the source ? Thanx again B-) Note that the this specific patch (derby-id-plus-renames-v2.patch) has a veto against it.
http://nagoya.apache.org/eyebrowse/ReadMsg?listName=derby-dev@db.apache.org&msgNo=1385 See the thread for more details. I'd like to see this one fixed as well.
I have built a hacked local version with just the sqlgrammer.jj file modified to use the 128 char lengths rather than 18 char lengths, which is easy to do and seems to work. A couple of notes:
- we probably shouldn't rename DB2_ limits until the values have been changed to Derby specific values - otherwise it makes it even harder to figure out where the value came from. - changing some of these limits may make the DatabaseMetadata provided by the IBM DB2 JDBC Driver incorrect when used in server mode (embedded mode is OK). Not sure what we can do about that considering we don't have the source. What I want to do:
1) Change the name of DB2Limit.java to Limits.java 2) Ensure that all DB2 related constants are prefixed by DB2_ There are now 6 constants which do not have the prefix: MIN_COL_LENGTH_FOR_CURRENT_USER MIN_COL_LENGTH_FOR_CURRENT_SCHEMA, MAX_USERID_LENGTH, MAX_DECIMAL_PRECISION_SCALE, DEFAULT_DECIMAL_PRECISION, DEFAULT_DECIMAL_SCALE These should get the DB2_ prefix if they are DB2-related (are they?) 3) DB2_MAX_IDENTIFIER_LENGTH18/30/128 changes to MAX_IDENITIFER_LENGTH which is set to 128 4) extend lang/indentifier.sql with positive and negative tests for more identifiers than table name (constraint, cursor, function, index, trigger, column, schema, savepoint and view names) There seems to be no (practical) limit on cursor names:
get cursor zzzz as 'select * from tab'; where zzzz is 10000 characters long works prefectly in ij (same goes for next etc). Fix merged into trunk. Closing it.
reopening to set Affects and Fix In.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
It also renames the DB2Limit.java into DerbyLimit.java the constants it contains from DB2_ to DERBY_