From a911f2e76c84fac8ba239d5030fa0610044dc14d Mon Sep 17 00:00:00 2001 From: Lukas Eder Date: Mon, 18 Jan 2021 09:10:26 +0100 Subject: [PATCH] [jOOQ/jOOQ#11244] SelectQuery.setForUpdate and similar methods do not clear flag when value is false --- .../java/org/jooq/impl/SelectQueryImpl.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java index 283e79a0e3..11d83c03a0 100644 --- a/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/SelectQueryImpl.java @@ -3114,17 +3114,26 @@ final class SelectQueryImpl extends AbstractResultQuery imp @Override public final void setForUpdate(boolean forUpdate) { - forLock().forLockMode = ForLockMode.UPDATE; + if (forUpdate) + forLock().forLockMode = ForLockMode.UPDATE; + else + forLock = null; } @Override public final void setForNoKeyUpdate(boolean forNoKeyUpdate) { - forLock().forLockMode = ForLockMode.NO_KEY_UPDATE; + if (forNoKeyUpdate) + forLock().forLockMode = ForLockMode.NO_KEY_UPDATE; + else + forLock = null; } @Override public final void setForKeyShare(boolean forKeyShare) { - forLock().forLockMode = ForLockMode.KEY_SHARE; + if (forKeyShare) + forLock().forLockMode = ForLockMode.KEY_SHARE; + else + forLock = null; } @Override @@ -3159,7 +3168,10 @@ final class SelectQueryImpl extends AbstractResultQuery imp @Override public final void setForShare(boolean forShare) { - forLock().forLockMode = ForLockMode.SHARE; + if (forShare) + forLock().forLockMode = ForLockMode.SHARE; + else + forLock = null; } @Override