Subject Re: Limbo transactions numbers
Author Fabiano
This is probably an hex conversion problem.

The number returned by jaybird (1089469460) in hex is 40EFFC14.
The number returned by gfix (4255740) in hex is 40EFFC.

So i presume jaybird is taking an extra byte from somewhere. Can someone confirm this?

BTW, i´m looking at rdb$transactions table, and it seems i can take limbo transactions and all the information to do a two-phase recovery from this table and the blob field containing the information about the transaction.

Although i could decode most information from this field, do someone have some official documentation about its format?

Regards,

Fabiano



--- In Firebird-Java@yahoogroups.com, "Fabiano" <fabiano@...> wrote:
>
> Hi,
>
> The code below:
>
> FBMaintenanceManager mm = new FBMaintenanceManager("PURE_JAVA");
> mm.setHost("xxxx");
> mm.setPort(3050);
> mm.setDatabase("xxxx");
> mm.setUser("sysdba");
> mm.setPassword("xxxx");
> mm.setLogger(System.out);
> mm.listLimboTransactions();
>
> produces this output:
>
> 1089469460
>
> While the command below, executed in the same database:
>
> gfix -list xxxx:xxxx -user sysdba -pass xxxx
>
> produces this output:
>
> Transaction 4255740 is in limbo.
> Multidatabase transaction:
> Host Site: REPLIC-ES
> Transaction 4255740
> has been prepared.
> Remote Site: <removed>
> Database Path: <removed>
> Host Site: REPLIC-ES
> Transaction 4966552
> has been rolled back.
> Remote Site: <removed>
> Database Path: <removed>
> Automated recovery would rollback this transaction.
>
> Why is the transaction number different in jaybird and gfix?
>
> Regards,
>
> Fabiano
>