You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by kl...@apache.org on 2016/06/08 00:06:03 UTC
[86/90] [abbrv] incubator-geode git commit: GEODE-1464: remove sqlf
code
GEODE-1464: remove sqlf code
Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/880f8648
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/880f8648
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/880f8648
Branch: refs/heads/feature/GEODE-835
Commit: 880f86483f6b75775f34e6821046ba18deb933f0
Parents: 6967ac1
Author: Darrel Schneider <ds...@pivotal.io>
Authored: Mon Jun 6 18:01:18 2016 -0700
Committer: Darrel Schneider <ds...@pivotal.io>
Committed: Mon Jun 6 18:01:18 2016 -0700
----------------------------------------------------------------------
.../cache/query/internal/IndexUpdater.java | 123 --------
.../internal/DistributionMessage.java | 2 +-
.../internal/InternalDistributedSystem.java | 43 +--
.../distributed/internal/ReplyProcessor21.java | 6 +-
.../com/gemstone/gemfire/internal/DSCODE.java | 16 +-
.../gemstone/gemfire/internal/DSFIDFactory.java | 187 -------------
.../internal/DataSerializableFixedID.java | 56 +---
.../gemfire/internal/GemFireUtilLauncher.java | 165 -----------
.../internal/InternalDataSerializer.java | 7 -
.../gemstone/gemfire/internal/SystemAdmin.java | 2 -
.../com/gemstone/gemfire/internal/Version.java | 21 +-
.../gemfire/internal/VersionedDataStream.java | 5 +-
.../internal/cache/AbstractDiskRegionEntry.java | 5 -
.../internal/cache/AbstractRegionEntry.java | 30 +-
.../internal/cache/AbstractRegionMap.java | 238 ++--------------
.../gemfire/internal/cache/BucketAdvisor.java | 6 -
.../gemfire/internal/cache/BucketRegion.java | 45 +--
.../cache/CacheDistributionAdvisor.java | 28 +-
.../internal/cache/CacheServerLauncher.java | 2 +-
.../cache/CachedDeserializableFactory.java | 7 -
.../internal/cache/ColocationHelper.java | 67 +----
.../internal/cache/DestroyOperation.java | 3 -
.../gemfire/internal/cache/DiskEntry.java | 152 ++--------
.../gemfire/internal/cache/DiskInitFile.java | 2 -
.../gemfire/internal/cache/DiskRegion.java | 2 -
.../internal/cache/DiskWriteAttributesImpl.java | 91 ------
.../gemfire/internal/cache/DistTXState.java | 4 +-
.../cache/DistTXStateOnCoordinator.java | 2 +-
.../cache/DistributedCacheOperation.java | 31 +-
.../cache/DistributedPutAllOperation.java | 52 +---
.../internal/cache/DistributedRegion.java | 37 +--
...stributedRegionFunctionStreamingMessage.java | 2 -
.../cache/DistributedRemoveAllOperation.java | 24 +-
.../gemfire/internal/cache/EntryBits.java | 22 --
.../gemfire/internal/cache/EntryEventImpl.java | 255 +----------------
.../internal/cache/EntryOperationImpl.java | 15 +-
.../internal/cache/GemFireCacheImpl.java | 159 +++++------
.../gemfire/internal/cache/GridAdvisor.java | 6 +-
.../internal/cache/InitialImageOperation.java | 96 +------
.../internal/cache/InternalRegionArguments.java | 22 --
.../internal/cache/InvalidateOperation.java | 3 -
.../gemfire/internal/cache/KeyInfo.java | 5 +-
.../internal/cache/KeyWithRegionContext.java | 70 -----
.../gemfire/internal/cache/ListOfDeltas.java | 100 -------
.../gemfire/internal/cache/LocalRegion.java | 131 +--------
.../gemstone/gemfire/internal/cache/Oplog.java | 24 +-
.../internal/cache/PRHARedundancyProvider.java | 8 -
.../internal/cache/PartitionAttributesImpl.java | 10 -
.../internal/cache/PartitionedRegion.java | 280 +------------------
.../cache/PartitionedRegionDataStore.java | 16 --
.../gemfire/internal/cache/ProxyRegionMap.java | 23 +-
.../gemfire/internal/cache/QueuedOperation.java | 16 +-
.../gemfire/internal/cache/RegionEntry.java | 6 +-
.../gemfire/internal/cache/RegionMap.java | 8 +-
.../cache/RemoteContainsKeyValueMessage.java | 3 -
.../internal/cache/RemoteDestroyMessage.java | 13 +-
.../internal/cache/RemoteFetchEntryMessage.java | 3 -
.../cache/RemoteFetchVersionMessage.java | 3 -
.../internal/cache/RemoteGetMessage.java | 3 -
.../internal/cache/RemoteInvalidateMessage.java | 3 -
.../internal/cache/RemotePutAllMessage.java | 15 +-
.../internal/cache/RemotePutMessage.java | 32 +--
.../internal/cache/RemoteRemoveAllMessage.java | 6 +-
.../cache/SearchLoadAndWriteProcessor.java | 3 -
.../gemfire/internal/cache/TXEntry.java | 11 -
.../gemfire/internal/cache/TXEntryState.java | 32 +--
.../internal/cache/TXRegionLockRequestImpl.java | 14 +-
.../gemfire/internal/cache/TXRegionState.java | 5 -
.../gemfire/internal/cache/TXState.java | 5 +-
.../internal/cache/TXStateInterface.java | 1 -
.../cache/UpdateAttributesProcessor.java | 9 +-
.../cache/UpdateEntryVersionOperation.java | 5 -
.../gemfire/internal/cache/UpdateOperation.java | 36 +--
.../internal/cache/ValidatingDiskRegion.java | 3 -
.../internal/cache/WrappedCallbackArgument.java | 26 +-
.../gemfire/internal/cache/delta/Delta.java | 56 ----
.../cache/execute/AbstractExecution.java | 18 --
.../FunctionStreamingResultCollector.java | 3 +-
.../cache/execute/InternalExecution.java | 27 +-
.../cache/execute/InternalFunctionService.java | 2 +-
.../execute/InternalRegionFunctionContext.java | 5 -
.../cache/execute/MemberFunctionExecutor.java | 7 -
.../execute/MultiRegionFunctionExecutor.java | 7 -
.../execute/RegionFunctionContextImpl.java | 13 -
.../cache/execute/ServerFunctionExecutor.java | 7 -
.../partitioned/ContainsKeyValueMessage.java | 4 -
.../cache/partitioned/DestroyMessage.java | 4 -
.../partitioned/FetchBulkEntriesMessage.java | 6 -
.../cache/partitioned/FetchEntriesMessage.java | 6 -
.../cache/partitioned/FetchEntryMessage.java | 4 -
.../cache/partitioned/FetchKeysMessage.java | 6 -
.../internal/cache/partitioned/GetMessage.java | 16 +-
.../cache/partitioned/InvalidateMessage.java | 4 -
.../cache/partitioned/PREntriesIterator.java | 8 +-
.../PRUpdateEntryVersionMessage.java | 5 -
.../cache/partitioned/PartitionMessage.java | 18 --
.../cache/partitioned/PutAllPRMessage.java | 26 +-
.../internal/cache/partitioned/PutMessage.java | 36 +--
.../cache/partitioned/RegionAdvisor.java | 17 --
.../partitioned/RemoteFetchKeysMessage.java | 6 -
.../cache/partitioned/RemoveAllPRMessage.java | 11 +-
.../rebalance/PartitionedRegionLoadModel.java | 19 +-
.../sockets/command/GatewayReceiverCommand.java | 13 -
.../internal/cache/tx/DistTxEntryEvent.java | 14 +-
.../cache/wan/AbstractGatewaySender.java | 2 +-
.../AbstractGatewaySenderEventProcessor.java | 2 +-
.../wan/GatewaySenderEventCallbackArgument.java | 8 +-
.../cache/wan/GatewaySenderEventImpl.java | 13 +-
.../parallel/ParallelGatewaySenderQueue.java | 9 +-
.../xmlcache/RegionAttributesCreation.java | 2 -
.../gemfire/internal/i18n/LocalizedStrings.java | 11 -
.../internal/logging/LoggingThreadGroup.java | 2 -
.../internal/logging/ManagerLogWriter.java | 34 ---
.../gemfire/internal/logging/PureLogWriter.java | 2 -
.../gemfire/internal/offheap/OffHeapHelper.java | 1 -
.../offheap/ReferenceCountHelperImpl.java | 1 -
.../offheap/annotations/OffHeapIdentifier.java | 4 -
.../gemfire/internal/shared/NativeCalls.java | 33 +--
.../gemfire/internal/util/ArrayUtils.java | 2 +-
.../CustomEntryConcurrentHashMap.java | 2 +-
.../gemfire/cache30/MultiVMRegionTestCase.java | 140 ----------
.../gemfire/distributed/LocatorDUnitTest.java | 2 +-
.../disttx/DistributedTransactionDUnitTest.java | 12 -
...wardCompatibilitySerializationDUnitTest.java | 9 -
.../execute/PRCustomPartitioningDUnitTest.java | 3 +-
.../FetchEntriesMessageJUnitTest.java | 1 -
.../sanctionedDataSerializables.txt | 27 +-
.../codeAnalysis/sanctionedSerializables.txt | 1 -
128 files changed, 292 insertions(+), 3368 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/cache/query/internal/IndexUpdater.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/cache/query/internal/IndexUpdater.java b/geode-core/src/main/java/com/gemstone/gemfire/cache/query/internal/IndexUpdater.java
deleted file mode 100644
index facbdf2..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/cache/query/internal/IndexUpdater.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.gemstone.gemfire.cache.query.internal;
-
-import com.gemstone.gemfire.cache.EntryEvent;
-import com.gemstone.gemfire.cache.Region;
-import com.gemstone.gemfire.cache.TimeoutException;
-import com.gemstone.gemfire.distributed.LockNotHeldException;
-import com.gemstone.gemfire.internal.cache.BucketRegion;
-import com.gemstone.gemfire.internal.cache.EntryEventImpl;
-import com.gemstone.gemfire.internal.cache.LocalRegion;
-import com.gemstone.gemfire.internal.cache.RegionEntry;
-
-public interface IndexUpdater {
-
- /**
- * This method is invoked when an entry is added, updated or destroyed in a
- * region for index maintenance. This method will do some pre-update
- * operations for the index like constraint checks or any other logging that
- * may be required, and any index updates if required.
- *
- * @param owner
- * the {@link Region} that owns this event; will be different from
- * {@link EntryEvent#getRegion()} for partitioned regions
- * @param event
- * the {@link EntryEvent} representing the operation.
- * @param entry
- * the region entry.
- */
- public void onEvent(LocalRegion owner, EntryEventImpl event, RegionEntry entry);
-
- /**
- * This method is invoked after an entry has been added, updated or destroyed
- * in a region for index maintenance. This method will commit the changes to
- * the indexes or may rollback some of the changes done in {@link #onEvent} if
- * the entry operation failed for some reason.
- *
- * @param owner
- * the {@link Region} that owns this event; will be different from
- * {@link EntryEvent#getRegion()} for partitioned regions
- * @param event
- * the {@link EntryEvent} representing the operation.
- * @param entry
- * the region entry.
- * @param success
- * true if the entry operation succeeded and false otherwise.
- */
- public void postEvent(LocalRegion owner, EntryEventImpl event,
- RegionEntry entry, boolean success);
-
- /**
- * Invoked to clear all index entries for a bucket before destroying it.
- *
- * @param baseBucket
- * the {@link BucketRegion} being destroyed
- * @param bucketId
- * the ID of the bucket being destroyed
- */
- public void clearIndexes(BucketRegion baseBucket, int bucketId);
-
- /**
- * Take a read lock indicating that bucket/region GII is in progress to block
- * index list updates during the process.
- *
- * This is required to be a reentrant lock. The corresponding write lock that
- * will be taken by the implementation internally should also be reentrant.
- *
- * @throws TimeoutException
- * in case of timeout in acquiring the lock
- */
- public void lockForGII() throws TimeoutException;
-
- /**
- * Release the read lock taken for GII by {@link #lockForGII()}.
- *
- * @throws LockNotHeldException
- * if the current thread does not hold the read lock for GII
- */
- public void unlockForGII() throws LockNotHeldException;
-
- /**
- * Take a read lock to wait for completion of any index load in progress
- * during initial DDL replay. This is required since no table level locks are
- * acquired during initial DDL replay to avoid blocking most (if not all) DMLs
- * in the system whenever a new node comes up.
- *
- * This will be removed at some point when we allow for concurrent loading and
- * initialization of index even while operations are in progress using
- * something similar to region GII token mode for indexes or equivalent (bug
- * 40899).
- *
- * This is required to be a reentrant lock. The corresponding write lock that
- * will be taken by the implementation internally should also be reentrant.
- *
- * @return true if locking was required and was acquired and false if it was
- * not required
- * @throws TimeoutException
- * in case of timeout in acquiring the lock
- */
- public boolean lockForIndexGII() throws TimeoutException;
-
- /**
- * Release the read lock taken for GII by {@link #lockForIndexGII()}.
- *
- * @throws LockNotHeldException
- * if the current thread does not hold the read lock
- */
- public void unlockForIndexGII() throws LockNotHeldException;
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionMessage.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionMessage.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionMessage.java
index 3a64d06..85a4269 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionMessage.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/DistributionMessage.java
@@ -192,7 +192,7 @@ public abstract class DistributionMessage
return true;
case DistributionManager.REGION_FUNCTION_EXECUTION_EXECUTOR:
// allow nested distributed functions to be executed from within the
- // execution of a function; this is required particularly for SQLFabric
+ // execution of a function
// TODO: this can later be adjusted to use a separate property
return false;
default:
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/InternalDistributedSystem.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/InternalDistributedSystem.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/InternalDistributedSystem.java
index 9d49b49..af81cc1 100755
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/InternalDistributedSystem.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/InternalDistributedSystem.java
@@ -184,9 +184,6 @@ public class InternalDistributedSystem
* a live locator can be contacted.
*/
private QuorumChecker quorumChecker;
-
- /** sqlfire disconnect listener */
- private DisconnectListener sqlfDisconnectListener;
/**
* A Constant that matches the ThreadGroup name of the shutdown hook.
@@ -2115,40 +2112,6 @@ public class InternalDistributedSystem
}
}
}
-
- /**
- * sqlfire's disconnect listener is invoked before the cache is closed when
- * there is a forced disconnect
- */
- public void setSqlfForcedDisconnectListener(DisconnectListener listener) {
- synchronized(this.listeners) {
- this.sqlfDisconnectListener = listener;
- }
- }
-
- private void notifySqlfForcedDisconnectListener() {
- if (this.sqlfDisconnectListener != null) {
- final boolean isDebugEnabled = logger.isDebugEnabled();
- try {
- if (isDebugEnabled) {
- logger.debug("notifying sql disconnect listener");
- }
- this.sqlfDisconnectListener.onDisconnect(this);
- } catch (VirtualMachineError e) {
- SystemFailure.initiateFailure(e);
- throw e;
- } catch (Throwable e) {
- SystemFailure.checkFailure();
- // TODO: should these be logged or ignored? We need to see them
- logger.info("", e);
- }
- if (isDebugEnabled) {
- logger.debug("finished notifying sql disconnect listener");
- }
- }
- }
-
-
/**
* Makes note of a <code>DisconnectListener</code> whose
@@ -2485,12 +2448,9 @@ public class InternalDistributedSystem
}
if (isDebugEnabled) {
- logger.debug("tryReconnect: forcedDisconnect={} sqlf listener={}", forcedDisconnect, this.sqlfDisconnectListener);
+ logger.debug("tryReconnect: forcedDisconnect={}", forcedDisconnect);
}
if (forcedDisconnect) {
- // allow the fabric-service to stop before dismantling everything
- notifySqlfForcedDisconnectListener();
-
if (config.getDisableAutoReconnect()) {
if (isDebugEnabled) {
logger.debug("tryReconnect: auto reconnect after forced disconnect is disabled");
@@ -2717,7 +2677,6 @@ public class InternalDistributedSystem
DM newDM = this.reconnectDS.getDistributionManager();
if (newDM instanceof DistributionManager) {
- // sqlfire will have already replayed DDL and recovered.
// Admin systems don't carry a cache, but for others we can now create
// a cache
if (((DistributionManager)newDM).getDMType() != DistributionManager.ADMIN_ONLY_DM_TYPE) {
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/ReplyProcessor21.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/ReplyProcessor21.java b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/ReplyProcessor21.java
index 49e11df..21171b2 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/ReplyProcessor21.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/distributed/internal/ReplyProcessor21.java
@@ -609,8 +609,7 @@ public class ReplyProcessor21
}
// start waiting for replies without explicitly waiting for all of them using
- // waitForReplies* methods; useful for streaming of results in function
- // execution and SQLFabric
+ // waitForReplies* methods; useful for streaming of results in function execution
public final void startWait() {
if (!this.waiting && stillWaiting()) {
preWait();
@@ -618,8 +617,7 @@ public class ReplyProcessor21
}
// end waiting for replies without explicitly invoking waitForReplies*
- // methods; useful for streaming of results in function execution and
- // SQLFabric
+ // methods; useful for streaming of results in function execution
public final void endWait(boolean doCleanup) {
try {
postWait();
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/DSCODE.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/DSCODE.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/DSCODE.java
index cef660a..583b2ab 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/DSCODE.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/DSCODE.java
@@ -322,25 +322,13 @@ public interface DSCODE {
*/
public static final byte HUGE_STRING = 89;
- /**
- * A header byte meaning that the next element in the stream is an
- * SQLFabric DataValueDescriptor array.
- *
- * @since GemFire 6.0
- */
- public static final byte SQLF_DVD_ARR = 90;
+ // 90 unused
/** A header byte meaning that the next element in the stream is a
* <code>byte[][]</code>. */
public static final byte ARRAY_OF_BYTE_ARRAYS = 91;
- /**
- * A header byte meaning that the next element in the stream is an
- * object of SQLFabric XML type.
- *
- * @since GemFire 6.5
- */
- public static final byte SQLF_XML = 92;
+ // 92 unused
/**
* A header byte meaning that the next element in the stream is a
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/DSFIDFactory.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/DSFIDFactory.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/DSFIDFactory.java
index 5f0002a..ab76d5c 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/DSFIDFactory.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/DSFIDFactory.java
@@ -1064,16 +1064,6 @@ public final class DSFIDFactory implements DataSerializableFixedID {
return readUndefined(in);
case RESULTS_BAG:
return readResultsBag(in);
- case SQLF_TYPE:
- return readSqlfMessage(in);
- case SQLF_DVD_OBJECT:
- return readDVD(in);
- case SQLF_GLOBAL_ROWLOC:
- return readGlobalRowLocation(in);
- case SQLF_GEMFIRE_KEY:
- return readGemFireKey(in);
- case SQLF_FORMATIBLEBITSET:
- return readSqlFormatibleBitSet(in);
case TOKEN_INVALID:
return Token.INVALID;
case TOKEN_LOCAL_INVALID:
@@ -1175,183 +1165,6 @@ public final class DSFIDFactory implements DataSerializableFixedID {
serializable.fromData(in);
return serializable;
}
- /**
- * Map for SQLFabric specific classIds to the {@link Class} of an
- * implementation. We maintain this separate map for SQLFabric to allow
- * separation of GemFire and SQLFabric trees. This is particularly required
- * when implementing a new <code>DistributionMessage</code>. This requires the
- * classes to have a zero argument constructor.
- */
- @SuppressWarnings("unchecked")
- private static Class<? extends DataSerializableFixedID>[] sqlfDSFIDClassMap =
- new Class[Byte.MAX_VALUE + 1 - Byte.MIN_VALUE];
-
- /**
- * Map for SQLFabric specific classIds to the {@link DataSerializableFixedID}
- * singleton instance. We maintain this separate map for SQLFabric to allow
- * separation of GemFire and SQLFabric trees. This approach is needed to
- * allow transparent serialization of singleton objects
- */
- private static DataSerializableFixedID[] sqlfDSFIDFixedInstanceMap =
- new DataSerializableFixedID[Byte.MAX_VALUE + 1 - Byte.MIN_VALUE];
-
- /**
- * Exception to indicate SQLFabric specific serialization exceptions
- */
- public static class SqlfSerializationException extends
- NotSerializableException {
-
- private static final long serialVersionUID = 5076687296705595933L;
-
- /**
- * Constructs a SqlfSerializationException object with message string.
- *
- * @param msg
- * exception message
- */
- public SqlfSerializationException(String msg) {
- super(msg);
- }
- }
-
- private static DataSerializableFixedID readSqlfMessage(DataInput in)
- throws IOException, ClassNotFoundException {
- // Use the first byte as the typeId of SQLFabric messages
- final byte sqlfId = in.readByte();
- final int sqlfIdIndex = sqlfId & 0xFF;
- final Class<? extends DataSerializableFixedID> sqlfClass =
- sqlfDSFIDClassMap[sqlfIdIndex];
- if (sqlfClass != null) {
- try {
- final DataSerializableFixedID sqlfObj = sqlfClass.newInstance();
- InternalDataSerializer.invokeFromData(sqlfObj, in);
- return sqlfObj;
- } catch (InstantiationException ex) {
- throw new SqlfSerializationException(LocalizedStrings.
- DSFIDFactory_COULD_NOT_INSTANTIATE_SQLFABRIC_MESSAGE_CLASSID_0_1
- .toLocalizedString(new Object[] { sqlfId, ex }));
- } catch (IllegalAccessException ex) {
- throw new SqlfSerializationException(LocalizedStrings.
- DSFIDFactory_ILLEGAL_ACCESS_FOR_SQLFABRIC_MESSAGE_CLASSID_0_1
- .toLocalizedString(new Object[] { sqlfId, ex }));
- }
- }//check for fixed instance
- DataSerializableFixedID fixedInstance = sqlfDSFIDFixedInstanceMap[sqlfIdIndex];
- if (fixedInstance != null) {
- InternalDataSerializer.invokeFromData(fixedInstance, in);
- return fixedInstance;
- }
- // if possible set the processor ID before throwing exception so
- // that failure exception is received by the sender
- if (sqlfIdIndex < 60) {
- try {
- // both SqlfMessage and SqlfReplyMessage write a byte for status first
- // followed by the processor ID, if any
- final byte status = in.readByte();
- int processorId = 0;
- if ((status & ReplyMessage.PROCESSOR_ID_FLAG) != 0) {
- processorId = in.readInt();
- }
- ReplyProcessor21.setMessageRPId(processorId);
- } catch (IOException ex) {
- // give up
- }
- }
- throw new SqlfSerializationException(
- LocalizedStrings.DSFIDFactory_UNKNOWN_CLASSID_0_FOR_SQLFABRIC_MESSAGE
- .toLocalizedString(sqlfId));
- }
-
- public static synchronized void registerSQLFabricClass(byte classId,
- Class<? extends DataSerializableFixedID> c) {
- final int sqlfIdIndex = classId & 0xFF;
- Class<?> oldClass = sqlfDSFIDClassMap[sqlfIdIndex];
- if (oldClass != null) {
- throw new AssertionError("DSFIDFactory#registerSQLFabricClass: cannot "
- + "re-register classId " + classId + " for class " + c
- + "; existing class: " + oldClass);
- }
- sqlfDSFIDClassMap[sqlfIdIndex] = c;
- }
-
- public static synchronized void registerSQLFabricFixedInstance(byte classId,
- DataSerializableFixedID fixedInstance)
- {
- final int sqlfIdIndex = classId & 0xFF;
- DataSerializableFixedID oldInstance = sqlfDSFIDFixedInstanceMap[sqlfIdIndex];
- if (oldInstance != null) {
- throw new AssertionError("DSFIDFactory#registerSQLFabricClass: cannot "
- + "re-register classId " + classId + " for instance " + fixedInstance
- + "; existing instance: " + oldInstance);
- }
- sqlfDSFIDFixedInstanceMap[sqlfIdIndex] = fixedInstance;
- }
-
- public static synchronized void unregisterSQLFabricClass(byte classId,
- Class<? extends DataSerializableFixedID> c) {
- final int sqlfIdIndex = classId & 0xFF;
- sqlfDSFIDClassMap[sqlfIdIndex] = null;
- }
-
- public static synchronized void unregisterSQLFabricFixedInstance(
- byte classId, Object dataSerializableFixedID)
- {
- final int sqlfIdIndex = classId & 0xFF;
- sqlfDSFIDFixedInstanceMap[sqlfIdIndex] = null;
- }
-
- public static synchronized void clearSQLFabricClasses() {
- for (int index = 0; index < sqlfDSFIDClassMap.length; ++index) {
- sqlfDSFIDClassMap[index] = null;
- }
- for (int index = 0; index < sqlfDSFIDFixedInstanceMap.length; ++index) {
- sqlfDSFIDFixedInstanceMap[index] = null;
- }
- }
-
- public interface DeserializeDVD {
-
- public DataSerializableFixedID getDSFID(DataInput in) throws IOException,
- ClassNotFoundException;
-
- public DataSerializableFixedID getGlobalRowLocation(DataInput in)
- throws IOException, ClassNotFoundException;
-
- public DataSerializableFixedID getGemFireKey(DataInput in)
- throws IOException, ClassNotFoundException;
-
- public DataSerializableFixedID getSqlPSQArgs(DataInput in)
- throws IOException, ClassNotFoundException;
-
- public DataSerializableFixedID getSqlFormatibleBitSet(DataInput in)
- throws IOException, ClassNotFoundException;
- }
-
- private static DeserializeDVD dvdDeserializer;
-
- private static DataSerializableFixedID readDVD(DataInput in)
- throws IOException, ClassNotFoundException {
- return dvdDeserializer.getDSFID(in);
- }
-
- private static DataSerializableFixedID readGlobalRowLocation(DataInput in)
- throws IOException, ClassNotFoundException {
- return dvdDeserializer.getGlobalRowLocation(in);
- }
-
- private static DataSerializableFixedID readGemFireKey(DataInput in)
- throws IOException, ClassNotFoundException {
- return dvdDeserializer.getGemFireKey(in);
- }
-
- private static DataSerializableFixedID readSqlFormatibleBitSet(DataInput in)
- throws IOException, ClassNotFoundException {
- return dvdDeserializer.getSqlFormatibleBitSet(in);
- }
-
- public static void registerDVDDeserializer(DeserializeDVD d) {
- dvdDeserializer = d;
- }
private static DataSerializableFixedID readSnappyCompressedCachedDeserializable(DataInput in)
throws IOException, ClassNotFoundException {
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/DataSerializableFixedID.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/DataSerializableFixedID.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/DataSerializableFixedID.java
index 0788503..d3e4846 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/DataSerializableFixedID.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/DataSerializableFixedID.java
@@ -136,8 +136,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte ADD_CACHESERVER_PROFILE_UPDATE = -118;
public static final byte SERVER_INTEREST_REGISTRATION_MESSAGE = -117;
public static final byte FILTER_PROFILE_UPDATE = -116;
- // [sumedh] below two IDs are no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
public static final byte JTA_AFTER_COMPLETION_MESSAGE = -115;
public static final byte JTA_BEFORE_COMPLETION_MESSAGE = -114;
public static final byte INVALIDATE_PARTITIONED_REGION_MESSAGE = -113;
@@ -169,8 +167,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte CREATE_REGION_MESSAGE = -89;
public static final byte DESTROY_PARTITIONED_REGION_MESSAGE = -88;
- // [sumedh] below two IDs are no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
public static final byte COMMIT_PROCESS_QUERY_MESSAGE = -87;
public static final byte COMMIT_PROCESS_QUERY_REPLY_MESSAGE = -86;
public static final byte DESTROY_REGION_WITH_CONTEXT_MESSAGE = -85;
@@ -182,8 +178,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte STATE_STABILIZATION_MESSAGE = -79;
public static final byte STATE_STABILIZED_MESSAGE = -78;
public static final byte CLIENT_MARKER_MESSAGE_IMPL = -77;
- // [sumedh] below three IDs are no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
public static final byte TX_LOCK_UPDATE_PARTICIPANTS_MESSAGE = -76;
public static final byte TX_ORIGINATOR_RECOVERY_MESSAGE = -75;
public static final byte TX_ORIGINATOR_RECOVERY_REPLY_MESSAGE = -74;
@@ -193,8 +187,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte NON_GRANTOR_DESTROYED_REPLY_MESSAGE = -70;
public static final byte TOMBSTONE_MESSAGE = -69;
public static final byte IDS_REGISTRATION_MESSAGE = -68;
- // [sumedh] below ID is no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
public static final byte TX_LOCK_UPDATE_PARTICIPANTS_REPLY_MESSAGE = -67;
public static final byte STREAMING_REPLY_MESSAGE = -66;
public static final byte PREFER_BYTES_CACHED_DESERIALIZABLE = -65;
@@ -223,8 +215,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte GET_ALL_SERVERS_REQUEST = -43;
public static final byte GET_ALL_SERVRES_RESPONSE = -42;
- // [sumedh] below two IDs are no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
public static final byte FIND_REMOTE_TX_REPLY = -41;
public static final byte FIND_REMOTE_TX_MESSAGE = -40;
@@ -257,40 +247,7 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte CLIENT_INTEREST_MESSAGE = -21;
- /**
- * A header byte meaning that the next element in the stream is a
- * type meant for SQL Fabric.
- */
- public static final byte SQLF_TYPE = -20;
-
- /**
- * A header byte meaning that the next element in the stream is a
- * DVD object used for SQL Fabric.
- */
- public static final byte SQLF_DVD_OBJECT = -19;
-
- /**
- * A header byte meaning that the next element in the stream is a
- * GlobalRowLocation object used for SQL Fabric.
- */
- public static final byte SQLF_GLOBAL_ROWLOC = -18;
-
- /**
- * A header byte meaning that the next element in the stream is a
- * GemFireKey object used for SQL Fabric.
- */
- public static final byte SQLF_GEMFIRE_KEY = -17;
-
- /**
- * A header byte meaning that the next element in the stream is a
- * FormatibleBitSet object in SQLFabric.
- */
- public static final byte SQLF_FORMATIBLEBITSET = -16;
-
- // IDs -15 .. -10 are not used in trunk yet but only in SQLFire, so marking
- // as used so that GemFire does not use them until the SQLF upmerge else
- // there will be big problems in backward compatibility after upmerge which
- // is required for both >= SQLF 1.1 and >= GFE 7.1
+ // IDs -20 .. -16 are not used
/**
* A header byte meaning that the next element in the stream is a
@@ -541,8 +498,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
// TXId
public static final byte TRANSACTION_ID = 109;
- // [sumedh] below ID is no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
public static final byte TX_COMMIT_MESSAGE = 110;
public static final byte HA_PROFILE = 111;
@@ -565,8 +520,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
public static final byte PR_GET_MESSAGE = 120;
- // [sumedh] below two IDs are no longer used in new TX model and will be
- // removed at some point after SQLF upmerge
// TXLockIdImpl
public static final byte TRANSACTION_LOCK_ID = 121;
// TXCommitMessage.CommitProcessForLockIdMessage
@@ -876,9 +829,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
* class. e.g. if msg format changed in version 80, create toDataPre_GFE_8_0_0_0, add
* Version.GFE_80 to the getSerializationVersions array and copy previous toData contents
* to this newly created toDataPre_GFE_X_X_X_X() method.
- * <p>
- * For GemFireXD use "GFXD" (or whatever we decide on as a product identifier
- * in Version) instead of "GFE" in method names.
* @throws IOException
* A problem occurs while writing to <code>out</code>
*/
@@ -894,10 +844,6 @@ public interface DataSerializableFixedID extends SerializationVersions {
* class. e.g. if msg format changed in version 80, create fromDataPre_GFE_8_0_0_0, add
* Version.GFE_80 to the getSerializationVersions array and copy previous fromData
* contents to this newly created fromDataPre_GFE_X_X_X_X() method.
- * <p>
- * For GemFireXD use "GFXD" (or whatever we decide on as a product identifier
- * in Version) instead of "GFE" in method names.
- *
* @throws IOException
* A problem occurs while reading from <code>in</code>
* @throws ClassNotFoundException
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/GemFireUtilLauncher.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/GemFireUtilLauncher.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/GemFireUtilLauncher.java
deleted file mode 100644
index f7a3628..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/GemFireUtilLauncher.java
+++ /dev/null
@@ -1,165 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.gemstone.gemfire.internal;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-import com.gemstone.gemfire.internal.i18n.LocalizedStrings;
-import com.gemstone.gemfire.admin.jmx.internal.AgentLauncher;
-import com.gemstone.gemfire.internal.SystemAdmin;
-import com.gemstone.gemfire.internal.cache.CacheServerLauncher;
-
-/**
- * Maps the GemFire utilities to the launcher that starts them and then invokes
- * that class's main method. Currently this class is only a base class for the
- * SqlFabric implementation, but eventually the gemfire scripts will be
- * consolidated to use this class.
- * Current GemFire utilities (as of 6.0):
- * <ul>
- * <li> agent
- * <li> gemfire
- * <li> cacheserver
- * </ul>
- * Usage:
- * notYetWritenScript <utility> <utility arguments>
- *
- * @since GemFire 6.0
- */
-public class GemFireUtilLauncher {
-
- /**
- * Returns a mapping of utility names to the class used to spawn them.
- * This method is overridedn by SqlFabricUtilLauncher to handle that product's
- * own utility tools.
- **/
- protected Map<String, Class<?>> getTypes() {
- Map<String, Class<?>> m = new HashMap<String, Class<?>>();
- m.put("agent", AgentLauncher.class);
- m.put("gemfire", SystemAdmin.class);
- m.put("cacheserver", CacheServerLauncher.class);
- return m;
- }
-
- /**
- * A simple constructor was needed so that {@link #usage(String)}
- * and {@link #getTypes()} could be non-static methods.
- **/
- protected GemFireUtilLauncher() {}
-
- /**
- * This method should be overridden if the name of the script is different.
- * @return the name of the script used to launch this utility.
- **/
- protected String scriptName() {
- return "gemfire";
- }
-
- /**
- * Print help information for this utility.
- * This method is intentionally non-static so that getTypes() can dynamically
- * display the list of supported utilites supported by child classes.
- * @param context print this message before displaying the regular help text
- **/
- private void usage(String context) {
- System.out.println(context);
- StringBuffer sb = new StringBuffer();
- sb.append("help|");
- for(String key : getTypes().keySet()) {
- sb.append(key).append("|");
- }
- sb.deleteCharAt(sb.length()-1); // remove the extra "|"
- String msg = LocalizedStrings.GemFireUtilLauncher_ARGUMENTS
- .toLocalizedString(new Object[] {scriptName(), sb});
- System.out.println(msg);
- System.exit(1);
- }
-
- /**
- * Spawn the utilty passed in as args[0] or display help information
- * @param args a utilty and the arguments to pass to it.
- */
- public static void main(String[] args) {
- GemFireUtilLauncher launcher = new GemFireUtilLauncher();
- launcher.validateArgs(args);
- launcher.invoke(args);
- }
-
- /**
- * Calls the <code>public static void main(String[] args)</code> method
- * of the class associated with the utility name.
- * @param args the first argument is the utility name, the remainder
- * comprises the arguments to be passed
- */
- protected void invoke(String[] args) {
- Class<?> clazz = getTypes().get(args[0]);
- if(clazz == null) {
- usage(LocalizedStrings.GemFireUtilLauncher_INVALID_UTILITY_0
- .toLocalizedString(args[0]));
- }
- int len = args.length-1;
- String[] argv = new String[len];
- System.arraycopy(args, 1, argv, 0, len);
-
- Exception ex = null;
- try {
- Method m = clazz.getDeclaredMethod("main", new Class[] {argv.getClass()});
- m.invoke(null, (Object)argv);
- } catch (SecurityException se) {
- ex = se;
- } catch (NoSuchMethodException nsme) {
- ex = nsme;
- } catch (IllegalArgumentException iae) {
- ex = iae;
- } catch (IllegalAccessException iae) {
- ex = iae;
- } catch (InvocationTargetException ite) {
- ex = ite;
- } finally {
- if (ex != null) {
- String msg = LocalizedStrings.GemFireUtilLauncher_PROBLEM_STARTING_0
- .toLocalizedString(args[0]);
- throw new RuntimeException(msg, ex);
- }
- }
- }
-
- /**
- * Look for variations on help and validate the arguments make sense.
- * A usage mesage is displayed if necesary.
- * The following forms of help are accepted:
- * <code>--help, -help, /help, --h, -h, /h</code>
- **/
- protected void validateArgs(String[] args) {
- if (args.length == 0) {
- usage(LocalizedStrings.GemFireUtilLauncher_MISSING_COMMAND
- .toLocalizedString());
- }
- //Match all major variations on --help
- Pattern help = Pattern.compile("(?:--|-|/){0,1}h(?:elp)*",
- Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE);
- Matcher matcher = help.matcher(args[0]);
-
- if( matcher.matches() ) {
- usage(LocalizedStrings.GemFireUtilLauncher_HELP.toLocalizedString());
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/InternalDataSerializer.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/InternalDataSerializer.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/InternalDataSerializer.java
index 0df656a..33cd410 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/InternalDataSerializer.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/InternalDataSerializer.java
@@ -74,11 +74,6 @@ public abstract class InternalDataSerializer extends DataSerializer implements D
*/
private static final ConcurrentHashMap<String, DataSerializer> classesToSerializers = new ConcurrentHashMap<String, DataSerializer>();
- // used by sqlFire
- public static ConcurrentHashMap<String, DataSerializer> getClassesToSerializers() {
- return classesToSerializers;
- }
-
private static final String serializationVersionTxt = System.getProperty(DistributionConfig.GEMFIRE_PREFIX + "serializationVersion");
/**
* Any time new serialization format is added then a new enum needs to be added here.
@@ -2791,8 +2786,6 @@ public abstract class InternalDataSerializer extends DataSerializer implements D
return DSFIDFactory.create(in.readInt(), in);
case DS_NO_FIXED_ID:
return readDataSerializableFixedID(in);
- case SQLF_DVD_ARR:
- return dvddeserializer.fromData(in);
case NULL:
return null;
case NULL_STRING:
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
index 7cb7df1..5e561ed 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/SystemAdmin.java
@@ -1256,8 +1256,6 @@ public class SystemAdmin {
}
public SystemAdmin() {
- // no instances allowed
- // [sumedh] now is overridden by SQLF
// register DSFID types first; invoked explicitly so that all message type
// initializations do not happen in first deserialization on a possibly
// "precious" thread
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/Version.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/Version.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/Version.java
index 513b5bd..1b8543e 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/Version.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/Version.java
@@ -56,7 +56,7 @@ public final class Version implements Comparable<Version> {
/**
* Set to non-null if the underlying GemFire version is different from product
- * version (e.g. for SQLFire)
+ * version
*/
private Version gemfireVersion;
@@ -142,19 +142,6 @@ public final class Version implements Comparable<Version> {
public static final Version GFE_701 = new Version("GFE", "7.0.1", (byte)7,
(byte)0, (byte)1, (byte)0, GFE_701_ORDINAL);
- /**
- * SQLFire 1.1 has a separate version since it has changed the RowFormatter
- * formatting for ALTER TABLE add/drop column support. However, its underlying
- * GemFire version will remain at GFE_7x.
- *
- * This version is an intermediate one created to test rolling upgrades. It is
- * compatible with <code>SQLF_11</code> in all respects except for artifical
- * changes in a couple of P2P messages and marking as compatible with GFE_701.
- *
- * This is the GemFire conterpart of SQLF_1099 for testing rolling upgrades
- * and it uses the same ordinal as GFE_701 to maintain compatibility with the
- * ordinals being used on SQLFire branch.
- */
private static final byte GFE_7099_ORDINAL = 21;
public static final Version GFE_7099 = new Version("GFE", "7.0.99", (byte)7,
@@ -199,7 +186,7 @@ public final class Version implements Comparable<Version> {
(byte)0, (byte)0, (byte)0, GFE_90_ORDINAL);
/**
- * This constant must be set to the most current version of GFE/SQLF.
+ * This constant must be set to the most current version of the product.
* !!! NOTE: update HIGHEST_VERSION when changing CURRENT !!!
*/
public static final Version CURRENT = GFE_90;
@@ -261,8 +248,8 @@ public final class Version implements Comparable<Version> {
if (ordinal == TOKEN_ORDINAL) {
return TOKEN;
}
- // for GFE clients also check that there must be a commands object mapping
- // for processing (SQLF product versions will not work)
+ // for clients also check that there must be a commands object mapping
+ // for processing
if ((VALUES.length < ordinal + 1) || VALUES[ordinal] == null
|| (forGFEClients && CommandInitializer.getCommands(VALUES[ordinal]) == null)) {
throw new UnsupportedVersionException(
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/VersionedDataStream.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/VersionedDataStream.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/VersionedDataStream.java
index 7c5ca11..3e8bd98 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/VersionedDataStream.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/VersionedDataStream.java
@@ -25,10 +25,7 @@ import com.gemstone.gemfire.DataSerializable;
/**
* An extension to {@link DataOutput}, {@link DataInput} used internally in
* product to indicate that the input/output stream is attached to a GemFire
- * peer having a different version. See the spec on rolling upgrades for more
- * details: <a
- * href="https://wiki.gemstone.com/display/SQLF/Rolling+upgrades">Rolling
- * Upgrades</a>.
+ * peer having a different version.
*
* Internal product classes that implement {@link DataSerializableFixedID} and
* {@link DataSerializable} and change serialization format must check this on
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractDiskRegionEntry.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractDiskRegionEntry.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractDiskRegionEntry.java
index b65b7ad..41cd110 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractDiskRegionEntry.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractDiskRegionEntry.java
@@ -67,9 +67,4 @@ public abstract class AbstractDiskRegionEntry
GatewaySenderEventImpl.release(this._getValue()); // OFFHEAP _getValue ok
}
}
- @Override
- public void afterValueOverflow(RegionEntryContext context) {
- //NO OP
- //Overridden in sqlf RegionEntry
- }
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionEntry.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionEntry.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionEntry.java
index 35f16bc..6ee4c17 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionEntry.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionEntry.java
@@ -150,7 +150,7 @@ public abstract class AbstractRegionEntry implements RegionEntry,
// by the RegionMap. It is unclear why this code is needed. ARM destroy
// does this also and we are now doing it as phase3 of the ARM destroy.
removePhase2();
- rgn.getRegionMap().removeEntry(event.getKey(), this, true, event, rgn, rgn.getIndexUpdater());
+ rgn.getRegionMap().removeEntry(event.getKey(), this, true, event, rgn);
}
}
}
@@ -291,10 +291,6 @@ public abstract class AbstractRegionEntry implements RegionEntry,
}
}
- final boolean isEagerDeserialize = dst.isEagerDeserialize();
- if (isEagerDeserialize) {
- dst.clearEagerDeserialize();
- }
dst.setLastModified(mgr, getLastModified()); // fix for bug 31059
if (v == Token.INVALID) {
dst.setInvalid();
@@ -307,17 +303,11 @@ public abstract class AbstractRegionEntry implements RegionEntry,
}
else if (v instanceof CachedDeserializable) {
// don't serialize here if it is not already serialized
-// if(v instanceof ByteSource && CachedDeserializableFactory.preferObject()) {
-// // For SQLFire we prefer eager deserialized
-// dst.setEagerDeserialize();
-// }
CachedDeserializable cd = (CachedDeserializable) v;
if (!cd.isSerialized()) {
dst.value = cd.getDeserializedForReading();
} else {
- /*if (v instanceof ByteSource && CachedDeserializableFactory.preferObject()) {
- dst.value = v;
- } else */ {
+ {
Object tmp = cd.getValue();
if (tmp instanceof byte[]) {
byte[] bb = (byte[]) tmp;
@@ -352,11 +342,7 @@ public abstract class AbstractRegionEntry implements RegionEntry,
return false;
}
}
- if (CachedDeserializableFactory.preferObject()) {
- dst.value = preparedValue;
- dst.setEagerDeserialize();
- }
- else {
+ {
try {
HeapDataOutputStream hdos = new HeapDataOutputStream(Version.CURRENT);
BlobHelper.serializeTo(preparedValue, hdos);
@@ -412,7 +398,7 @@ public abstract class AbstractRegionEntry implements RegionEntry,
ReferenceCountHelper.setReferenceCountOwner(null);
return null;
} else {
- result = OffHeapHelper.copyAndReleaseIfNeeded(result); // sqlf does not dec ref count in this call
+ result = OffHeapHelper.copyAndReleaseIfNeeded(result);
ReferenceCountHelper.setReferenceCountOwner(null);
setRecentlyUsed();
return result;
@@ -749,9 +735,7 @@ public abstract class AbstractRegionEntry implements RegionEntry,
}
else {
FilterProfile fp = region.getFilterProfile();
- // rdubey: Old value also required for SqlfIndexManager.
- if (fp != null && ((fp.getCqCount() > 0) || expectedOldValue != null
- || event.getRegion().getIndexUpdater() != null)) {
+ if (fp != null && ((fp.getCqCount() > 0) || expectedOldValue != null)) {
//curValue = getValue(region); can cause deadlock will fault in the value
// and will confuse LRU. rdubey.
curValue = getValueOnDiskOrBuffer(region);
@@ -1393,10 +1377,6 @@ public abstract class AbstractRegionEntry implements RegionEntry,
}
}
}
- /**
- * soubhik: this method is overridden in sqlf flavor of entries.
- * Instead of overriding this method; override areSetValue.
- */
protected final void _setValue(Object val) {
setValueField(val);
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionMap.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionMap.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionMap.java
index a512750..bc919fc 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionMap.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/AbstractRegionMap.java
@@ -22,7 +22,6 @@ import com.gemstone.gemfire.InvalidDeltaException;
import com.gemstone.gemfire.cache.*;
import com.gemstone.gemfire.cache.query.IndexMaintenanceException;
import com.gemstone.gemfire.cache.query.QueryException;
-import com.gemstone.gemfire.cache.query.internal.IndexUpdater;
import com.gemstone.gemfire.cache.query.internal.index.IndexManager;
import com.gemstone.gemfire.cache.query.internal.index.IndexProtocol;
import com.gemstone.gemfire.distributed.DistributedMember;
@@ -31,7 +30,6 @@ import com.gemstone.gemfire.distributed.internal.membership.InternalDistributedM
import com.gemstone.gemfire.internal.Assert;
import com.gemstone.gemfire.internal.cache.DiskInitFile.DiskRegionFlag;
import com.gemstone.gemfire.internal.cache.FilterRoutingInfo.FilterInfo;
-import com.gemstone.gemfire.internal.cache.delta.Delta;
import com.gemstone.gemfire.internal.cache.ha.HAContainerWrapper;
import com.gemstone.gemfire.internal.cache.ha.HARegionQueue;
import com.gemstone.gemfire.internal.cache.lru.LRUEntry;
@@ -69,21 +67,12 @@ import java.util.concurrent.atomic.AtomicInteger;
*
*/
-//Asif: In case of sqlFabric System, we are creating a different set of RegionEntry
-// which are derived from the concrete GFE RegionEntry classes.
-// In future if any new concrete RegionEntry class is defined, the new SqlFabric
-// RegionEntry Classes need to be created. There is a junit test in sqlfabric
-// which checks for RegionEntry classes of GFE and validates the same with its
-// own classes.
-
public abstract class AbstractRegionMap implements RegionMap {
private static final Logger logger = LogService.getLogger();
/** The underlying map for this region. */
protected CustomEntryConcurrentHashMap<Object, Object> map;
- /** An internal Listener for index maintenance for SQLFabric. */
- private final IndexUpdater indexUpdater;
/**
* This test hook is used to force the conditions for defect 48182.
@@ -96,16 +85,6 @@ public abstract class AbstractRegionMap implements RegionMap {
private transient Object owner; // the region that owns this map
protected AbstractRegionMap(InternalRegionArguments internalRegionArgs) {
- if (internalRegionArgs != null) {
- this.indexUpdater = internalRegionArgs.getIndexUpdater();
- }
- else {
- this.indexUpdater = null;
- }
- }
-
- public final IndexUpdater getIndexUpdater() {
- return this.indexUpdater;
}
protected void initialize(Object owner,
@@ -299,28 +278,17 @@ public abstract class AbstractRegionMap implements RegionMap {
}
public final void removeEntry(Object key, RegionEntry re, boolean updateStat,
- EntryEventImpl event, final LocalRegion owner,
- final IndexUpdater indexUpdater) {
+ EntryEventImpl event, final LocalRegion owner) {
boolean success = false;
if (re.isTombstone()&& _getMap().get(key) == re) {
logger.fatal(LocalizedMessage.create(LocalizedStrings.AbstractRegionMap_ATTEMPT_TO_REMOVE_TOMBSTONE), new Exception("stack trace"));
return; // can't remove tombstones except from the tombstone sweeper
}
- try {
- if (indexUpdater != null) {
- indexUpdater.onEvent(owner, event, re);
- }
-
- if (_getMap().remove(key, re)) {
- re.removePhase2();
- success = true;
- if (updateStat) {
- incEntryCount(-1);
- }
- }
- } finally {
- if (indexUpdater != null) {
- indexUpdater.postEvent(owner, event, re, success);
+ if (_getMap().remove(key, re)) {
+ re.removePhase2();
+ success = true;
+ if (updateStat) {
+ incEntryCount(-1);
}
}
}
@@ -759,7 +727,6 @@ public abstract class AbstractRegionMap implements RegionMap {
boolean deferLRUCallback,
VersionTag entryVersion, InternalDistributedMember sender, boolean isSynchronizing)
{
- assert indexUpdater == null : "indexUpdater should only exist if sqlfire";
boolean result = false;
boolean done = false;
boolean cleared = false;
@@ -1377,8 +1344,7 @@ public abstract class AbstractRegionMap implements RegionMap {
if (!inTokenMode) {
if ( re.getVersionStamp() == null) {
re.removePhase2();
- removeEntry(event.getKey(), re, true, event, owner,
- indexUpdater);
+ removeEntry(event.getKey(), re, true, event, owner);
removed = true;
}
}
@@ -1399,8 +1365,7 @@ public abstract class AbstractRegionMap implements RegionMap {
owner.recordEvent(event);
if (re.getVersionStamp() == null) {
re.removePhase2();
- removeEntry(event.getKey(), re, true, event, owner,
- indexUpdater);
+ removeEntry(event.getKey(), re, true, event, owner);
lruEntryDestroy(re);
} else {
if (re.isTombstone()) {
@@ -1430,8 +1395,7 @@ public abstract class AbstractRegionMap implements RegionMap {
finally {
if (re.isRemoved() && !re.isTombstone()) {
if (!removed) {
- removeEntry(event.getKey(), re, true, event, owner,
- indexUpdater);
+ removeEntry(event.getKey(), re, true, event, owner);
}
}
}
@@ -1543,7 +1507,6 @@ public abstract class AbstractRegionMap implements RegionMap {
try {
synchronized (re) {
if (!re.isRemoved() || re.isTombstone()) {
- EntryEventImpl sqlfEvent = null;
Object oldValue = re.getValueInVM(owner);
final int oldSize = owner.calculateRegionEntryValueSize(re);
// Create an entry event only if the calling context is
@@ -1554,15 +1517,10 @@ public abstract class AbstractRegionMap implements RegionMap {
key, null, txId, txEvent, eventId, aCallbackArgument, filterRoutingInfo, bridgeContext, txEntryState, versionTag, tailKey);
try {
- if (/* owner.isUsedForPartitionedRegionBucket() && */
- indexUpdater != null) {
- sqlfEvent = cbEvent;
- } else {
if (owner.isUsedForPartitionedRegionBucket()) {
txHandleWANEvent(owner, cbEvent, txEntryState);
}
cbEvent.setRegionEntry(re);
- }
cbEvent.setOldValue(oldValue);
if (isDebugEnabled) {
logger.debug("txApplyDestroy cbEvent={}", cbEvent);
@@ -1583,11 +1541,7 @@ public abstract class AbstractRegionMap implements RegionMap {
}
else {
if (!re.isTombstone()) {
- if (sqlfEvent != null) {
- re.removePhase1(owner, false); // fix for bug 43063
- re.removePhase2();
- removeEntry(key, re, true, sqlfEvent, owner, indexUpdater);
- } else {
+ {
if (shouldPerformConcurrencyChecks(owner, cbEvent) && cbEvent.getVersionTag() != null) {
re.makeTombstone(owner, cbEvent.getVersionTag());
} else {
@@ -2616,80 +2570,6 @@ public abstract class AbstractRegionMap implements RegionMap {
return retVal;
}
- protected static final MapCallbackAdapter<Object, Object, Object, Object>
- listOfDeltasCreator = new MapCallbackAdapter<Object, Object,
- Object, Object>() {
- @Override
- public Object newValue(Object key, Object context, Object createParams,
- final MapResult result) {
- return new ListOfDeltas(4);
- }
- };
-
- /**
- * Neeraj: The below if block is to handle the special
- * scenario witnessed in Sqlfabric for now. (Though its
- * a general scenario). The scenario is that the updates start coming
- * before the base value reaches through GII. In that scenario the updates
- * essentially the deltas are added to a list and kept as oldValue in the
- * map and this method returns. When through GII the actual base value arrives
- * these updates or deltas are applied on it and the new value thus got is put
- * in the map.
- * @param event
- * @param ifOld
- * @return true if delta was enqued
- */
- private boolean enqueDelta(EntryEventImpl event, boolean ifOld) {
- final IndexUpdater indexManager = getIndexUpdater();
- LocalRegion owner = _getOwner();
- if (indexManager != null && !owner.isInitialized() && event.hasDelta()) {
- boolean isOldValueDelta = true;
- try {
- if (ifOld) {
- final Delta delta = event.getDeltaNewValue();
- RegionEntry re = getOrCreateRegionEntry(owner, event, null,
- listOfDeltasCreator, false, false);
- assert re != null;
- synchronized (re) {
- @Retained @Released Object oVal = re.getValueOffHeapOrDiskWithoutFaultIn(owner);
- if (oVal != null) {
- try {
- if (oVal instanceof ListOfDeltas) {
- if (logger.isDebugEnabled()) {
- logger.debug("basicPut: adding delta to list of deltas: {}", delta);
- }
- ((ListOfDeltas)oVal).merge(delta);
- @Retained Object newVal = ((AbstractRegionEntry)re).prepareValueForCache(owner, oVal, true);
- re.setValue(owner, newVal); // TODO:KIRK:48068 prevent orphan
- }
- else {
- isOldValueDelta = false;
- }
- }finally {
- OffHeapHelper.release(oVal);
- }
- }
- else {
- if (logger.isDebugEnabled()) {
- logger.debug("basicPut: new list of deltas with delta: {}", delta);
- }
- @Retained Object newVal = new ListOfDeltas(delta);
- // TODO no need to call AbstractRegionMap.prepareValueForCache here?
- newVal = ((AbstractRegionEntry)re).prepareValueForCache(owner, newVal, true);
- re.setValue(owner, newVal); // TODO:KIRK:48068 prevent orphan
- }
- }
- }
- } catch (RegionClearedException ex) {
- // Neeraj: We can just ignore this exception because we are returning after this block
- }
- if (isOldValueDelta) {
- return true;
- }
- }
- return false;
- }
-
/*
* returns null if the operation fails
*/
@@ -2747,31 +2627,11 @@ public abstract class AbstractRegionMap implements RegionMap {
// reference of the diskSegmentRegion as a ThreadLocal so that if the diskRegionSegment
// is later changed by another thread, we can do the necessary.
boolean uninitialized = !owner.isInitialized();
- // SqlFabric Changes - BEGIN
- if (enqueDelta(event, ifOld)) {
- return null;
- }
-
- final IndexUpdater indexManager = getIndexUpdater();
-
- boolean sqlfIndexLocked = false;
- // SqlFabric Changes - END
-
boolean retrieveOldValueForDelta = event.getDeltaBytes() != null
&& event.getRawNewValue() == null;
lockForCacheModification(owner, event);
IndexManager oqlIndexManager = null;
try {
- // take read lock for SQLF index initializations if required; the index
- // GII lock is for any updates that may come in while index is being
- // loaded during replay see bug #41377; this will go away once we allow
- // for indexes to be loaded completely in parallel (#40899); need to
- // take this lock before the RegionEntry lock else a deadlock can happen
- // between this thread and index loading thread that will first take the
- // corresponding write lock on the IndexUpdater
- if (indexManager != null) {
- sqlfIndexLocked = indexManager.lockForIndexGII();
- }
// Fix for Bug #44431. We do NOT want to update the region and wait
// later for index INIT as region.clear() can cause inconsistency if
// happened in parallel as it also does index INIT.
@@ -2883,8 +2743,7 @@ public abstract class AbstractRegionMap implements RegionMap {
} finally {
OffHeapHelper.release(oldValueForDelta);
if (re != null && !onlyExisting && !isOpComplete(re, event)) {
- owner.cleanUpOnIncompleteOp(event, re, eventRecorded,
- false/* updateStats */, replaceOnClient);
+ owner.cleanUpOnIncompleteOp(event, re);
}
else if (re != null && owner.isUsedForPartitionedRegionBucket()) {
BucketRegion br = (BucketRegion)owner;
@@ -2902,9 +2761,6 @@ public abstract class AbstractRegionMap implements RegionMap {
throw dae;
} finally {
releaseCacheModificationLock(owner, event);
- if (sqlfIndexLocked) {
- indexManager.unlockForIndexGII();
- }
if (oqlIndexManager != null) {
oqlIndexManager.countDownIndexUpdaters();
}
@@ -2914,22 +2770,6 @@ public abstract class AbstractRegionMap implements RegionMap {
final boolean invokeListeners = event.basicGetNewValue() != Token.TOMBSTONE;
owner.basicPutPart3(event, result, !uninitialized,
lastModifiedTime, invokeListeners, ifNew, ifOld, expectedOldValue, requireOldValue);
- } catch (EntryExistsException eee) {
- // SQLFabric changes BEGIN
- // ignore EntryExistsException in distribution from a non-empty
- // region since actual check will be done in this put itself
- // and it can happen in distribution if put comes in from
- // GII as well as distribution channel
- if (indexManager != null) {
- if (logger.isTraceEnabled()) {
- logger.trace("basicPut: ignoring EntryExistsException in distribution {}", eee);
- }
- }
- else {
- // can this happen for non-SQLFabric case?
- throw eee;
- }
- // SQLFabric changes END
} finally {
// bug 32589, post update may throw an exception if exception occurs
// for any recipients
@@ -2985,23 +2825,11 @@ public abstract class AbstractRegionMap implements RegionMap {
return true;
}
- // Asif: If the new value is an instance of SerializableDelta, then
- // the old value requirement is a must & it needs to be faulted in
- // if overflown to disk without affecting LRU? This is needed for
- // Sql Fabric.
- // [sumedh] store both the value in VM and the value in VM or disk;
- // the former is used for updating the VM size calculations, while
- // the latter is used in other places like passing to
- // SqlfIndexManager or setting the old value in the event; this is
- // required since using the latter for updating the size
- // calculations will be incorrect in case the value was read from
- // disk but not brought into the VM like what getValueInVMOrDisk
- // method does when value is not found in VM
// PRECONDITION: caller must be synced on re
private void setOldValueInEvent(EntryEventImpl event, RegionEntry re, boolean cacheWrite, boolean requireOldValue) {
- boolean needToSetOldValue = getIndexUpdater() != null || cacheWrite || requireOldValue || event.getOperation().guaranteesOldValue();
+ boolean needToSetOldValue = cacheWrite || requireOldValue || event.getOperation().guaranteesOldValue();
if (needToSetOldValue) {
- if (event.hasDelta() || event.getOperation().guaranteesOldValue()) {
+ if (event.getOperation().guaranteesOldValue()) {
// In these cases we want to even get the old value from disk if it is not in memory
ReferenceCountHelper.skipRefCountTracking();
@Released Object oldValueInVMOrDisk = re.getValueOffHeapOrDiskWithoutFaultIn(event.getLocalRegion());
@@ -3186,7 +3014,6 @@ public abstract class AbstractRegionMap implements RegionMap {
final boolean isClientTXOriginator = owner.cache.isClient() && !hasRemoteOrigin;
final boolean isRegionReady = owner.isInitialized();
@Released EntryEventImpl cbEvent = null;
- @Released EntryEventImpl sqlfEvent = null;
boolean invokeCallbacks = shouldCreateCBEvent(owner, isRegionReady);
boolean cbEventInPending = false;
cbEvent = createCBEvent(owner, putOp, key, newValue, txId,
@@ -3202,12 +3029,6 @@ public abstract class AbstractRegionMap implements RegionMap {
txHandleWANEvent(owner, cbEvent, txEntryState);
}
- if (/*owner.isUsedForPartitionedRegionBucket() && */
- (getIndexUpdater() != null ||
- (newValue instanceof com.gemstone.gemfire.internal.cache.delta.Delta))) {
- sqlfEvent = createCBEvent(owner, putOp, key, newValue, txId,
- txEvent, eventId, aCallbackArgument,filterRoutingInfo,bridgeContext, txEntryState, versionTag, tailKey);
- }
boolean opCompleted = false;
// Fix for Bug #44431. We do NOT want to update the region and wait
// later for index INIT as region.clear() can cause inconsistency if
@@ -3240,9 +3061,6 @@ public abstract class AbstractRegionMap implements RegionMap {
cbEvent.setRegionEntry(re);
cbEvent.setOldValue(re.getValueInVM(owner)); // OFFHEAP eei
}
- if (sqlfEvent != null) {
- sqlfEvent.setOldValue(re.getValueInVM(owner)); // OFFHEAP eei
- }
boolean clearOccured = false;
// Set RegionEntry updateInProgress
@@ -3259,14 +3077,8 @@ public abstract class AbstractRegionMap implements RegionMap {
}
re.setValueResultOfSearch(putOp.isNetSearch());
try {
- // Rahul: applies the delta and sets the new value in
- // region entry (required for sqlfabric delta).
processAndGenerateTXVersionTag(owner, cbEvent, re, txEntryState);
- if (newValue instanceof com.gemstone.gemfire.internal.cache.delta.Delta
- && sqlfEvent != null) {
- //cbEvent.putExistingEntry(owner, re);
- sqlfEvent.putExistingEntry(owner, re);
- } else {
+ {
re.setValue(owner, re.prepareValueForCache(owner, newValue, cbEvent, !putOp.isCreate()));
}
if (putOp.isCreate()) {
@@ -3276,9 +3088,7 @@ public abstract class AbstractRegionMap implements RegionMap {
// an issue with normal GFE Delta and will have to be fixed
// in a similar manner and may be this fix the the one for
// other delta can be combined.
- if (sqlfEvent != null) {
- owner.updateSizeOnPut(key, oldSize, sqlfEvent.getNewValueBucketSize());
- } else {
+ {
owner.updateSizeOnPut(key, oldSize, owner.calculateRegionEntryValueSize(re));
}
}
@@ -3350,9 +3160,6 @@ public abstract class AbstractRegionMap implements RegionMap {
cbEvent.setRegionEntry(oldRe);
cbEvent.setOldValue(oldRe.getValueInVM(owner)); // OFFHEAP eei
}
- if (sqlfEvent != null) {
- sqlfEvent.setOldValue(oldRe.getValueInVM(owner)); // OFFHEAP eei
- }
boolean clearOccured = false;
// Set RegionEntry updateInProgress
if (owner.indexMaintenanceSynchronous) {
@@ -3370,11 +3177,7 @@ public abstract class AbstractRegionMap implements RegionMap {
try {
processAndGenerateTXVersionTag(owner, cbEvent, oldRe, txEntryState);
boolean wasTombstone = oldRe.isTombstone();
- if (newValue instanceof com.gemstone.gemfire.internal.cache.delta.Delta
- && sqlfEvent != null ) {
- //cbEvent.putExistingEntry(owner, oldRe);
- sqlfEvent.putExistingEntry(owner, oldRe);
- } else {
+ {
oldRe.setValue(owner, oldRe.prepareValueForCache(owner, newValue, cbEvent, !putOp.isCreate()));
if (wasTombstone) {
owner.unscheduleTombstone(oldRe);
@@ -3387,9 +3190,7 @@ public abstract class AbstractRegionMap implements RegionMap {
// an issue with normal GFE Delta and will have to be fixed
// in a similar manner and may be this fix the the one for
// other delta can be combined.
- if (sqlfEvent != null) {
- owner.updateSizeOnPut(key, oldSize, sqlfEvent.getNewValueBucketSize());
- } else {
+ {
owner.updateSizeOnPut(key, oldSize, owner.calculateRegionEntryValueSize(oldRe));
}
}
@@ -3452,9 +3253,7 @@ public abstract class AbstractRegionMap implements RegionMap {
try {
processAndGenerateTXVersionTag(owner, cbEvent, newRe, txEntryState);
- if (sqlfEvent != null ) {
- sqlfEvent.putNewEntry(owner,newRe);
- } else {
+ {
newRe.setValue(owner, newRe.prepareValueForCache(owner, newValue, cbEvent, !putOp.isCreate()));
}
owner.updateSizeOnCreate(newRe.getKey(), owner.calculateRegionEntryValueSize(newRe));
@@ -3514,7 +3313,6 @@ public abstract class AbstractRegionMap implements RegionMap {
}
} finally {
if (!cbEventInPending) cbEvent.release();
- if (sqlfEvent != null) sqlfEvent.release();
}
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketAdvisor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketAdvisor.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketAdvisor.java
index f8e04a6..d085c52 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketAdvisor.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketAdvisor.java
@@ -192,7 +192,6 @@ public class BucketAdvisor extends CacheDistributionAdvisor {
return advisor;
}
- // For SQLFabric ALTER TABLE that may change colocation
public void resetParentAdvisor(int bucketId) {
PartitionedRegion colocatedRegion = ColocationHelper
.getColocatedRegion(this.pRegion);
@@ -1117,11 +1116,6 @@ public class BucketAdvisor extends CacheDistributionAdvisor {
// only one thread should be attempting to volunteer at one time
return;
}
- // if member is still not initialized then don't volunteer for primary
- final GemFireCacheImpl cache = (GemFireCacheImpl)getBucket().getCache();
- if (!cache.doVolunteerForPrimary(this)) {
- return;
- }
if (this.volunteeringDelegate == null) {
this.volunteeringDelegate = new VolunteeringDelegate();
}
http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/880f8648/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketRegion.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketRegion.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketRegion.java
index c87cc3d..e0f6fa2 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketRegion.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/cache/BucketRegion.java
@@ -19,7 +19,6 @@ package com.gemstone.gemfire.internal.cache;
import com.gemstone.gemfire.*;
import com.gemstone.gemfire.cache.*;
import com.gemstone.gemfire.cache.partition.PartitionListener;
-import com.gemstone.gemfire.cache.query.internal.IndexUpdater;
import com.gemstone.gemfire.distributed.DistributedMember;
import com.gemstone.gemfire.distributed.DistributedSystem;
import com.gemstone.gemfire.distributed.internal.AtomicLongWithTerminalState;
@@ -34,8 +33,15 @@ import com.gemstone.gemfire.internal.Version;
import com.gemstone.gemfire.internal.cache.BucketAdvisor.BucketProfile;
import com.gemstone.gemfire.internal.cache.FilterRoutingInfo.FilterInfo;
import com.gemstone.gemfire.internal.cache.control.MemoryEvent;
-import com.gemstone.gemfire.internal.cache.delta.Delta;
-import com.gemstone.gemfire.internal.cache.partitioned.*;
+import com.gemstone.gemfire.internal.cache.partitioned.Bucket;
+import com.gemstone.gemfire.internal.cache.partitioned.DestroyMessage;
+import com.gemstone.gemfire.internal.cache.partitioned.InvalidateMessage;
+import com.gemstone.gemfire.internal.cache.partitioned.LockObject;
+import com.gemstone.gemfire.internal.cache.partitioned.PRTombstoneMessage;
+import com.gemstone.gemfire.internal.cache.partitioned.PartitionMessage;
+import com.gemstone.gemfire.internal.cache.partitioned.PutAllPRMessage;
+import com.gemstone.gemfire.internal.cache.partitioned.PutMessage;
+import com.gemstone.gemfire.internal.cache.partitioned.RemoveAllPRMessage;
import com.gemstone.gemfire.internal.cache.tier.sockets.CacheClientNotifier;
import com.gemstone.gemfire.internal.cache.tier.sockets.ClientProxyMembershipID;
import com.gemstone.gemfire.internal.cache.tier.sockets.ClientTombstoneMessage;
@@ -1470,7 +1476,6 @@ implements Bucket
.append("[path='").append(getFullPath())
.append(";serial=").append(getSerialNumber())
.append(";primary=").append(getBucketAdvisor().getProxyBucketRegion().isPrimary())
- .append(";indexUpdater=").append(getIndexUpdater())
.append("]")
.toString();
}
@@ -1695,10 +1700,8 @@ implements Bucket
setDeltaIfNeeded(event);
}
if (msg != null) {
- // The primary bucket member which is being modified remotely by a GemFire
+ // The primary bucket member which is being modified remotely by a
// thread via a received PartitionedMessage
- //Asif: Some of the adjunct recepients include those members which
- // are sqlFabricHub & would need old value along with news
msg = msg.getMessageForRelayToListeners(event, adjunctRecipients);
msg.setSender(this.partitionedRegion.getDistributionManager()
.getDistributionManagerId());
@@ -1987,28 +1990,6 @@ implements Bucket
public CacheWriter basicGetWriter() {
return this.partitionedRegion.basicGetWriter();
}
- @Override
- void cleanUpOnIncompleteOp(EntryEventImpl event, RegionEntry re,
- boolean eventRecorded, boolean updateStats, boolean isReplace) {
-
-
- if(!eventRecorded || isReplace) {
- //No indexes updated so safe to remove.
- this.entries.removeEntry(event.getKey(), re, updateStats) ;
- }/*else {
- //if event recorded is true, that means as per event tracker entry is in
- //system. As per sqlfabric, indexes have been updated. What is not done
- // is basicPutPart2( distribution etc). So we do nothing as PR's re-attempt
- // will do the required basicPutPart2. If we remove the entry here, than
- //event tracker will not allow re insertion. So either we do nothing or
- //if we remove ,than we have to update sqlfindexes as well as undo recording
- // of event.
- //TODO:OQL indexes? : Hope they get updated during retry. The issue is that oql indexes
- // get updated after distribute , so it is entirely possible that oql index are
- // not updated. what if retry fails?
-
- }*/
- }
/* (non-Javadoc)
* @see com.gemstone.gemfire.internal.cache.partitioned.Bucket#getBucketOwners()
@@ -2058,7 +2039,7 @@ implements Bucket
return 0;
}
if (!(value instanceof byte[]) && !(value instanceof CachedDeserializable)
- && !(value instanceof com.gemstone.gemfire.Delta) && !(value instanceof Delta)
+ && !(value instanceof com.gemstone.gemfire.Delta)
&& !(value instanceof GatewaySenderEventImpl)) {
// ezoerner:20090401 it's possible this value is a Delta
throw new InternalGemFireError("DEBUG: calcMemSize: weird value (class "
@@ -2198,10 +2179,6 @@ implements Bucket
public void preDestroyBucket(int bucketId) {
- final IndexUpdater indexUpdater = getIndexUpdater();
- if (indexUpdater != null) {
- indexUpdater.clearIndexes(this, bucketId);
- }
}
@Override
public void cleanupFailedInitialization()