Quote:
Originally Posted by DNSB
Nothing like an erratic and likely race issue to make locating a bug fun (for certain values of fun).
|
Yes, the database corruption issue seems like that. It would still happen if the Kobos used MTP and the database is available to the user. Or maybe even if the database wasn't exposed.
I suspect that while Kindle's OS is multitasking and multiuser the the database and ebook import system is not, so it makes sense that the Kindle Scribe 'locks' the screen even though it uses MTP.
Similarly while my Andriod things don't lock the screen, I don't use the GUI on them and also close all apps before connecting USB for MTP. You just don't know how Google PlayBooks, PocketBook, Viber, Kindle app etc actually works.
Unlike MSDE, MS SQL, Oracle, DB2, MySQL, MariaDB the SQLight, just like Access or Excel data, is simply files and an API. So two processes / apps accessing the SQLight database will corrupt it, though with Kobo and USB, normally you are only accessing ebook files and cover image files while USB is connected and the Kobo accesses the database when you disconnect USB. It could even be that it's that process that causes the damage because it hasn't checked what last state was, or the process last using the database didn't close it before locking screen and opening USB connection.
The fact that the database corruption can occur just by copying a single epub file to the Kobo, without touching the database files, shows it's not specifically a USB issue and that it could occur even if the SQLight files were on the system partition that's not shared. The database import occurs after USB is disconnected, so as the exposed files show the issue is not the kind of USB connection but something amiss when the USB connection request is triggered.
I always wait a little before clicking on the connect message when I plug in USB cable. I've no idea if that helps, but I don't have the problem. I also always thought 'auto-connect' sounded like a risky developer tool. Android used to autoconnect and last few versions I have it asks even though a default mode is set.
ADB needs Developer mode on for many Android devices and that's not recommended for general use, nor is ADB which I've used as an Android developer and to do funky command line fast transfers or web cam/photo capture modes. ADB is not a system for regular users.