For now, we have solved our blocking problems by turning off some foreign
keys. This is ok, but we would like to put them back in the database. The
good thing is that I know orion is considering both calls part of the same
transaction because if I set the context to rollbackOnly it will rollback
both statements. But they do block each other if we have the foreign key:

Statement 1: Via JDBC: lookup(jdbc/CitySolutionsDS) and use the connection
to delete child
Statement 2: findByPrimaryKey and call bean.remove()

My Session bean is declared with the following resource for the datasource

<resource-ref>
<res-ref-name>jdbc/CitySolutionsDS</res-ref-name>
        <res-type>javax.sql.DataSource</res-type>
        <res-auth>Container</res-auth>
</resource-ref>

The entity bean uses jdbc/CitySolutionsDS for the datasource (declared in
orion-ejb-jar.xml)

And the datasource is declared as:

<data-source
        class="com.evermind.sql.ConnectionDataSource"
        name="CitySolutionsDataSource"
        location="jdbc/CitySolutionsCoreDS"
        ejb-location="jdbc/CitySolutionsDS"
        xa-location="jdbc/xa/CitySolutionsXADS"
        connection-driver="oracle.jdbc.driver.OracleDriver"
        username="CITYSOLUTIONS"
        password="none"
        url="jdbc:oracle:thin:@172.16.66.151:1521:ORCL"
        inactivity-timeout="120"
        max-connections="10"
        min-connections="5"
/>

Is there something wrong (or not good) in this declaration?

Thanks

Eduardo

Reply via email to