Subject Re: Clear database cache?
Author Matthew Metlis
I'm using the classic server.

The data that I'm having a problem retrieving is actually inserted
after the restore completes. The sequence is basically:
1. Restore a backup.
2. Insert new data.
3. Retrieve the data; the data that was inserted in step 2 is not present.

If between steps 1 and 2, I restart the whole application, then step 3
retrieves all data. Also if I open up a new client (a tool such as
DBVisualizer) to the database after step 3, while the application is
still running (or after I close it), and try the query from step 3, it
does pull all the data it should that was inserted in step 2.

I'll check to see if each step is done in its own transaction, or
whether they are all in one transaction. I know that they are all
done by a single thread so I'm confident about the order. I'll also
write a standalone test case (so far I've been testing this as part of
the application) that avoids anything unnecessary to reproduce this
(such as connection pooling) to make sure the problem is as pure as I
think. I'll also verify whether forced writes are on and try turning
them on.

Thanks.


> OK, but as Adam said, anything committed after the backup starts
> won't be in the restored version.
> ...
> If you've closed all connections, then the buffers will be flushed.
> Are you using Firebird as a shared server, or embedded, or classic?