Subject | Re: [IBO] Obtaining a Firebird transaction number |
---|---|
Author | garethm |
Post date | 2013-03-27T00:52:08Z |
Hi Jason,
I unfortunately have run in to two problems with the TIB_StatusDialog:
1. My transactions don't appear anywhere in the dialog. They are normally created at run-time as required, and are not attached to any particular visual component. In other words, they are created using TIB_Transaction.Create( nil ), and then freed once the transaction is complete. By passing my data module to the constructors of the transaction and statement objects, I can get them to show up in the status dialog. Doing so is not ideal as it causes issues when the application shuts down, but I can live with these for debugging purposes.
2. I can't see the Firebird transaction ID anywhere on the status form. For the transactions I can see, the following is available (with sample values in brackets):
- Name [trddbMain]
- Class [TIB_TransactionDefault (Instance=$0B192770)]
- Owner [ddbMain: TIBODatabase]
- Session [$0B1929B0 (IBO_DefaultSession)]
- Started [False]
- Isolation [Read-Committed]
- Post Pending Count [0]
- Paused [False]
- Pause Disabled [False]
- AutoCommit [True]
- State [None]
- TimeActive []
- Connections [1 (Active=1)]
- Datasets [0 (Active=0) Max_Buffer=0]
- Statements [0 (Active=0)]
This list unfortunately includes neither the transaction handle nor the Firebird transaction id.
I also had a look at the members of the TIB_Transaction class and didn't see anything there that appeared to contain the information I'm looking for.
Regards,
Gareth Marshall
I unfortunately have run in to two problems with the TIB_StatusDialog:
1. My transactions don't appear anywhere in the dialog. They are normally created at run-time as required, and are not attached to any particular visual component. In other words, they are created using TIB_Transaction.Create( nil ), and then freed once the transaction is complete. By passing my data module to the constructors of the transaction and statement objects, I can get them to show up in the status dialog. Doing so is not ideal as it causes issues when the application shuts down, but I can live with these for debugging purposes.
2. I can't see the Firebird transaction ID anywhere on the status form. For the transactions I can see, the following is available (with sample values in brackets):
- Name [trddbMain]
- Class [TIB_TransactionDefault (Instance=$0B192770)]
- Owner [ddbMain: TIBODatabase]
- Session [$0B1929B0 (IBO_DefaultSession)]
- Started [False]
- Isolation [Read-Committed]
- Post Pending Count [0]
- Paused [False]
- Pause Disabled [False]
- AutoCommit [True]
- State [None]
- TimeActive []
- Connections [1 (Active=1)]
- Datasets [0 (Active=0) Max_Buffer=0]
- Statements [0 (Active=0)]
This list unfortunately includes neither the transaction handle nor the Firebird transaction id.
I also had a look at the members of the TIB_Transaction class and didn't see anything there that appeared to contain the information I'm looking for.
Regards,
Gareth Marshall
--- In IBObjects@yahoogroups.com, "IBO Support List" <supportlist@...> wrote:
>
> You should look into using the TIB_StatusDialog form.
> It's similar to the TIB_MonitorDialog form.
>
> Jason
>
>
> -----Original Message-----
> From: IBObjects@yahoogroups.com [mailto:IBObjects@yahoogroups.com] On Behalf
> Of garethm
> Sent: Monday, March 25, 2013 12:30 AM
> To: IBObjects@yahoogroups.com
> Subject: [IBO] Obtaining a Firebird transaction number
>
> Hi,
>
> I am receiving an error which indicates that I have an update that conflicts
> with a concurrent update. The error messages includes the following:
> "concurrent transaction number is 204540".
>
> When using a TIB_Monitor, IBObjects reports the transaction handle number,
> which seems to be related to the order in which transactions on a given
> connection are created or started, but doesn't tie back to the transaction
> number supplied by Firebird in this message.
>
> Is there any way to get the Firebird transaction number for the various
> TIB_Transaction objects I have in my application so that I can track down
> where the conflict is coming from?
>
> Regards,
> Gareth Marshall
>
>
>
> ------------------------------------
>
> ___________________________________________________________________________
> IB Objects - direct, complete, custom connectivity to Firebird or InterBase
> without the need for BDE, ODBC or any other layer.
> ___________________________________________________________________________
> http://www.ibobjects.com - your IBO community resource for Tech Info papers,
> keyword-searchable FAQ, community code contributions and more !
> Yahoo! Groups Links
>