diff --git a/src/backend/tcop/utility.c b/src/backend/tcop/utility.c index bb85b5e52a..49f27e416b 100644 --- a/src/backend/tcop/utility.c +++ b/src/backend/tcop/utility.c @@ -624,8 +624,13 @@ standard_ProcessUtility(PlannedStmt *pstmt, if (!EndTransactionBlock(stmt->chain)) { /* report unsuccessful commit in completionTag */ - if (completionTag) + if (completionTag) { strcpy(completionTag, "ROLLBACK"); + ereport(ERROR, + (errcode(ERRCODE_IN_FAILED_SQL_TRANSACTION), + errmsg("current transaction failed, " + "rolling back"))); + } } break; @@ -633,8 +638,13 @@ standard_ProcessUtility(PlannedStmt *pstmt, if (!PrepareTransactionBlock(stmt->gid)) { /* report unsuccessful commit in completionTag */ - if (completionTag) + if (completionTag) { strcpy(completionTag, "ROLLBACK"); + ereport(ERROR, + (errcode(ERRCODE_IN_FAILED_SQL_TRANSACTION), + errmsg("current transaction failed, " + "rolling back"))); + } } break;