When using BW process to inserts a record into an Oracle using JDBC update activity. Timeout value is set to be 10 seconds. If the tables is locked, BWprocess will be hunging and no timeout error will be generated.

When using BW process to inserts a record into an Oracle using JDBC update activity. Timeout value is set to be 10 seconds. If the tables is locked, BWprocess will be hunging and no timeout error will be generated.

book

Article ID: KB0086593

calendar_today

Updated On:

Products Versions
TIBCO ActiveMatrix BusinessWorks -
Not Applicable -

Description

Resolution:
This is due to an oracle bug:
Oracle Bug No. 4459653
Problem statement:
STATEMENT.CANCEL() HANGS ON A DML STATEMENT AGAINST A LOCKED TABLE

If using BW 5.3.x, TIBCO Oracle Driver provided a property which can bypass this issue.
Please add "enablecanceltimeout=true" connection property to the connection url. For instance, jdbc:tibcosoftwareinc:oracle://localhost:1521;SID=ora9i;enablecanceltimeout=ture

Tibco datadirect driver did the job here, but this only works if using TIBCO driver.

KEYWORDS: JDBC, TIMEOUT, LOCK

Issue/Introduction

When using BW process to inserts a record into an Oracle using JDBC update activity. Timeout value is set to be 10 seconds. If the tables is locked, BWprocess will be hunging and no timeout error will be generated.