Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 352890

Summary: JNDI Inconsistencies using WebSphere and BIRT 2.6.2 - XP and Linux WAS
Product: z_Archived Reporter: Len Burt <lenburt>
Component: BIRTAssignee: Birt-DataAccess <Birt-DataAccess-inbox>
Status: NEW --- QA Contact: Maggie Shen <lshen>
Severity: normal    
Priority: P3 CC: bluesoldier
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: Windows XP   
Whiteboard:

Description Len Burt CLA 2011-07-22 12:42:45 EDT
Build Identifier: <property name="createdBy">Eclipse BIRT Designer Version 2.6.2.r262_v20110209 Build &lt;2.6.2.v20110214-1523></property>




Hello out there -- this may be a very obscure problem but it is keeping us from using pooled data source functionality within WebSphere for our 50+ reports.

This occurs in the BIRT Viewer on both XP and Linux - WAS 7.x - Oracle 11g.

A handful of our reports fail with a variety of different stack traces (one shown below) when we use a JNDI data source under WAS 7.x against Oracle 11g. The same reports work fine when we have an 'embedded' data source pointing to the same data. A few other details:

- this occurs with reports that use different tables (so no one table is to blame)
- all reports are fine until we get 500+ rows in the tables (this indicates some sort of buffering or caching issue i guess)
- This occurs with a single user so it is not a WAS connection pooling issue.
- there are no errors throw to the WebSphere logs

Here is a link to details in the Forum:

http://www.birt-exchange.org/org/forum/index.php/topic/22939-websphere-jndi-inconsistencies-with-2-6-2/page__pid__80471__st__0&#entry80471



Reproducible: Always

Steps to Reproduce:
1. Get more than 1000+ rows in one of several tables against which our reports are built
2. Run the report using the JNDI data source - stack trace is presented
3. Change the data source in the report to a 'native' data source -- the report works fine.
Comment 1 Len Burt CLA 2011-07-28 18:54:15 EDT
7/28 -- it seems that there are two separate issues; one is some sort of date parsing problem.  When date the problem occurs, a msg like this is written:
Throwable occurred: org.eclipse.birt.data.engine.core.DataException: A BIRT exception occurred. See next exception for more information.
Can not convert the value of 2011-07-28 16:08:51.999971 to Date type.
	at org.eclipse.birt.data.engine.core.DataException.wrap(DataException.java:118)

If i delete this row, the report works fine.  It seems that the upper boundaries of the ms portion of the timestamp field are causing the issue (e.g. 999686, 999699, etc.)

The other problem seem different but i will continue to try and isolate.
Comment 2 Len Burt CLA 2011-08-03 09:46:26 EDT
Update below:


The root cause of the failures turns out to be the inability of BIRT code to properly round up the ms portion of the timestamp fields that we use on several tables.  When you use a timestamp field, by default you get 6 digits of precision.  The problem occurs when BIRT has a ‘5’ in the 4th digit of precision – I assume it tries to ‘round up’ and it fails badly.  

Example:

This works: 01-AUG-11 12.11.03.999499000 PM
This fails    : 01-AUG-11 12.11.03.999500000 PM
Comment 3 Xiaoying Gu CLA 2011-08-19 05:55:08 EDT
(In reply to comment #2)
> Update below:
> 
> 
> The root cause of the failures turns out to be the inability of BIRT code to
> properly round up the ms portion of the timestamp fields that we use on several
> tables.  When you use a timestamp field, by default you get 6 digits of
> precision.  The problem occurs when BIRT has a ‘5’ in the 4th digit of
> precision – I assume it tries to ‘round up’ and it fails badly.  
> 
> Example:
> 
> This works: 01-AUG-11 12.11.03.999499000 PM
> This fails    : 01-AUG-11 12.11.03.999500000 PM

Hi,

so would you please attach such a report that contains a timestamp field ? 

I make a datetime data item and preview. It works both your examples. This might not be your case. Thanks.