diff Framework/PostgreSQL/PostgreSQLDatabase.cpp @ 216:fbb52129158a

TransactionType given to PostgreSQLTransaction constructor
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 26 Mar 2021 17:47:56 +0100
parents b40b30075c51
children a4918d57435c
line wrap: on
line diff
--- a/Framework/PostgreSQL/PostgreSQLDatabase.cpp	Fri Mar 26 17:32:29 2021 +0100
+++ b/Framework/PostgreSQL/PostgreSQLDatabase.cpp	Fri Mar 26 17:47:56 2021 +0100
@@ -112,7 +112,7 @@
 
   bool PostgreSQLDatabase::RunAdvisoryLockStatement(const std::string& statement)
   {
-    PostgreSQLTransaction transaction(*this);
+    PostgreSQLTransaction transaction(*this, TransactionType_ReadWrite);
 
     Query query(statement, false);
     PostgreSQLStatement s(*this, query);
@@ -206,7 +206,7 @@
 
   void PostgreSQLDatabase::ClearAll()
   {
-    PostgreSQLTransaction transaction(*this);
+    PostgreSQLTransaction transaction(*this, TransactionType_ReadWrite);
     
     // Remove all the large objects
     Execute("SELECT lo_unlink(loid) FROM (SELECT DISTINCT loid FROM pg_catalog.pg_largeobject) as loids;");
@@ -255,12 +255,9 @@
       case TransactionType_Implicit:
         return new PostgreSQLImplicitTransaction;
 
+      case TransactionType_ReadWrite:
       case TransactionType_ReadOnly:
-        // TODO => READ-ONLY
-        return new PostgreSQLTransaction(*this);
-
-      case TransactionType_ReadWrite:
-        return new PostgreSQLTransaction(*this);
+        return new PostgreSQLTransaction(*this, type);
 
       default:
         throw Orthanc::OrthancException(Orthanc::ErrorCode_ParameterOutOfRange);