Implement BEGIN/COMMIT/ROLLBACK for transaction support. Provides a *huge*

performance improvement when saving to an sqlite3 file.



git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@17993 57a11ea4-9604-0410-9ed3-97b8803252fd
2.4
Phil Longstaff 17 years ago
parent 45370b48d8
commit eb2aa66bfe

@ -1071,7 +1071,11 @@ conn_does_table_exist( GncSqlConnection* conn, const gchar* table_name )
static gboolean
conn_begin_transaction( /*@ unused @*/ GncSqlConnection* conn )
{
//GncDbiSqlConnection* dbi_conn = (GncDbiSqlConnection*)conn;
GncDbiSqlConnection* dbi_conn = (GncDbiSqlConnection*)conn;
dbi_result result;
result = dbi_conn_queryf( dbi_conn->conn, "BEGIN" );
(void)dbi_result_free( result );
return TRUE;
}
@ -1079,7 +1083,11 @@ conn_begin_transaction( /*@ unused @*/ GncSqlConnection* conn )
static gboolean
conn_rollback_transaction( /*@ unused @*/ GncSqlConnection* conn )
{
//GncDbiSqlConnection* dbi_conn = (GncDbiSqlConnection*)conn;
GncDbiSqlConnection* dbi_conn = (GncDbiSqlConnection*)conn;
dbi_result result;
result = dbi_conn_queryf( dbi_conn->conn, "ROLLBACK" );
(void)dbi_result_free( result );
return TRUE;
}
@ -1087,7 +1095,11 @@ conn_rollback_transaction( /*@ unused @*/ GncSqlConnection* conn )
static gboolean
conn_commit_transaction( /*@ unused @*/ GncSqlConnection* conn )
{
//GncDbiSqlConnection* dbi_conn = (GncDbiSqlConnection*)conn;
GncDbiSqlConnection* dbi_conn = (GncDbiSqlConnection*)conn;
dbi_result result;
result = dbi_conn_queryf( dbi_conn->conn, "COMMIT" );
(void)dbi_result_free( result );
return TRUE;
}

Loading…
Cancel
Save