I m writing Error handling for a c# application using Sqlite and System.Data.Sqlite library. I m using try catch block to look at any exceptions thrown by the DB calls. I understand there can be only one writer at a time operating on the DB, and failure to acquire lock will throw exception. Is there any possibility for any DB operation to go in a hung/stuck state due to any reason(malformed query, locks, corrupt DB) which also needs to be handled? Does sqlite support any timeouts for running operations apart from lock acquiring timeouts?