--- /dev/null
+<?php
+
+namespace Drupal\Core\Database\Driver\pgsql;
+
+use Drupal\Core\Database\Query\Delete as QueryDelete;
+
+/**
+ * PostgreSQL implementation of \Drupal\Core\Database\Query\Delete.
+ */
+class Delete extends QueryDelete {
+
+ /**
+ * {@inheritdoc}
+ */
+ public function execute() {
+ $this->connection->addSavepoint();
+ try {
+ $result = parent::execute();
+ }
+ catch (\Exception $e) {
+ $this->connection->rollbackSavepoint();
+ throw $e;
+ }
+ $this->connection->releaseSavepoint();
+
+ return $result;
+ }
+
+}