You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Bruce Schuchardt (JIRA)" <ji...@apache.org> on 2015/07/01 18:41:05 UTC

[jira] [Created] (GEODE-72) Remove deprecated APIs from Geode

Bruce Schuchardt created GEODE-72:
-------------------------------------

             Summary: Remove deprecated APIs from Geode
                 Key: GEODE-72
                 URL: https://issues.apache.org/jira/browse/GEODE-72
             Project: Geode
          Issue Type: Improvement
    Affects Versions: 1.0.0-incubating
            Reporter: Bruce Schuchardt


The Geode APIs are riddled with old, deprecated interfaces, methods and settings inherited from GemFire.  Unless there is a good reason to keep them shouldn't we remove them all before going out of incubation?

Here are the things I could find that are marked as being deprecated:


APIs deprecated in GemFire 4.2:
* Cache.setGatewayHub(), getGatewayHub()
 
 
APIs deprecated in GemFire 5.0:
* AttributesMutator/AttributesFactory.setCacheListener()
* AttributesFactory.createRegionAttributes()
* RegionAttriubutes.getPersistBackup(), getEnableWAN(), getCacheListener(), getEnableConflation() and associated methods in other classes (RegionFactory, AttributesFactory, RegionAttributesCreation, RemoteRegionAttributes)
* Cache.createVMRegion(), SystemMemberCache.createVMRegion()
CacheEvent.isExpiration() and isDistributed()
TransactionEvent.getXXXEvents()
* EntryEvent.isLoad()/isLocalLoad()/isNetLoad()
* MirrorType and associated methods and identifiers (also xml and various javadocs)
* CacheTransactionManager.getListener()/setListener()
* AbstractRegion.setIgnoreJTA()
* DistributedSystem.getId(), getMemberId()
 
  
APIs deprecated in GemFire 5.1:
* AcceptorImpl BridgeServer.SELECTOR, SELECTOR_POOL_SIZE, HANDSHAKE_POOL_SIZE properties
* DLS.lockInterruptibly(), suspendLockingInterruptibly()
 
APIs deprecated in an undocumented version prior to 5.7:
* Use of hostname:port to specify a locator in gemfire.properties
* PartitionAttributesFactory.setLocalProperties(), setGlobalProperties() & property names (LOCAL_MAX_MEMORY_PROPERTY, etc), and corresponding stuff in PartitionAttributes (5.2?)
* PAF.setCacheLoader(), PartitionAttributes.getCacheLoader() (5.0?)
* PartitionAttributes.getTotalSize()
* class EntryNotFoundInRegion (5.0?)
* Region.keys(), entries(),
* AdminDistributedSystemFactory.bindToAddress()
* MessageFactory, MsgOutputStream
 
APIs deprecated in GemFire 5.7:
* Endpoints in client/server, and associated classes (BridgeLoader/Writer/Client,  EndpointExistsException, etc), BridgePoolImpl
* BoundedLinkedHashMap and other cache.util utility classes no longer in use
* BridgeServer (use CacheServer), Cache.addBridgeServer(), Cache.getBridgeServers().  Also associated methods in AdminDistributedSystem, SystemMemberCache, SystemMemberType, CacheServerConfig and DistributedSystemConfig
* ServerRefusedConnectionException (moved from util to client package)
* EntryEvent.isBridgeEvent() and other places (InternalCacheEvent)
* RegionAttriubutes.getEnableBridgeConflation(), and associated methods in other classes (RegionFactory, AttributesFactory, RegionAttributesCreation, CacheXmlParser, RemoteRegionAttributes)
* DataSerializer.register(Class,byte)
* The internal ForceDisconnectOperation, AdminDistributedSystemJmxImpl.manageCacheServer(), manageCacheServers(), SystemMemberCacheJmxImpl.manageBridgeServer(), manageBridgeServers()
 
APIs deprecated after GemFire 5.7 and before 8.0
* The com.gemstone.gemfire.admin and admin.jmx packages.  Some of the implementation is in com.gemstone.gemfire.internal.remote.
* DiskWriteAttributes, DiskWriteAttributesFactory and associated methods
* DiskDirs and associated methods
* DiskDirSizes and associated methods
* AttributesFactory and associated methods
* Cache.close(boolean), Cache.createRegion(String, RegionAttributes), Cache.getLoggerI18n() and getSecurityLoggerI18n(), Cache.readyForEvents()
* CacheFactory.create()
* ClientNotReadyException
* CommitConflictException, CommitDistributionException, CommitIncompleteException (7.0)
* RemoteTransactionException (6.6)
* DataPolicy.isEmpty(), and the other isXXXX() methods
* EntryOperation.getOperation() (both introduced and deprecated in 6.0)
* EvictionAlgorithm.LIFO_ENTRY, LIFO_MEMORY
* Execution.execute(String, boolean), execute(String, boolean, boolean), execute(String, boolean, boolean, boolean)
* FunctionService.onMember(DistributedSystem, DistributedMember), onMembers(DistributedSystem), onMembers(DistributedSystem, Set<DistributedMember>)
* IndexType
* Query.compile(), isCompiled()
* QueryService.createIndex() variants, getIndexes()
* Region.loadSnapshot(), saveSnapshot() (7.0)
* Region.createSubRegion() (7.0)
* Region.getCache()
* CacheServer.DEFAULT_GROUPS, get/setGroups(), get/setNotifyBySubscription(), get/setOverflowDi
* RegionFactory constructors, RegionFactory.setEarlyAck(), RegionFactory.setEnableGateway(), setPublisher() 
* BridgeServer.get/setNotifyBySubscription()
* writeable-working-dir distribution property
* DistributedSystem.connect(), disconnect()
* Locator.startLocator(int, File), startLocator(int, File, InetAddress) etc.
* Locator.getLocators(), hasLocators()
* LocalRegion.notifyToRoll()
* ReflectionBasedAutoSerializer(List<String>), setSerializableClasses()

APIs deprecated since GemFire 5.7 with no version information mentioned
* OperationContext.isClientUpdate()
* PutAllOperationContext.setMap()
* Region.writeToDisk(), forceRolling()
* RegionFactory.setGatewayHubId()
* BridgeMembership, BridgeMembershipEvent, BridgeMembershipListener, BridgeMembershipListenerAdapter
IncompatibleVersionException, UnknownVersionException, VersionException
* ObjectSizerImpl
* UniversalMembershipListenerAdapter
* DistributedSystem.getId()
* DistributedRegionMXBean.getDiskTaskWaiting()
* MemberMXBean.getCurrentHeapSize(), getMaximumHeapSize(), getFreeHeapSize()
* RegionMXBean.getDiskReadsAverageLatency(), getDiskWritesAverageLatency(), getDiskTaskWaiting()
* ThreadInterruptedException
* LocatorLauncher.DEFAULT_LOCATOR_PORT,  DEFAULT_ENABLE_PEER_LOCATION, DEFAULT_ENABLE_SERVER_LOCATION, 
DEFAULT_LOCATOR_PID_FILE
* LocatorLauncher.stopWithPort()
* ServerLauncher.DEFAULT_SERVER_PORT, DEFAULT_SERVER_PID_FILE

Things that should be deprecated but aren’t consistently
* MembershipAttributes and “required roles”.  This is deprecated in DistributedSystem’s class javadoc but nowhere else.
* DynamicRegions

APIs deprecated in 8.0.  It would probably be a nice gesture to Pivotal to keep these for a while to allow people to migrate from their GemFire product to Geode.
* FixedPartitionResolver.getPartitionName(EntryOperation, Set<String>)
* Gateway, GatewayEventListener, GatewayHub, GatewayQueueAttributes.  These might have already been removed.
* ssl-enabled, ssl-protocols, ssl-ciphers, ssl-require-authentication, jmx-manager-ssl distribution properties
* LocalProcessController
* RegionMXBean.getAvgBucketSize()
* com.gemstone.gemfire.LicenseException

The Admin API and packages are also marked as deprecated but there seem to be some gfsh dependencies on this API, so I'm not sure if it can be removed.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)