Question

I have a BIRT report that is invoked by a jsp page which passes the the Report Parameters to the BIRT report. Now when the Report is executed then BIRT fires a query to the DB for the data and successfully closes the connection after the query generates the result.

But for sometimes the DB holds the Connection made for the query (I have include a snapshot of PG_STAT_ACTIVITY for verification purpose). After that the BIRT Web Viewer generates an empty Report. Not only that all other BIRT reports in the package also stop working and generates Blank Web Viewer page (I have also included a snapshot of the Blank Web Viewer).

Any Help regarding BIRT connection problem will be appreciated.

Was it helpful?

Solution

The above problem was solved by optimization of various configuration Parameter at various level. First we need to know what is the avg. response time of the DB, because while fetching large amount of Data, the database may take long time while the viewer session(which is a sub part of Http Session by default) may be over. This directly results in the connection getting struck in the since the BIRT web Viewer session is over and nobody is available to take the response back from the DB. To avoid this viewer.session.timeout property of the Viewer property must be set properly(in my case I have set it to 1200 sec).Secondly Select the Data Source in Eclipse-BIRT IDE and in the Property Editor Set ODA Data Source->&Auto Commit property to true. This solved my problem, also if you are using Connection Pooling Middleware (like PgBouncer) then also check its configuration file and optimize it properly to handle Db connection related Issues.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top