Hello, atunccekic! Friday, December 20, 2013, 5:58:08 PM, you wrote:
adct> Thank you Dmitry I decided to refresh my memory, because started to forgot things I new before :-) So, several facts: -d ON - turns ON direct I/O, i.e. turns off operating system cache. on Windows it uses FILE_FLAG_NO_BUFFERING option (see comments below) -d OFF - turns OFF direct I/O, i.e. turns ON operating system cache. it can show bad performance when database size is bigger than RAM, at least for Windows. Turning -d ON does not "spoil" OS cache, so, performance left for the hard drive subsystem. So, it need to be tested wich one to use - ON or OFF. Also, as I see in nbak.cpp, -d option affects only diff file (delta), not database file. You can check functions BackupManager::openDelta BackupManager::setForcedWrites And, it inherits Forced Writes state from the database for delta. If it's ON for database, it will be ON for delta (wich is seems logical). So, the description of -d that nbackup show is wrong. As I said, it related only to the delta file. What I coudn't find (sorry, I don't understand C++ and not so friendly with Firebird sources) is defaults for -d option. But, as I see, some people use -d OFF to avoid performance problems, so, I can guess, that default is -d ON. Have I satisfied your interest? :-) -- Dmitry Kuzmenko, www.ib-aid.com