Subject Re: [firebird-support] Insert ot update statements locks a table and all other instances that try to run same statement are lcoked to
Author Mark Rotteveel
On 5-9-2014 19:48, doychin@... [firebird-support] wrote:
> I'm not sure it is locked table.
>
> What I'm looking for is idea or advice how to find what the real problem is.

I'd start with obtaining a thread dump of the application when it is
hanging. The stacktraces might hint at the cause. Also if you are using
Firebird 2.5, use the trace facility for logging the activity.

Also consider upgrading to Jaybird 2.2.5; I fixed several concurrency
bugs which could cause livelock or deadlock (although most of those were
in parts you aren't using).

Other than that: investigate your code to make sure it isn't using long
running transactions.

> My data source definition is this:
>
> <connection-factories>
> <tx-connection-factory>
> <jndi-name>PowerProDS</jndi-name>
> <xa-transaction/>
> <track-connection-by-tx/>
> <rar-name>jaybird-2.1.6.rar</rar-name>
> <connection-definition>javax.sql.DataSource</connection-definition>
> <config-property name="Database"
> type="java.lang.String">localhost/3050:powerpro</config-property>
> <user-name>sysdba</user-name>
> <password>masterkey</password>
> <config-property name="Encoding">UNICODE_FSS</config-property>
> ; <prepared-statement-cache-size>100</prepared-statement-cache-size>
> <min-pool-size>10</min-pool-size>
> <max-pool-size>50</max-pool-size>
> <metadata>
> <type-mapping>EuroPro</type-mapping>
> </metadata>
> </tx-connection-factory>
> </connection-factories>


--
Mark Rotteveel