[Solved] Split Database Read/write error: RowInputBinary

Discuss the database features
Post Reply
aporch
Posts: 3
Joined: Thu Aug 03, 2017 6:11 pm

[Solved] Split Database Read/write error: RowInputBinary

Post by aporch »

Good day everyone,

I´ve been using a split data base for almost 6 years now (I´ve done it flawlesly following the instructions in this forum), it has 2 tables, one small (siniestros) with 400 records, and the bigger one (Clientes2) would have around 2500 records. The other day after I´ve added a new record in the biggest one, everything went down, It have started throing the following erro :crazy: r:
SQL state: S1000
error :-467
Read/ write error (IO): RowInputBinary 13485904

command reporting the error is SELECT * FROM "Clientes2"

I´ve read many post but they figured out something alternative more than fixing the problem or they don´t show a solution that fits my one. I´ve tryed with the backup file but is also corrupt. I have rised the memory with xmx256 just it case. Same error shows up.

Did it happend to somebody?, It is a way to read or export the tables so I can create a new one populated with the old data?

Any advice will be appretiated. Thanks in advance.
Last edited by Hagar Delest on Thu Aug 10, 2017 10:41 pm, edited 1 time in total.
Reason: tagged [Solved].
OpenOffice 4.1.3 on windows 7 ultimate / jre 1.8.0_141 / hsql 2.4.0
UnklDonald418
Volunteer
Posts: 1544
Joined: Wed Jun 24, 2015 12:56 am
Location: Colorado, USA

Re: Split Database Read/write error: RowInputBinary

Post by UnklDonald418 »

There have been some reported compatibility issues when using Base with HSQLSB 2.4.0
Try using an earlier version.
If your problem has been solved, please edit this topic's initial post and add "[Solved]" to the beginning of the subject line
Apache OpenOffice 4.1.14 & LibreOffice 7.6.2.1 (x86_64) - Windows 10 Professional- Windows 11
aporch
Posts: 3
Joined: Thu Aug 03, 2017 6:11 pm

Re: Split Database Read/write error: RowInputBinary

Post by aporch »

Thanks for your advice UnklDonald418,

I´ve changed to hsqldb 2.3.4 & 2.3.3 but the error persist, I´ve also downloaded the newest jre 1.8.144 and tryed it with the 3 hsqldb versions and the same happen.

Is it any "size of table" that I should configure somewhere?. I was working on the db early that morning, changing some records and it was fine, everything happend after I added one record.
OpenOffice 4.1.3 on windows 7 ultimate / jre 1.8.0_141 / hsql 2.4.0
User avatar
Sliderule
Volunteer
Posts: 1278
Joined: Thu Nov 29, 2007 9:46 am

Re: Split Database Read/write error: RowInputBinary

Post by Sliderule »

Try opening your HSQL database outside of OpenOffice / LibreOffice Base. For example:
  1. HSQL Database Manager Swing
  2. HSQL SqlTool.jar
  3. SQLWorkBench/J http://www.sql-workbench.net/
Additional note: If you want, I can look at the database ( HSQL files only ) and see if I can open it. Of course, you will have to give me a way to get at the files, for example ( or whatever you named them ):
  1. mydb.script
  2. mydb.properties
  3. mydb.data
  4. mydb.backup
Sliderule
dreamquartz
Posts: 881
Joined: Mon May 30, 2011 4:02 am

Re: Split Database Read/write error: RowInputBinary

Post by dreamquartz »

aporch wrote:Good day everyone,

I´ve been using a split data base for almost 6 years now (I´ve done it flawlesly following the instructions in this forum), it has 2 tables, one small (siniestros) with 400 records, and the bigger one (Clientes2) would have around 2500 records. The other day after I´ve added a new record in the biggest one, everything went down, It have started throing the following erro :crazy: r:
SQL state: S1000
error :-467
Read/ write error (IO): RowInputBinary 13485904

command reporting the error is SELECT * FROM "Clientes2"

I´ve read many post but they figured out something alternative more than fixing the problem or they don´t show a solution that fits my one. I´ve tryed with the backup file but is also corrupt. I have rised the memory with xmx256 just it case. Same error shows up.

Did it happend to somebody?, It is a way to read or export the tables so I can create a new one populated with the old data?

Any advice will be appretiated. Thanks in advance.
Having the same problem.
Am running 2.4.0.
Trying to get back to 2.3.4, and when pointing at the hsqldb.jar of 2.3.4 via FreeHSQLBD (version 0.37 from Villeroy) I could open the database again.

Able to fire up Queries, but the popup shows.
Capture-4.PNG
Capture-4.PNG (8.2 KiB) Viewed 2852 times
Unable to get a result set.

When firing up a Form the popup shows multiple times.
Capture-5.PNG
However, the Form is (partially) working??? :(

Dream
LO 7.x, HSQLDB 2.7.x & Ubuntu 22.04 LTS.
aporch
Posts: 3
Joined: Thu Aug 03, 2017 6:11 pm

Re: Split Database Read/write error: RowInputBinary

Post by aporch »

Update:

Sliderule came to the rescue and did an excelent job recovering my DB :bravo: , I´m pasting his explanation on the job done:
The technique I used was to determine how far . . . how much data . . . could be read from table "Clientes2" before it encountered the error. I used that much data to create a NEW table with the data from the BAD table. I deleted the BAD table, and, renamed the NEW table with the name of "Clientes2". Additionally, when I copied the data . . . I did it into the NEW table with ID as an INTEGER, but, NOT as an IDENTITY. This way, the values of ID were not changed. I next implemented the IDENTITY to column ID.

Please note:
I did NOT open the HSQL database ( Version 2.4.0 ) with OpenOffice Base. I just worked to 'recover' the database contents. I will leave it to you to connect the two.

I also issued the command CHECKPOINT DEFRAG to reduce the size of the mydb04.data and mydb04.backup files.

HSQL User Guide wrote:
CHECKPOINT

checkpoint statement

<checkpoint statement> ::= CHECKPOINT [DEFRAG]

Closes the database files, rewrites the script file, deletes the log file and reopens the database.
If DEFRAG is specified, also shrinks the *.data file to its minimum size. CHECKPOINT DEFRAG time depends on the size of the database and can take a long time with huge databases.
A checkpoint on a multi-user database waits until all other sessions have committed or rolled back. While the checkpoint is in progress other sessions are kept waiting. Checkpoint does not close any sessions.


I created a new VIEW for you, name of: RECORDS_IN_DB. This view, when you OPEN it in Base, or define a Query as:

CODE: SELECT ALL EXPAND VIEW
Select * From RECORDS_IN_DB

will show the number of records in each table.
Just so you know, I opened the database file using SqlTool.jar from HSQL, as well as HSQL Database Manager Swing ( by double clicking on the hsqldb.jar file ) and giving it the jdbc connection string to the database. When I opened your database with SqlTool.jar . . . like you . . . each time I read the entire table "Clientes2" it resulted in an error. I tried it opening the first few records and that was fine. I opened half the records, and that was fine, I opened 75% of the records, and that was fine. I kept that up til I found the one record that was a 'problem'. I was able to open the rest of the records, except for the one record that had the error. That is how I was able to 'recreate' the one table . . . by coping contents of the BAD table into the NEW table EXCEPT for the bad record.
From what we were talking by pm, looks like it´s not a problem on hsqldb, I´m back to my OO/hsqldb/jre settings and is running. Everything came from some faulty records in one of the tables (4 wrong over 2602 right to be exact), maybe caused by electrical supply shutdowns, or some sort of wrong shutdown on server mode.

Thanks a lot everyone involved in this forum, I wish this post can help others.
OpenOffice 4.1.3 on windows 7 ultimate / jre 1.8.0_141 / hsql 2.4.0
Post Reply