John LeSueur wrote:
Maybe it's the principle of least surprise. As a new
developer, coming to sqlite, if there was this reference counting and loosely emulated nested transactions, and one
day I made a mistake and called sqlite3_begin() twice and calling sqlite3_end() just once, nothing would be
committed. But since calling sqlite3_begin() twice didn't throw an error, I would be surprised and confused. I don't know if

The current behavior of the BEGIN/END SQL statements can be the default behavior of the functions with a means supplied to turn on reference counting.

At any rate, I'm just going to update my SQLite
wrapper object like everyone else.  It's just that...

AFAIK, the lower the level we lock, the safer and
faster the code ( in general ).  SQLite counting
reference in the sqlite3_db object should fair
better than a user doing it in their application.
Right?  Plus, I don't want to worry about deadlocks
with yet another mutex.

SQLite is a very capable library, but it almost
feels like the library equivalent of assembly
sometimes.  It pushes so much boilerplate stuff
to the user.

-
Kervin

Reply via email to