# Revision history [back]

Thanks for the links @Mike Kaganski.

So it all started with this:

"Background: currently when creating a local database we default to this Java database engine. That is somewhat unfortunate. It would be better to default to a SQLite provider .."

It looks like these are the points:

• Maintaining Base (fixing it's bugs) is hard because people need to be an expert in Java, C++, UNO, and databases, especially SQL. It's hard to attract people that can cover all of these well.

• There is fear of Java because of Oracle. (HSQLDB runs in Java). Even though there is OpenJDK, I'm getting that there is still fear that somehow that might go away leaving Oracle in control.

• Java can be a bit slower than C++. ODBC was also looked at but is also limiting.

• An effort was first made to investigate replacing HSQLDB w/ SQLite. This was later abandoned because SQLite was type poor and SQL is type rich. Also SQLite it was SQL feature poor. And SQLite was not multi-user. It would have meant significantly dumbing down LO.

• MariaDB and others were also considered.

• Firebird was then suggested. It looks like Firebird has less, database wise, than HSQLDB, but it also doesn't depend on Java as it's written in C++.

(So at least for me, this answers my questions, except for the version of Firebird currently in LO, which remains unknown.)

Thanks for the links @Mike Kaganski.

So it all started with this:

"Background: currently when creating a local database we default to this Java database engine. That is somewhat unfortunate. It would be better to default to a SQLite provider .."

It looks like these are the points:

• Maintaining Base (fixing it's bugs) is hard because people need to be an expert in Java, C++, UNO, and databases, especially SQL. It's hard to attract people that can cover all of these well.

• There is fear of Java because of Oracle. (HSQLDB runs in Java). Even though there is OpenJDK, I'm getting that there is still fear that somehow that might go away leaving Oracle in control.

• Other software can not access the LO database without also having Java setup which complicates things.

• Java can be a bit slower than C++. ODBC was also looked at but is also limiting.

• An effort was first made to investigate replacing HSQLDB w/ SQLite. This was later abandoned because SQLite was type poor and SQL is type rich. Also SQLite it was SQL feature poor. And SQLite was not multi-user. It would have meant significantly dumbing down LO.

• MariaDB and others were also considered.

• Firebird was then suggested. It looks like Firebird has less, database wise, than HSQLDB, but it also doesn't depend on Java as it's written in C++.

(So at least for me, this answers my questions, except for the version of Firebird currently in LO, which remains unknown.)

Thanks for the links @Mike Kaganski.

So it all started with this:

"Background: currently when creating a local database we default to this Java database engine. That is somewhat unfortunate. It would be better to default to a SQLite provider .."

It looks like these are the points:

• Maintaining Base (fixing it's bugs) is hard because people need to be an expert in Java, C++, UNO, and databases, especially SQL. It's hard to attract people that can cover all of these well.

• There is fear of Java because of Oracle. (HSQLDB runs in Java). Even though there is OpenJDK, I'm getting that there is still fear that somehow that might go away leaving Oracle in control.

• Other software can not access the LO database without also having Java setup which complicates things.

• Java can be a bit slower than C++. ODBC was also looked at but is also limiting.

• An effort was first made to investigate replacing HSQLDB w/ SQLite. This was later abandoned because SQLite was type poor and SQL is type rich. Also SQLite it was SQL feature poor. And SQLite was not multi-user. It would have meant significantly dumbing down LO.

• MariaDB and others were also considered.

• Firebird was then suggested. It looks like

It's unclear to me how Firebird has less, database wise, than HSQLDB, but compares with HSQLDB. But Firebird does appear to have a higher ranking here, and it also doesn't depend on Java as it's Java, but rather is written in C++.

C++.

However I noticed that Firebird does not currently (at least as of the latest reference manual) support TINYINT but HSQLDB does. I use TINYINT. It's what is suggested by MS Access To MySQL for converting Access Yes/No (Boolean) types to MySQL.

(So at least for me, this answers my questions, except for the version of Firebird currently in LO, which remains unknown.)