Don't try to update on NotNullConstraintViolationException, only on unique or foreign key
Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
parent
1aa9c9164d
commit
fbda2d1d25
|
@ -39,6 +39,7 @@ use Doctrine\DBAL\Configuration;
|
|||
use Doctrine\DBAL\DBALException;
|
||||
use Doctrine\DBAL\Driver;
|
||||
use Doctrine\DBAL\Exception\ConstraintViolationException;
|
||||
use Doctrine\DBAL\Exception\NotNullConstraintViolationException;
|
||||
use Doctrine\DBAL\Platforms\MySqlPlatform;
|
||||
use Doctrine\DBAL\Schema\Schema;
|
||||
use OC\DB\QueryBuilder\QueryBuilder;
|
||||
|
@ -322,6 +323,8 @@ class Connection extends ReconnectWrapper implements IDBConnection {
|
|||
}, array_merge($keys, $values))
|
||||
);
|
||||
return $insertQb->execute();
|
||||
} catch (NotNullConstraintViolationException $e) {
|
||||
throw $e;
|
||||
} catch (ConstraintViolationException $e) {
|
||||
// value already exists, try update
|
||||
$updateQb = $this->getQueryBuilder();
|
||||
|
|
Loading…
Reference in New Issue