Thread: Buildfarm: Test errors - StackOverFlowError
Hi, The buildfarm started failing Friday night/Saturday morning with test failures. The tests are breaking when running the JDK 1.4 build, but this does not mean it's only a 1.4 problem (though it could be!) as the build aborts before running 1.5 and 1.6. The failures are against all 4 PG branches I build against - 8.4, 9.0, 9.1 and HEAD. From the logs there appears to be an infinite loop ulimately dying in a StackOverflowError. The logs are the basically the same for all PG branches so see http://www.pgbuildfarm.org/cgi-bin/show_stage_log.pl?nm=piapiac&dt=2011-10-03%2005%3A00%3A01&stg=jdbc-test for the full trace. [junit] java.lang.StackOverflowError [junit] at org.postgresql.jdbc2.TypeInfoCache.getPGType(TypeInfoCache.java:270) [junit] at org.postgresql.jdbc2.TypeInfoCache.getSQLType(TypeInfoCache.java:176) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getSQLType(AbstractJdbc2ResultSet.java:2776) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1920) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getFixedString(AbstractJdbc2ResultSet.java:2736) [junit] at org.postgresql.jdbc3g.Jdbc3gResultSet.createArray(Jdbc3gResultSet.java:59) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getArray(AbstractJdbc2ResultSet.java:325) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.internalGetObject(AbstractJdbc2ResultSet.java:156) [junit] at org.postgresql.jdbc3.AbstractJdbc3ResultSet.internalGetObject(AbstractJdbc3ResultSet.java:38) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1921) [junit] at org.postgresql.jdbc2.AbstractJdbc2ResultSet.getFixedString(AbstractJdbc2ResultSet.java:2736) <snip> Unfortunately I was away for the weekend and didn't notice the breakage until this morning. I don't have time to investigate and create a fix right now but I'll look into it later today if no one else has had time to resolve it in the meantime. Regards, -- Mike Fowler Registered Linux user: 379787 The Call for Papers for is open for FLOSS UK, contact postgresql2012 AT flossuk DOT org for details.
On 03/10/11 16:01, I wrote: > > [junit] java.lang.StackOverflowError > [junit] at > org.postgresql.jdbc2.TypeInfoCache.getPGType(TypeInfoCache.java:270) > [junit] at > org.postgresql.jdbc2.TypeInfoCache.getSQLType(TypeInfoCache.java:176) > [junit] at > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getSQLType(AbstractJdbc2ResultSet.java:2776) > [junit] at > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getString(AbstractJdbc2ResultSet.java:1920) > [junit] at > org.postgresql.jdbc2.AbstractJdbc2ResultSet.getFixedString(AbstractJdbc2ResultSet.java:2736) > [junit] at > org.postgresql.jdbc3g.Jdbc3gResultSet.createArray(Jdbc3gResultSet.java:59) > [junit] at The tests run for 1.6 but not 1.5 or 1.4. Turns out some code has been added for the binary handling in Jdbc4Array and Jdbc4ResultSet that also needed to be added to Jdbc3Array, Jdbc3ResultSet, Jdbc3gArray and Jdbc3gReultSet. If you take out the different code in the 4 code you get the same StackOverflowError. The attached patch resolves this. Regards, -- Mike Fowler Registered Linux user: 379787 The Call for Papers for is open for FLOSS UK, contact postgresql2012 AT flossuk DOT org for details.