db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kathey Marsden (JIRA)" <j...@apache.org>
Subject [jira] Updated: (DERBY-4264) highly intermittent java.lang.ClassCastException: [[Lorg.apache.derby.iapi.store.access.Qualifier; incompatible with org.apache.derby.iapi.types.DataValueDescriptor doing simple select
Date Wed, 10 Jun 2009 22:03:07 GMT

     [ https://issues.apache.org/jira/browse/DERBY-4264?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Kathey Marsden updated DERBY-4264:
----------------------------------

    Attachment: acf81e0010x0121xcb69x9b94x0000000eb0100.java

Attached is the decompiled class from the query.  The methods being invoked  are e1(), e2(),
e3() and e4() which all return 
return datavaluefactory.getCharDataValue(string, null);
for the four different strings in our predicates.

There's no place in this code where a Qualifier[][] would be returned.

Looking at the places where we return a Qualifier[][] in generated code, the most likely suspect
to me is in PredicateList.generateQualifiers() 

I do see us going through that method with our query but don't immediately see that  generated
code in the decompiled class. I will investigate further ...


> highly intermittent java.lang.ClassCastException: [[Lorg.apache.derby.iapi.store.access.Qualifier;
incompatible with org.apache.derby.iapi.types.DataValueDescriptor doing simple select
> ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4264
>                 URL: https://issues.apache.org/jira/browse/DERBY-4264
>             Project: Derby
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 10.2.2.0
>         Environment: Embedded Derby  10.2.2.0 - (485682)
> z/OS  J2RE 1.5.0 IBM z/OS build pmz31dev-20081210 (SR9-0)
>            Reporter: Kathey Marsden
>         Attachments: acf81e0010x0121xcb69x9b94x0000000eb0100.java
>
>
> I got a report from a user for a highly intermittent ClassCastException doing a select.
 Below is the stack trace:
> java.lang.ClassCastException: 
> [[Lorg.apache.derby.iapi.store.access.Qualifier; incompatible 
> with org.apache.derby.iapi.types.DataValueDescriptor
> 	at 
> org.apache.derby.impl.sql.execute.GenericQualifier.getOrderable(
> Unknown Source)
> 	at 
> org.apache.derby.impl.sql.execute.NoPutResultSetImpl.clearOrdera
> bleCache(Unknown Source)
> 	at 
> org.apache.derby.impl.sql.execute.BulkTableScanResultSet.openSca
> nController(Unknown Source)
> 	at 
> org.apache.derby.impl.sql.execute.TableScanResultSet.openCore(Un
> known Source)
> 	at 
> org.apache.derby.impl.sql.execute.BulkTableScanResultSet.openCor
> e(Unknown Source)
> 	at 
> org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl.open(U
> nknown Source)
> 	at 
> org.apache.derby.impl.sql.GenericPreparedStatement.execute(Unkno
> wn Source)
> 	at 
> org.apache.derby.impl.jdbc.EmbedStatement.executeStatement(Unkno
> wn Source)
> 	at org.apache.derby.impl.jdbc.EmbedStatement.execute(Unknown 
> Source)
> 	at 
> org.apache.derby.impl.jdbc.EmbedStatement.executeQuery(Unknown 
> Source)
> I don't have a reproduction yet but have some information on the schema and query that
occasionally fails:  The data here is contrived, I don't know the actual data in the table
at the time of the failure.  The column names have changed, but represent the same types.
> CREATE TABLE "APP"."RESOURCE" 
> 	(
> 	"AUUID" CHAR(36) NOT NULL, 
> 	"BUUID" CHAR(36) NOT NULL, 
> 	"CUUID" CHAR(36) NOT NULL, 
> 	"DUUID" CHAR(36) NOT NULL, 
> 	"SECTION" CHAR(6) NOT NULL, 
> 	"TYPE" CHAR(48) NOT NULL, 
> 	"LASTUPDATE" TIMESTAMP NOT NULL
> 	);
> ALTER TABLE "APP"."RESOURCE" ADD CONSTRAINT "SQL060817095529130" PRIMARY KEY ("AUUID",
"BUUID", "SECTION");
> -- Not sure of the actual data.  This data was made up so the query would get a match.
> INSERT INTO RESOURCE VALUES ('3b2c2edc-1401-0000-0080-c38634aef3ba', '3b2c2edc-1401-0000-0080-c38634aef3bb',
'2be1347d-2001-0000-0080-8cd524f0d034', '2be1347d-2001-0000-0080-8cd524f0d033', 'GENRAL',
'NodeType', CURRENT_TIMESTAMP);
> SELECT * FROM RESOURCE WHERE 
> 	SECTION='GENRAL' AND 
> 	TYPE='NodeType' AND 
> 	DUUID='2be1347d-2001-0000-0080-8cd524f0d033' AND 
> 	BUUID='3b2c2edc-1401-0000-0080-c38634aef3bb';
> This has happened to just one user on z/OS with J2RE 1.5.0 IBM z/OS build pmz31dev-20081210
(SR9-0).  Other users running the same application on the same versions have not seen this
issue.  This particular user has disabled the functionality causing the problem for now, so
I am hoping we can glean some information from code inspection and debugging this sample query
to see where the cast might go wrong.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message