0

I was using in a Java EE application BIRT 2.5 to generate some reports, which were generated successfully. I finally had to upgrade to Birt 4.6.0-20160607. Unfortunately with the new version some errors rise during the generation of the reports from my application.

In detail, using the Birt runtime to generate the reports, following errors appear in the server log.

SEVERE [org.eclipse.birt.data.engine.odaconsumer] (default task-19) Cannot get ODA driver parameter metadata.: org.eclipse.birt.report.data.oda.jdbc.JDBCException: Cannot retrieve the parameter metadata. SQL error #1:ORA-00942: table or view does not exist

; java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist

at org.eclipse.birt.report.data.oda.jdbc.Statement.getParameterMetaData(Statement.java:937) at org.eclipse.datatools.connectivity.oda.consumer.helper.OdaQuery.getParameterMetaData(OdaQuery.java:1335)

I tried to debug but i could not find which table/view it cannot find. The generation of the report continues and lower in my logs a new error appears about over exceeding my default cursor number in the database (oracle 11g)

2017-01-17 18:23:22,850 SEVERE [org.eclipse.birt.data.engine.odaconsumer] (default task-13) Cannot get the result set metadata.: org.eclipse.birt.report.data.oda.jdbc.JDBCException: SQL statement does not return a ResultSet object. SQL error #1:ORA-01000: maximum open cursors exceeded

; java.sql.SQLException: ORA-01000: maximum open cursors exceeded

at org.eclipse.birt.report.data.oda.jdbc.Statement.executeQuery(Statement.java:482)

My current database cursor setting is set to 300 cursors. I increased it to 1000 but still i was receiving the same error.

All in all, the report is finally generated but only partially. There is always missing information in the generated report.

Note: On my application i am using ojdbc6. Trying also with ojdbc7 did not solve any of the issues mentioned above.

1) Are those two errors relevant with each other ?

2) Is there something we are missing maybe on the usage of the ojdbc/oda driver ?

assuna
  • 135
  • 1
  • 1
  • 8
  • Have you looked at http://stackoverflow.com/questions/12192592/java-sql-sqlexception-ora-01000-maximum-open-cursors-exceeded ? What happens if you call the same report from within the designer? – hvb Jan 18 '17 at 16:17
  • The problem could also be completely unrelated to your BIRT update. Maybe other sessions are using a lot of cursors. If I understand correctly, the maximum open cursors is a limit for the accumulated cursors of all sessions, not for a single session. – hvb Jan 18 '17 at 16:19
  • The error for the cursors exceed doesn't come from the application but from BIRT libraries: http://paste.ofcode.org/tqb5bcMJiMVD9gUkbuCZzp – assuna Jan 19 '17 at 11:19
  • The error *message* is from BIRT libraries. This is a symptom, but not necessarily the cause. – hvb Jan 19 '17 at 15:19
  • i found the problem it's in the design of the report. – assuna Jan 19 '17 at 16:00

0 Answers0