TIBCO BusinessWorks error: "Stream has already been closed SQL State: 99999, errorcode=17027".

TIBCO BusinessWorks error: "Stream has already been closed SQL State: 99999, errorcode=17027".

book

Article ID: KB0089830

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix BusinessWorks -
Not Applicable -

Description

Description:
TIBCO BusinessWorks throws "Stream has already been closed SQL State: 99999, errorcode=17027" error for wait / notify activities when using Oracle JBDC drivers.
Symptoms:
The BusinessWorks log contains the following error:

WaitNotifierDB4Impl.onMsgSQL Error: Stream has already been closed SQL State: 99999, errorcode=17027 at
com.tibco.pe.waitnotify.WaitNotifierDB4Impl.onMsg(Unknown Source) at
com.tibco.tibrv.TibrvListener.fire(TibrvListener.java:127) at
com.tibco.tibrv.TibrvQueue.timedDispatch(TibrvQueue.java:215) at
com.tibco.tibrv.TibrvDispatcher.run(TibrvDispatcher.java:117)caused by:
java.sql.SQLException: Stream has already been closed at oracle.jdbc.driver.LongRawAccessor.getBytes(LongRawAccessor.java:162) at oracle.jdbc.driver.OracleResultSetImpl.getBytes(OracleResultSetImpl.java:708) at
com.tibco.pe.waitnotify.WaitNotifierDB4Impl.onMsg(Unknown Source) at com.tibco.tibrv.TibrvListener.fire(TibrvListener.java:127) at
com.tibco.tibrv.TibrvQueue.timedDispatch(TibrvQueue.java:215) at
com.tibco.tibrv.TibrvDispatcher.run(TibrvDispatcher.java:117)
Cause:
An Oracle table has a LONGRAW field that, when referenced in a select statement, causes the error: "java.sql.SQLException: Stream has already been closed." If this field is removed, everything works. The Oracle JDBC driver automatically closes any pending inputstreams whenever another database access is made. Other JDBC drivers and the JDBC-ODBC bridge do not impose this restriction. This only affects queries where binary data is being returned.

Issue/Introduction

TIBCO BusinessWorks error: "Stream has already been closed SQL State: 99999, errorcode=17027".

Resolution

Switch to the Datadirect Oracle JDBC driver (TIBCO Database Drivers Supplement).