$FreeBSD$ This patch allows JBoss to correctly create tables when using the auto-increment feature with Postgresql. diff -r -u ./server/src/etc/conf/default/standardjbosscmp-jdbc.xml /tmp/jboss-4.0.0-src/server/src/etc/conf/default/standardjbosscmp-jdbc.xml --- ./server/src/etc/conf/default/standardjbosscmp-jdbc.xml Thu Sep 16 03:48:58 2004 +++ /tmp/jboss-4.0.0-src/server/src/etc/conf/default/standardjbosscmp-jdbc.xml Sun Dec 5 22:21:18 2004 @@ -1169,7 +1169,7 @@ SELECT ?1 FROM ?2 WHERE ?3 ORDER BY ?4 FOR UPDATE CONSTRAINT ?1 PRIMARY KEY (?2) ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) - ?1 + ?1 serial t _ 32 @@ -1296,7 +1296,7 @@ SELECT ?1 FROM ?2 WHERE ?3 ORDER BY ?4 FOR UPDATE CONSTRAINT ?1 PRIMARY KEY (?2) ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) - ?1 + ?1 serial t _ 32 @@ -1423,7 +1423,7 @@ CONSTRAINT ?1 PRIMARY KEY (?2) ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) - ?1 IDENTITY + ?1 ?2 ?3 IDENTITY ALTER TABLE ?1 ADD COLUMN ?2 ?3 ALTER TABLE ?1 DROP COLUMN ?2 t @@ -1717,7 +1717,7 @@ ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) --> ALTER TABLE ?1 ADD INDEX (?3), ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) - ?1 auto_increment + ?1 ?2 ?3 auto_increment ALTER TABLE ?1 MODIFY ?2 ?3 t _ @@ -1857,7 +1857,7 @@ SELECT ?1 FROM ?2 with (updlock) WHERE ?3 ORDER BY ?4 CONSTRAINT ?1 PRIMARY KEY (?2) ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) - ?1 IDENTITY + ?1 ?2 ?3 IDENTITY ALTER TABLE ?1 ALTER COLUMN ?2 ?3 t _ @@ -1989,7 +1989,7 @@ SELECT ?1 FROM ?2 with (xlock) WHERE ?3 ORDER BY ?4 CONSTRAINT ?1 PRIMARY KEY (?2) ALTER TABLE ?1 ADD CONSTRAINT ?2 FOREIGN KEY (?3) REFERENCES ?4 (?5) - ?1 IDENTITY + ?1 ?2 ?3 IDENTITY t _ 32 diff -r -u ./server/src/main/org/jboss/ejb/plugins/cmp/jdbc/JDBCStartCommand.java /tmp/jboss-4.0.0-src/server/src/main/org/jboss/ejb/plugins/cmp/jdbc/JDBCStartCommand.java --- ./server/src/main/org/jboss/ejb/plugins/cmp/jdbc/JDBCStartCommand.java Tue Sep 14 09:23:02 2004 +++ /tmp/jboss-4.0.0-src/server/src/main/org/jboss/ejb/plugins/cmp/jdbc/JDBCStartCommand.java Sun Dec 5 22:04:56 2004 @@ -916,14 +916,18 @@ // apply auto-increment template if(type.getAutoIncrement()[0]) { - String columnClause = SQLUtil.getCreateTableColumnsClause(type); JDBCFunctionMappingMetaData autoIncrement = manager.getMetaData().getTypeMapping().getAutoIncrementTemplate(); if(autoIncrement == null) { throw new IllegalStateException("auto-increment template not found"); } - String[] args = new String[]{columnClause}; + String[] args = new String[] + { + type.getColumnNames () [0], + type.getSQLTypes () [0], + type.getNotNull () [0] ? " not null " : "" + }; autoIncrement.getFunctionSql(args, sqlBuffer); } else