diff --git a/htdocs/lib/databases/mysql.lib.php b/htdocs/lib/databases/mysql.lib.php
index be0ebcef89e97428007d4c3cf74391f69b6cc4db..8686bc38f22ecf4dd1eb5d2cc360a0747a4b8b20 100644
--- a/htdocs/lib/databases/mysql.lib.php
+++ b/htdocs/lib/databases/mysql.lib.php
@@ -299,10 +299,11 @@ class DoliDb
 	}
 
 	/**
-		\brief      Validation d'une transaction
-		\return	    int         1 si validation ok ou niveau de transaction non ouverte, 0 en cas d'erreur
-		*/
-	function commit()
+	 *	\brief      Validation d'une transaction
+	 * 	\param		log			Add more log to default log line
+	 * 	\return	    int         1 si validation ok ou niveau de transaction non ouverte, 0 en cas d'erreur
+	 */
+	function commit($log='')
 	{
 		if ($this->transaction_opened<=1)
 		{
@@ -310,7 +311,7 @@ class DoliDb
 			if ($ret)
 			{
 				$this->transaction_opened=0;
-				dolibarr_syslog("COMMIT Transaction",LOG_DEBUG);
+				dolibarr_syslog("COMMIT Transaction".($log?' '.$log:''),LOG_DEBUG);
 			}
 			return $ret;
 		}
@@ -322,16 +323,17 @@ class DoliDb
 	}
 
 	/**
-		\brief      Annulation d'une transaction et retour aux anciennes valeurs
-		\return	    int         1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur
-		*/
-	function rollback()
+	 *	\brief      Annulation d'une transaction et retour aux anciennes valeurs
+	 * 	\param		log			Add more log to default log line
+	 * 	\return	    int         1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur
+	 */
+	function rollback($log='')
 	{
 		if ($this->transaction_opened<=1)
 		{
 			$ret=$this->query("ROLLBACK");
 			$this->transaction_opened=0;
-			dolibarr_syslog("ROLLBACK Transaction",LOG_DEBUG);
+			dolibarr_syslog("ROLLBACK Transaction".($log?' '.$log:''),LOG_DEBUG);
 			return $ret;
 		}
 		else
diff --git a/htdocs/lib/databases/mysqli.lib.php b/htdocs/lib/databases/mysqli.lib.php
index 568c214f43539c1a49ca626094ba3edf29eaf4c5..4ff574fbc74812afc96664d0837bb9bc461b12b4 100644
--- a/htdocs/lib/databases/mysqli.lib.php
+++ b/htdocs/lib/databases/mysqli.lib.php
@@ -305,10 +305,11 @@ class DoliDb
 	}
 
 	/**
-	 \brief      Validation d'une transaction
-	 \return	    int         1 si validation ok ou niveau de transaction non ouverte, 0 en cas d'erreur
+	 *	\brief      Validation d'une transaction
+	 * 	\param		log			Add more log to default log line
+	 * 	\return	    int         1 si validation ok ou niveau de transaction non ouverte, 0 en cas d'erreur
 	 */
-	function commit()
+	function commit($log='')
 	{
 		if ($this->transaction_opened<=1)
 		{
@@ -316,7 +317,7 @@ class DoliDb
 			if ($ret)
 			{
 				$this->transaction_opened=0;
-				dolibarr_syslog("COMMIT Transaction",LOG_DEBUG);
+				dolibarr_syslog("COMMIT Transaction".($log?' '.$log:''),LOG_DEBUG);
 			}
 			return $ret;
 		}
@@ -328,16 +329,17 @@ class DoliDb
 	}
 
 	/**
-	 \brief      Annulation d'une transaction et retour aux anciennes valeurs
-	 \return	    int         1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur
+	 *	\brief      Annulation d'une transaction et retour aux anciennes valeurs
+	 * 	\param		log			Add more log to default log line
+	 * 	\return	    int         1 si annulation ok ou transaction non ouverte, 0 en cas d'erreur
 	 */
-	function rollback()
+	function rollback($log='')
 	{
 		if ($this->transaction_opened<=1)
 		{
 			$ret=$this->query("ROLLBACK");
 			$this->transaction_opened=0;
-			dolibarr_syslog("ROLLBACK Transaction",LOG_DEBUG);
+			dolibarr_syslog("ROLLBACK Transaction".($log?' '.$log:''),LOG_DEBUG);
 			return $ret;
 		}
 		else