GEODE-8844: Fixes double check locking.

Failure to fetch reference after locking can result in multiple initializations.
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java b/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
index 8846e67..4dd9d13 100755
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/GemFireCacheImpl.java
@@ -4363,6 +4363,7 @@
     QueryMonitor tempQueryMonitor = queryMonitor;
     if (tempQueryMonitor == null) {
       synchronized (queryMonitorLock) {
+        tempQueryMonitor = queryMonitor;
         if (tempQueryMonitor == null) {
           int maxTime = MAX_QUERY_EXECUTION_TIME;