What are the pitfalls of embedded networking with Derby?

We have a Java desktop application that accesses a Derby database located on a network shared drive, rather than locally.

While multiple instances of the application share a database, only one instance has a live connection.

This has been working pretty well for more than two years, but sometimes we encounter database corruption that we cannot determine is the result of a software error or because of a network between the application and the remote database.

We understand that Derby docs indicate that embedded databases should only be used for local persistence, but can anyone suggest some specific errors we might encounter in this configuration?

Thanks in advance!

Jim

+5
source share
2 answers

In particular, with regard to database corruption, I believe that there are (at least) two fundamental problems with having a database in a network attached storage: (1) when Derby tries to allocate space by expanding a file, the file system can report as successful, although the disk is actually full; (2) when Derby tries to make sure that the recording on the disc is actually completely written to the disc, the file system can report the data as being written to the disc, although in fact it is still being written to memory.

Any of the above problems, if they occur at the right time, can lead to database corruption.

+2
source

, Derby , , - , ?

, , . , , , .

( , , Derby db, . Derby , , . ... Derby , .)

, Network Server Derby?

+1

All Articles