[jira] Updated: (DDLUTILS-178) ModelException thrown when reading columns with special names
[ https://issues.apache.org/jira/browse/DDLUTILS-178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Thomas Dudziak updated DDLUTILS-178: Fix Version/s: 1.1 ModelException thrown when reading columns with special names --- Key: DDLUTILS-178 URL: https://issues.apache.org/jira/browse/DDLUTILS-178 Project: DdlUtils Issue Type: Bug Components: Core - PostgreSql Affects Versions: 1.0 RC2 Environment: PostgreSQL 8.2 on Ubuntu 7.04. Java 6. Reporter: Adrián Romero Assignee: Thomas Dudziak Fix For: 1.1 Attachments: remove-quotes.patch Trying to execute the method readModelFromDatabase a ModelException is thrown. The database has only one table with a field named year. If this field is renamed by another name it works ok. The field year appears in the pgAdmin tool with quotes. This must be the reason why DDLutils throws the ModelException. This is the exception thrown: org.apache.ddlutils.model.ModelException: The index ad_sequence_no_key in table ad_sequence_no references the undefined column year at org.apache.ddlutils.model.Database.initialize(Database.java:393) at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:484) at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:432) at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1884) at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1869) at org.openbravo.ddl.Test.main(Test.java:52) The database was previously populated with the following XML:: ?xml version=1.0? !DOCTYPE database SYSTEM http://db.apache.org/torque/dtd/database; database name=openbravo-tests table name=ad_sequence_no column name=ad_sequence_id primaryKey=false required=true type=NUMERIC size=10 autoIncrement=false/ column name=year primaryKey=false required=true type=VARCHAR size=4 default= autoIncrement=false/ column name=ad_client_id primaryKey=false required=true type=NUMERIC size=10 autoIncrement=false/ unique name=ad_sequence_no_key unique-column name=ad_sequence_id/ unique-column name=year/ /unique /table /database And in the pgAdmin tool, the table definition is: -- Table: ad_sequence_no -- DROP TABLE ad_sequence_no; CREATE TABLE ad_sequence_no ( ad_sequence_id numeric(10) NOT NULL, year varchar(4) NOT NULL DEFAULT ''::character varying, ad_client_id numeric(10) NOT NULL ) WITHOUT OIDS; ALTER TABLE ad_sequence_no OWNER TO tad; -- Index: ad_sequence_no_key -- DROP INDEX ad_sequence_no_key; CREATE UNIQUE INDEX ad_sequence_no_key ON ad_sequence_no USING btree (ad_sequence_id, year); -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.
[jira] Updated: (DDLUTILS-178) ModelException thrown when reading columns with special names
[ https://issues.apache.org/jira/browse/DDLUTILS-178?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Adrián Romero updated DDLUTILS-178: Attachment: remove-quotes.patch This is a quick and dirty patch that fixes the problem for PostgreSQL ModelException thrown when reading columns with special names --- Key: DDLUTILS-178 URL: https://issues.apache.org/jira/browse/DDLUTILS-178 Project: DdlUtils Issue Type: Bug Components: Core - PostgreSql Affects Versions: 1.0 RC2 Environment: PostgreSQL 8.2 on Ubuntu 7.04. Java 6. Reporter: Adrián Romero Assignee: Thomas Dudziak Attachments: remove-quotes.patch Trying to execute the method readModelFromDatabase a ModelException is thrown. The database has only one table with a field named year. If this field is renamed by another name it works ok. The field year appears in the pgAdmin tool with quotes. This must be the reason why DDLutils throws the ModelException. This is the exception thrown: org.apache.ddlutils.model.ModelException: The index ad_sequence_no_key in table ad_sequence_no references the undefined column year at org.apache.ddlutils.model.Database.initialize(Database.java:393) at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:484) at org.apache.ddlutils.platform.JdbcModelReader.getDatabase(JdbcModelReader.java:432) at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1884) at org.apache.ddlutils.platform.PlatformImplBase.readModelFromDatabase(PlatformImplBase.java:1869) at org.openbravo.ddl.Test.main(Test.java:52) The database was previously populated with the following XML:: ?xml version=1.0? !DOCTYPE database SYSTEM http://db.apache.org/torque/dtd/database; database name=openbravo-tests table name=ad_sequence_no column name=ad_sequence_id primaryKey=false required=true type=NUMERIC size=10 autoIncrement=false/ column name=year primaryKey=false required=true type=VARCHAR size=4 default= autoIncrement=false/ column name=ad_client_id primaryKey=false required=true type=NUMERIC size=10 autoIncrement=false/ unique name=ad_sequence_no_key unique-column name=ad_sequence_id/ unique-column name=year/ /unique /table /database And in the pgAdmin tool, the table definition is: -- Table: ad_sequence_no -- DROP TABLE ad_sequence_no; CREATE TABLE ad_sequence_no ( ad_sequence_id numeric(10) NOT NULL, year varchar(4) NOT NULL DEFAULT ''::character varying, ad_client_id numeric(10) NOT NULL ) WITHOUT OIDS; ALTER TABLE ad_sequence_no OWNER TO tad; -- Index: ad_sequence_no_key -- DROP INDEX ad_sequence_no_key; CREATE UNIQUE INDEX ad_sequence_no_key ON ad_sequence_no USING btree (ad_sequence_id, year); -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.