This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 102684 - Regression: Inbound holds up database
Summary: Regression: Inbound holds up database
Status: RESOLVED FIXED
Alias: None
Product: soa
Classification: Unclassified
Component: Binding Components (show other bugs)
Version: 6.x
Hardware: All All
: P1 blocker (vote)
Assignee: Narayana Pedapudi
URL:
Keywords: REGRESSION, RELNOTE
Depends on:
Blocks:
 
Reported: 2007-04-27 00:47 UTC by rpoon
Modified: 2007-05-28 11:29 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Zip file for needed projects (190.41 KB, application/octet-stream)
2007-04-27 00:48 UTC, rpoon
Details
Inbound_outboundProjects. (141.52 KB, application/octet-stream)
2007-04-27 07:24 UTC, Narayana Pedapudi
Details
TestTable (859 bytes, application/octet-stream)
2007-04-27 07:25 UTC, Narayana Pedapudi
Details
buildversion (38.01 KB, application/octet-stream)
2007-04-27 07:25 UTC, Narayana Pedapudi
Details
server log (334.51 KB, text/plain)
2007-04-29 04:01 UTC, rpoon
Details
Tested Project (112.99 KB, application/octet-stream)
2007-05-03 06:05 UTC, Narayana Rallabandi
Details
TableStructure (832 bytes, application/octet-stream)
2007-05-03 06:06 UTC, Narayana Rallabandi
Details

Note You need to log in before you can comment on or make changes to this bug.
Description rpoon 2007-04-27 00:47:40 UTC
Build:
  Hula System Build
     http://bits.nbextras.org/netbeans/6.0/nightly/200704230000/installers/
       netbeans-6.0-nightly-200704230000-full-windows.exe

  Runtime System SDK b14
    http://javaweb.sfbay/java/re/javaeesdk/5.0_03/promoted/preview2/b14/bundles/
      java_app_platform_sdk-5_03-preview2-bin-b14-windows-24_apr_2007.exe

==============================================================

With the above build combination, the JDBC Inbound no longer works as 
expected.  Once an Inbound project has run, it seems to hold up the database 
table, un-deploy the project does not seem to release the polled records.

This prevents any successive runs (i.e. run other outbound projects)

The is a regression bug.  I retried the same with Beta release build "java-
tools-bundle-u3-preview-gavotte_beta-070220-windows.exe" and the problem does 
not exists.  The Inbound works fine with Beta build.

To reproduce the problem:

1) Use the attached "jdbcbc500_Derby_init_BPEL", change 'Customer_table' WSDL 
to connection to Oracle (jndiName) and Run the 
corresponding "jdbcbc500_Derby_init_Jbi" project.
    - This project is to inititalize the 'Customer' table.
2) Once the above project is run successfully, undeploy it (optional)
3) Now do the same for the "jdbcbc500_Derby_BPEL" inbound project (as in step 1 
above).
4) Run the Inbound (notice that records successfully retrieved).
5) Now, undeploy the inbound project.
6) Re-run 'jdbcbc500_Derby_init_Jbi' project.

Notice that the database table 'Customer' is now hold up and cannot be used.

The Work around is to shutdown the Server App and bounce the database!!!

(see attached projects)
Comment 1 rpoon 2007-04-27 00:48:22 UTC
Created attachment 41779 [details]
Zip file for needed projects
Comment 2 rpoon 2007-04-27 00:49:20 UTC
Notice that this problem also applies to other databases as well.
Comment 3 Venkat Srinivasan 2007-04-27 02:05:21 UTC
Please look into it.
Comment 4 Narayana Pedapudi 2007-04-27 07:24:24 UTC
Created attachment 41790 [details]
Inbound_outboundProjects.
Comment 5 Narayana Pedapudi 2007-04-27 07:25:26 UTC
Created attachment 41791 [details]
TestTable
Comment 6 Narayana Pedapudi 2007-04-27 07:25:54 UTC
Created attachment 41792 [details]
buildversion
Comment 7 Narayana Pedapudi 2007-04-27 07:27:51 UTC
I have created "TestInbound" jdbc inbound project which polls from "TestTable",
connecting to the oracle database url is here
"jdbc:datadirect:oracle://129.153.167.195:1521;SID=OracleDB" using datadirect
drivers. Built deployed and got working fine, next created another project
"TestInsert" which inserts data into "TestTable" built deployed it and got the
output properly. Again tried inbound project and it is working fine.

The build version I am using is..."NetBeans IDE Dev (Build 070424)" and the
latest runtime bits.
Attaching the projects
1. Inbound and outbound projects (Inbound_outboundProjects.zip)
2. TestTable Grab (TestTable.zip)
3. BuildVersion (buildversion.zip)

Please test with the latest build, and also i did not understand what do you
mean by ---"it seems to hold up the database 
table, un-deploy the project does not seem to release the polled records."

If you could still repeat the problem, with the latest build.
Please attach below details along with the project
1. server log
2. Database connection details which you are testing and provide the privilleges
to connect.
Comment 8 rpoon 2007-04-29 03:59:43 UTC
The problem is still reproducible with latest Milestone 9 build:

  NetBeans 6.0 Enterprise Pack – Milestone 9

     
http://bits.netbeans.org/netbeans/6.0/milestones/m9/200704270000/installers/
        NetBeans IDE 6.0 Preview (M9) Full Installer.exe

===============================================================

Please try with the provided projects and follow the indicated steps.

The problem occurs when an outbound project is trying to delete the polled 
records (by the Inbound project).

Once this occurs, user will no longer be able to cleanup (delete) the polled 
records (either via re-run the outbound project or manually run the delete 
statement outside of NetBeans IDE (sqlplus).  The polled records are hold up.  
The only way to get around this is to bounce the database.

The driver that I used is a SeeBeyond branded DataDirect driver for
Oralce.

  URL: jdbc:SeeBeyond:oracle://rpoon-d600xp:1521;SID=orcl

I have ruled out that it is a driver related problem, since the problem does 
not exist with earlier build (running the same projects with the same driver).

Please let me know if you are still unable to reproduce the problem.
Comment 9 rpoon 2007-04-29 04:00:27 UTC
Please see attached server.log file.
Comment 10 rpoon 2007-04-29 04:01:15 UTC
Created attachment 41936 [details]
server log
Comment 11 Alexei Mokeev 2007-04-30 09:04:01 UTC
How serious is this for M9 ?
Is it Milestone 9 stopper ?
Comment 12 lchang 2007-05-01 21:40:47 UTC
This bug will not be fixed for the Preview release, but will need to be added 
to the release notes, and fixed before FCS
Comment 13 Annette Wegscheider 2007-05-01 23:28:29 UTC
Please add a clear description and workaround that can be used in the release notes.
Comment 14 rpoon 2007-05-01 23:53:09 UTC
As indicated below, the Work around is to shutdown the Server App and bounce 
the database!
Comment 15 Annette Wegscheider 2007-05-02 01:12:05 UTC
Issue added to release notes as follows:
Issue #102684: JDBC BC inbound messages prevent deletion of polled records from
a database. 
Description: After the JDBC BC processes an inbound message, the records in the
database that the JDBC was polling cannot be deleted.
Workaround: Shut down and restart the Application Server to restart the database.

Comment 16 Narayana Rallabandi 2007-05-03 06:05:39 UTC
Created attachment 42077 [details]
Tested Project
Comment 17 Narayana Rallabandi 2007-05-03 06:06:56 UTC
Created attachment 42078 [details]
TableStructure
Comment 18 Narayana Rallabandi 2007-05-03 06:08:26 UTC
Tested the attached project in "NetBeans IDE 6.0 Preview (M9, build 070501)"
It is working fine. The problem seems to be with the build.
Comment 19 rpoon 2007-05-03 22:16:12 UTC
Still failed with latest m9 build:
   http://bits.netbeans.org/download/6.0/milestones/m9/200705021220/installers/

Please do try to delete the polled records with either another outbound project 
or by Oracle sqlplus.

Please contact me if you still not able to reproduce the problem.
Comment 20 Narayana Pedapudi 2007-05-28 11:29:17 UTC
I have downloaded the latest glassfish and tested the project end to end, it
works  fine for me. I suspect the connection pool creation within your glassfish. 
You have attached two projects in that the inbound project is XAEnabled and the
outbound project is Non XA. So it is implicit that you have to use XA connection
pool. (Hope you are creating XA Connection pool). And also importantly you need
to set "allow-non-component-callers" property to "true". while creating the
connection pool.

For your reference giving below the connection pool info which i have created in
  glassfish
Please find the connection poll properties from domain.xml

 <jdbc-connection-pool allow-non-component-callers="true"
associate-with-thread="false" connection-creation-retry-attempts="0"
connection-creation-retry-interval-in-seconds="10"
connection-leak-reclaim="false" connection-leak-timeout-in-seconds="0"
connection-validation-method="auto-commit"
datasource-classname="com.ddtek.jdbcx.oracle.OracleDataSource"
fail-all-connections="false" idle-timeout-in-seconds="300"
is-connection-validation-required="false" is-isolation-level-guaranteed="false"
lazy-connection-association="false" lazy-connection-enlistment="false"
match-connections="false" max-connection-usage-count="0" max-pool-size="32"
max-wait-time-in-millis="60000" name="OracleDSXALocal"
non-transactional-connections="false" pool-resize-quantity="2"
res-type="javax.sql.XADataSource" statement-timeout-in-seconds="-1"
steady-pool-size="8" validate-atmost-once-period-in-seconds="0"
wrap-jdbc-objects="false">
      <property name="user" value="scott"/>
      <property name="port" value="1521"/>
      <property name="networkProtocol" value="tcp"/>
      <property name="sid" value="app"/>
      <property name="databaseName" value="app"/>
      <property name="serverName" value="129.158.224.96"/>
      <property name="url"
value="jdbc:datadirect:oracle://129.158.224.96:1521;SID=APP"/>
      <property name="password" value="app"/>
    </jdbc-connection-pool>