I think you simply did not understand the working mechanism behind those messages.
If you open a Database, there is a little “1” (or similar sign) written into this database, that means this database is currently in active use by a user.
If you now open the same database, you will get the warning, as the “1” is still in the database.
You shouldn´t use the same database on two different computer at the same time, as it won’t be possible to guarantee that all you change in the database on one computer, will still be there, if you close the database on the other computer, as it is highly possible, that those data will be overwritten.
That is the purpose of the warning.
If you close your database, the “1” will be removed from the database again, and you could open the Database with DT without getting the warning.
If your system crashes (or you just switch it of, or run your battery on empty), the “1” will not be removed, because the database was not properly closed, and you will get the warning the next time, which in this case should also trigger a check of the database, as a crash could leave some damage to all kind of data, that is currently written at that time.
I didn´t had that warning now in years, so not a big deal at all…
This is, as far as I remember, also written in detail in the documentation.
If DEVONthink was crashing or stalling, it should be reported to us via our support ticket system. Other machine crashes are beyond our control and we can’t say “what happened”. Did you report crashes or stalls?
I spent some time this morning looking in the PDF of the DEVONthink v3.9 Documentation as well as the latest Take Control e-book and was not able to find a mention of the database “seems to be already in use” error message. I did find many references in DT’s Discourse forum. The “already in use” error seems to have been a pain point over the years, even up to the present time. Even though I was a solo user with a single Mac, this error message never seemed to get any smarter. It was a bit frustrating when I took advantage of the ability to keep multiple databases open and all reported the same rather non-specific error after a problem restart. I had an extensive collection of data in DT v2 and trialed v3, but decided against continuing, exporting my data back to a structured set of Finder folders at that time.
The database wasn’t closed properly, either via a Force Quit or crash.
Then it tells you to press the Continue button if you’re sure no one else has it open.
And as I mentioned earlier, DEVONthink 3 does a verification of the database upon opening and provides more information about any issues it finds. That is indeed “more information” than was previously given in the 2.x line.
I kept hoping that DT would make use of idle time to write everything that needed to be written to disk. And to update @Ulli 's simple “file open” flag to a “file has been opened but all changes have been written to disk” flag (aka the buffer has been flushed). Other programs like the RAM-based Panorama X database make use of idle time in this way. And also let the user configure the process somewhat. And it’s great that DT runs verification of the database upon opening but it also could tell the user that no problems were found even though an error dialog is being shown. Perhaps instead of a simple “file open” flag, a system identifier could be incorporated to actually indicate that the file was open somewhere else and show that part of the error message only when needed.
Right now, this error dialog put the burden on the user to recover from a situation that might not be an error condition at all.
You haven‘t understood a function of DT, and even after it was explained to you, you are still complaining about it, as if it is a real bug, and even placed a link within an other thread to this one, to „warn“ other user.