On Tue, Sep 7, 2010 at 1:08 PM, Greg Stein <gstein_at_gmail.com> wrote:
> On Fri, Sep 3, 2010 at 13:34, <rhuijben_at_apache.org> wrote:
>> Author: rhuijben
>> Date: Fri Sep 3 17:34:52 2010
>> New Revision: 992390
>>
>> URL: http://svn.apache.org/viewvc?rev=992390&view=rev
>> Log:
>> Add a few helper functions to allow experimenting with SQLite operations
>> inside SAVEPOINTs. This allows taking out a shared read lock for longer than
>> the duration of a single SQLite statement, which gives a huge performance
>> boost in some hacky tests. (Especially with SQLite 3.7 and on Windows, where
>> some of the WAL code slows down SQLite more than it used to do in 3.6)
>>
>> * subversion/include/private/svn_sqlite.h
>> (svn_sqlite__with_lock): New function.
>>
>> * subversion/libsvn_subr/sqlite.c
>> (svn_sqlite__with_lock): New function.
>>
>> * subversion/libsvn_wc/wc_db.c
>> (with_sqlite_lock_baton): New struct.
>> (call_sqlite_lock_cb): New function.
>> (svn_wc__db_with_sqlite_lock): New function.
>>
>> * subversion/libsvn_wc/wc_db.h
>> (svn_wc__db_with_sqlite_lock): New function.
>
> Why is this part of the WC_DB interface?!? I see no reason to expose
> sqlite to callers of the DB. Let alone mechanics such as locking...
+1
-Hyrum
Received on 2010-09-07 20:11:45 CEST