Subject Re: [firebird-support] backup on amd64 restore on raspberry pi 3
Author Mark Rotteveel
On 24-8-2018 18:31, pablos@... [firebird-support] wrote:
> As I could backup and restore databases from and to firebird 3 on the
> same running platform, next step is apply it to raspberry pi.
>
> I'm getting the following when restoring the same backup file wich
> should be "transportable by default" :
>
> gbak:opened file  mybackup-file.fbk
> gbak:transportable backup -- data in XDR format
> gbak:        backup file is compressed
> gbak:backup version is 10
> gbak:created database mydb, page_size 8192 bytes
> gbak:started transaction
> ...
> gbak:    restoring index RDB$PRIMARY1
> gbak:restoring data for table PLG$SRP
> gbak:   2 records restored
> gbak:    restoring index PK_TABLALOG
> gbak:    restoring index FK_TABLALOG_USUARIO
> gbak:restoring data for table TABLALOG
> gbak: ERROR:message length error (encountered -31984, expected 33552)
> gbak: ERROR:gds_$send fa iled
> gbak:Exiting before completion due to errors
>
> Are format in these platforms compatible ? Both are, at least, little
> endian.

It looks like a mix up of signed and unsigned 16 bit ints. -31984 is a
signed 16 bit int as hex 0x8310, and as unsigned 16 bit int, that is 33552.

> Restoring file from v2.5 backup, gets the same problem .
>
> Maybe I stop amd64 server and copy live db to rpi ?

Probably not. The database can use platform specific representations of
data, and index values depend on the installed ICU version.

--
Mark Rotteveel