From 8fce78fbfbad0dfd05cb33dcd54a3a9e4eae1701 Mon Sep 17 00:00:00 2001 From: Benjamin Eberlei Date: Thu, 21 Feb 2013 19:02:21 +0100 Subject: [PATCH] [DDC-2310] Fix regression introduced in SQL Server lock handling. --- lib/Doctrine/ORM/Query/SqlWalker.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/Doctrine/ORM/Query/SqlWalker.php b/lib/Doctrine/ORM/Query/SqlWalker.php index 62e436ee5..81660fd83 100644 --- a/lib/Doctrine/ORM/Query/SqlWalker.php +++ b/lib/Doctrine/ORM/Query/SqlWalker.php @@ -774,7 +774,10 @@ class SqlWalker implements TreeWalker $sqlParts = array(); foreach ($identificationVarDecls as $identificationVariableDecl) { - $sql = $this->walkRangeVariableDeclaration($identificationVariableDecl->rangeVariableDeclaration); + $sql = $this->platform->appendLockHint( + $this->walkRangeVariableDeclaration($identificationVariableDecl->rangeVariableDeclaration), + $this->query->getHint(Query::HINT_LOCK_MODE) + ); foreach ($identificationVariableDecl->joins as $join) { $sql .= $this->walkJoin($join); @@ -794,7 +797,7 @@ class SqlWalker implements TreeWalker } } - $sqlParts[] = $this->platform->appendLockHint($sql, $this->query->getHint(Query::HINT_LOCK_MODE)); + $sqlParts[] = $sql; } return ' FROM ' . implode(', ', $sqlParts); @@ -1382,13 +1385,16 @@ class SqlWalker implements TreeWalker $sqlParts = array (); foreach ($identificationVarDecls as $subselectIdVarDecl) { - $sql = $this->walkRangeVariableDeclaration($subselectIdVarDecl->rangeVariableDeclaration); + $sql = $this->platform->appendLockHint( + $this->walkRangeVariableDeclaration($subselectIdVarDecl->rangeVariableDeclaration), + $this->query->getHint(Query::HINT_LOCK_MODE) + ); foreach ($subselectIdVarDecl->joins as $join) { $sql .= $this->walkJoin($join); } - $sqlParts[] = $this->platform->appendLockHint($sql, $this->query->getHint(Query::HINT_LOCK_MODE)); + $sqlParts[] = $sql; } return ' FROM ' . implode(', ', $sqlParts);