Index: src/backend/xml/test/test-save-in-lang.c
===================================================================
--- src/backend/xml/test/test-save-in-lang.c	(Revision 19805)
+++ src/backend/xml/test/test-save-in-lang.c	(Arbeitskopie)
@@ -79,7 +79,7 @@
 
         session = qof_session_new();
 
-        qof_session_begin(session, filename, TRUE, FALSE, FALSE);
+        qof_session_begin(session, filename, TRUE, FALSE, FALSE, FALSE);
         err = qof_session_pop_error (session);
         if (err)
         {
@@ -100,7 +100,7 @@
 
         new_session = qof_session_new();
 
-        qof_session_begin(new_session, new_file, FALSE, FALSE, FALSE);
+        qof_session_begin(new_session, new_file, FALSE, FALSE, FALSE, FALSE);
         err = qof_session_pop_error (new_session);
         if (err)
         {
Index: src/backend/xml/test/test-load-xml2.c
===================================================================
--- src/backend/xml/test/test-load-xml2.c	(Revision 19805)
+++ src/backend/xml/test/test-load-xml2.c	(Arbeitskopie)
@@ -85,7 +85,7 @@
     remove_locks(filename);
 
     ignore_lock = (safe_strcmp(g_getenv("SRCDIR"), ".") != 0);
-    qof_session_begin(session, filename, ignore_lock, FALSE, TRUE);
+    qof_session_begin(session, filename, ignore_lock, FALSE, TRUE, TRUE);
 
     qof_session_load(session, NULL);
     book = qof_session_get_book (session);
Index: src/backend/dbi/test/test-dbi-stuff.c
===================================================================
--- src/backend/dbi/test/test-dbi-stuff.c	(Revision 19805)
+++ src/backend/dbi/test/test-dbi-stuff.c	(Arbeitskopie)
@@ -151,13 +151,13 @@
 
     // Save the session data
     session_2 = qof_session_new();
-    qof_session_begin( session_2, url, FALSE, TRUE, TRUE );
+    qof_session_begin( session_2, url, FALSE, TRUE, TRUE, FALSE );
     qof_session_swap_data( session_1, session_2 );
     qof_session_save( session_2, NULL );
 
     // Reload the session data
     session_3 = qof_session_new();
-    qof_session_begin( session_3, url, TRUE, FALSE, FALSE );
+    qof_session_begin( session_3, url, TRUE, FALSE, FALSE, FALSE );
     qof_session_load( session_3, NULL );
 
     // Compare with the original data
Index: src/backend/dbi/test/test-dbi-business-stuff.c
===================================================================
--- src/backend/dbi/test/test-dbi-business-stuff.c	(Revision 19805)
+++ src/backend/dbi/test/test-dbi-business-stuff.c	(Arbeitskopie)
@@ -198,13 +198,13 @@
 
     // Save the session data
     session_2 = qof_session_new();
-    qof_session_begin( session_2, url, FALSE, TRUE, TRUE );
+    qof_session_begin( session_2, url, FALSE, TRUE, TRUE, TRUE );
     qof_session_swap_data( session_1, session_2 );
     qof_session_save( session_2, NULL );
 
     // Reload the session data
     session_3 = qof_session_new();
-    qof_session_begin( session_3, url, TRUE, FALSE, FALSE );
+    qof_session_begin( session_3, url, TRUE, FALSE, FALSE, TRUE );
     qof_session_load( session_3, NULL );
 
     // Compare with the original data
Index: src/backend/dbi/test/test-dbi.c
===================================================================
--- src/backend/dbi/test/test-dbi.c	(Revision 19805)
+++ src/backend/dbi/test/test-dbi.c	(Arbeitskopie)
@@ -52,7 +52,7 @@
 
     // Create a session with data
     session_1 = qof_session_new();
-    qof_session_begin( session_1, DBI_TEST_XML_FILENAME, FALSE, FALSE, FALSE );
+    qof_session_begin( session_1, DBI_TEST_XML_FILENAME, FALSE, FALSE, FALSE, TRUE );
     qof_session_load( session_1, NULL );
 
     filename = tempnam( "/tmp", "test-sqlite3-" );
@@ -63,7 +63,7 @@
     if ( strlen( TEST_MYSQL_URL ) > 0 )
     {
         session_1 = qof_session_new();
-        qof_session_begin( session_1, DBI_TEST_XML_FILENAME, FALSE, FALSE, FALSE );
+        qof_session_begin( session_1, DBI_TEST_XML_FILENAME, FALSE, FALSE, FALSE, TRUE );
         qof_session_load( session_1, NULL );
         test_dbi_store_and_reload( "mysql", session_1, TEST_MYSQL_URL );
     }
@@ -72,7 +72,7 @@
     if ( strlen( TEST_PGSQL_URL ) > 0 )
     {
         session_1 = qof_session_new();
-        qof_session_begin( session_1, DBI_TEST_XML_FILENAME, FALSE, FALSE, FALSE );
+        qof_session_begin( session_1, DBI_TEST_XML_FILENAME, FALSE, FALSE, FALSE, TRUE );
         qof_session_load( session_1, NULL );
         test_dbi_store_and_reload( "pgsql", session_1, TEST_PGSQL_URL );
     }
Index: src/bin/gnucash-bin.c
===================================================================
--- src/bin/gnucash-bin.c	(Revision 19805)
+++ src/bin/gnucash-bin.c	(Arbeitskopie)
@@ -627,7 +627,7 @@
     session = gnc_get_current_session();
     if (!session) goto fail;
 
-    qof_session_begin(session, add_quotes_file, FALSE, FALSE, FALSE);
+    qof_session_begin(session, add_quotes_file, FALSE, FALSE, FALSE, TRUE );
     if (qof_session_get_error(session) != ERR_BACKEND_NO_ERR) goto fail;
 
     qof_session_load(session, NULL);
Index: src/libqof/qof/qofsession.c
===================================================================
--- src/libqof/qof/qofsession.c	(Revision 19805)
+++ src/libqof/qof/qofsession.c	(Arbeitskopie)
@@ -1098,7 +1098,7 @@
 
 void
 qof_session_begin (QofSession *session, const char * book_id,
-                   gboolean ignore_lock, gboolean create, gboolean force)
+                   gboolean ignore_lock, gboolean create, gboolean force, gboolean fake)
 {
     gchar **splituri;
 
Index: src/libqof/qof/qofsession.h
===================================================================
--- src/libqof/qof/qofsession.h	(Revision 19805)
+++ src/libqof/qof/qofsession.h	(Arbeitskopie)
@@ -149,7 +149,7 @@
  */
 void qof_session_begin (QofSession *session, const char * book_id,
                         gboolean ignore_lock, gboolean create,
-			gboolean force);
+			gboolean force, gboolean fake);
 
 
 /**
Index: src/business/business-core/test/test-customer.c
===================================================================
--- src/business/business-core/test/test-customer.c	(Revision 19805)
+++ src/business/business-core/test/test-customer.c	(Arbeitskopie)
@@ -65,7 +65,7 @@
 
     session = qof_session_new();
     be = NULL;
-    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE);
+    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE, TRUE);
     book = qof_session_get_book(session);
     be = qof_book_get_backend(book);
 
Index: src/business/business-core/test/test-job.c
===================================================================
--- src/business/business-core/test/test-job.c	(Revision 19805)
+++ src/business/business-core/test/test-job.c	(Arbeitskopie)
@@ -74,7 +74,7 @@
 
     session = qof_session_new();
     be = NULL;
-    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE);
+    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE, TRUE);
     book = qof_session_get_book (session);
     be = qof_book_get_backend(book);
 
Index: src/business/business-core/test/test-vendor.c
===================================================================
--- src/business/business-core/test/test-vendor.c	(Revision 19805)
+++ src/business/business-core/test/test-vendor.c	(Arbeitskopie)
@@ -73,7 +73,7 @@
 
     session = qof_session_new();
     be = NULL;
-    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE);
+    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE, FALSE);
     book = qof_session_get_book (session);
     be = qof_book_get_backend(book);
 
Index: src/business/business-core/test/test-employee.c
===================================================================
--- src/business/business-core/test/test-employee.c	(Revision 19805)
+++ src/business/business-core/test/test-employee.c	(Arbeitskopie)
@@ -71,7 +71,7 @@
     GncEmployee *employee;
 
     session = qof_session_new();
-    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE);
+    qof_session_begin(session, FILE_NAME, FALSE, FALSE, FALSE, TRUE);
     book = qof_session_get_book(session);
     be = qof_book_get_backend (book);
 
Index: src/gnome-utils/gnc-file.c
===================================================================
--- src/gnome-utils/gnc-file.c	(Revision 19805)
+++ src/gnome-utils/gnc-file.c	(Arbeitskopie)
@@ -651,7 +651,7 @@
     /* but first, check to make sure we've got a session going. */
     new_session = qof_session_new ();
 
-    qof_session_begin (new_session, newfile, FALSE, FALSE, FALSE);
+    qof_session_begin (new_session, newfile, FALSE, FALSE, FALSE, TRUE);
     io_err = qof_session_get_error (new_session);
     /* if file appears to be locked, ask the user ... */
     if (ERR_BACKEND_LOCKED == io_err || ERR_BACKEND_READONLY == io_err)
@@ -708,7 +708,7 @@
             // reports may take some time
             gnc_show_splash_screen();
             /* user told us to ignore locks. So ignore them. */
-            qof_session_begin (new_session, newfile, TRUE, FALSE, FALSE);
+            qof_session_begin (new_session, newfile, TRUE, FALSE, FALSE, TRUE);
         }
         else
         {
@@ -728,7 +728,7 @@
             /* user told us to create a new database. Do it. We
 	     * shouldn't have to worry about locking or clobbering,
 	     * it's supposed to be new. */
-            qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE);
+            qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE, TRUE);
         }
     }
 
@@ -1021,7 +1021,7 @@
     /* -- this session code is NOT identical in FileOpen and FileSaveAs -- */
 
     new_session = qof_session_new ();
-    qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE);
+    qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE, TRUE);
 
     io_err = qof_session_get_error (new_session);
     /* If the file exists and would be clobbered, ask the user */
@@ -1039,7 +1039,7 @@
 	{
             return;
         }
-	qof_session_begin (new_session, newfile, FALSE, TRUE, TRUE);
+	qof_session_begin (new_session, newfile, FALSE, TRUE, TRUE, TRUE);
     }
     /* if file appears to be locked, ask the user ... */
     if (ERR_BACKEND_LOCKED == io_err || ERR_BACKEND_READONLY == io_err)
@@ -1047,7 +1047,7 @@
         if (FALSE == show_session_error (io_err, newfile, GNC_FILE_DIALOG_EXPORT))
         {
             /* user told us to ignore locks. So ignore them. */
-            qof_session_begin (new_session, newfile, TRUE, FALSE, FALSE);
+            qof_session_begin (new_session, newfile, TRUE, FALSE, FALSE, TRUE);
         }
     }
 
@@ -1236,7 +1236,7 @@
     save_in_progress++;
 
     new_session = qof_session_new ();
-    qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE);
+    qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE, TRUE);
 
     io_err = qof_session_get_error (new_session);
 
@@ -1262,14 +1262,14 @@
             save_in_progress--;
             return;
         }
-	qof_session_begin (new_session, newfile, FALSE, TRUE, TRUE);
+	qof_session_begin (new_session, newfile, FALSE, TRUE, TRUE, TRUE);
     }
     else if (ERR_BACKEND_LOCKED == io_err || ERR_BACKEND_READONLY == io_err)
     {
         if (FALSE == show_session_error (io_err, newfile, GNC_FILE_DIALOG_SAVE))
         {
             /* user told us to ignore locks. So ignore them. */
-            qof_session_begin (new_session, newfile, TRUE, FALSE, FALSE);
+            qof_session_begin (new_session, newfile, TRUE, FALSE, FALSE, TRUE);
         }
     }
 
@@ -1281,7 +1281,7 @@
         if (FALSE == show_session_error (io_err, newfile, GNC_FILE_DIALOG_SAVE))
         {
             /* user told us to create a new database. Do it. */
-            qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE);
+            qof_session_begin (new_session, newfile, FALSE, TRUE, FALSE, TRUE);
         }
     }
 
Index: src/gnome-utils/druid-gnc-xml-import.c
===================================================================
--- src/gnome-utils/druid-gnc-xml-import.c	(Revision 19805)
+++ src/gnome-utils/druid-gnc-xml-import.c	(Arbeitskopie)
@@ -743,7 +743,7 @@
     gxi_session_destroy (data);
     session = qof_session_new ();
     data->session = session;
-    qof_session_begin (session, data->filename, TRUE, FALSE, FALSE);
+    qof_session_begin (session, data->filename, TRUE, FALSE, FALSE, TRUE);
     io_err = qof_session_get_error (session);
     if (io_err != ERR_BACKEND_NO_ERR)
     {
