SPRING DATA GEMFIRE CHANGELOG ----------------------------- http://www.springsource.org/spring-gemfire ============================= Changes in version 1.8.4.RELEASE (2016-09-29) --------------------------------------------- * SGF-535 - Allow both SpEL and property placeholder expressions to be used in the locators/servers attributes of the XML namespace element. * SGF-534 - Fix ordered GemfireRepository.findAll(Sort) queries. * SGF-531 - Release 1.8.4 (Hopper SR4). Changes in version 1.7.6.RELEASE (2016-09-29) --------------------------------------------- * SGF-536 - Release 1.7.6 (Gosling SR6). * SGF-535 - Allow both SpEL and property placeholder expressions to be used in the locators/servers attributes of the XML namespace element. * SGF-534 - Fix ordered GemfireRepository.findAll(Sort) queries. Changes in version 1.7.5.RELEASE (2016-09-20) --------------------------------------------- * SGF-532 - org.springframework.shell:spring-shell is listed in the pom as a runtime dependency. * SGF-530 - Move project build to Maven. * SGF-529 - Release 1.7.5 (Gosling SR5). * SGF-522 - There are a few broken links in SDG documentation. * SGF-507 - Handle case-insensitive OQL queries defined as Repository query methods. * SGF-504 - Support Repositories with multiple Spring Data modules on the class path. * SGF-475 - Add additional logging to the MappingPdxSerializer. * SGF-474 - Fix the NPE in the MappingPdxSerializer. Changes in version 1.8.3.RELEASE (2016-09-20) --------------------------------------------- * SGF-522 - There are a few broken links in SDG documentation. * SGF-507 - Handle case-insensitive OQL queries defined as Repository query methods. * SGF-506 - ExceptionInInitializerError with Spring Gemfire 1.8.1. * SGF-504 - Support Repositories with multiple Spring Data modules on the class path. * SGF-503 - Release 1.8.3 (Hopper SR3). Changes in version 1.9.0.M1 (2016-07-27) ---------------------------------------- * SGF-507 - Handle case-insensitive OQL queries defined as Repository query methods. * SGF-506 - ExceptionInInitializerError with Spring Gemfire 1.8.1. * SGF-504 - Support Repositories with multiple Spring Data modules on the class path. * SGF-502 - DiskStoreAndEvictionRegionParsingTest fails when building with Maven due to missing Disk Store sub-directory. * SGF-501 - Add serialVersionUID to ListRegionsOnServerFunction. * SGF-499 - Prevent SDG-defined Pools from being destroyed before the Regions that use them. * SGF-497 - Intermittent failures in DurableClientCacheIntegrationTest. * SGF-496 - Upgrade to Pivotal GemFire 8.2.1. * SGF-495 - Add 1.9 XML schemas for SDG namespaces. * SGF-494 - Fix bug in GemfirePersistentEntity caused by Spring Data Commons ClassGeneratingPropertyAccessorFactory. * SGF-492 - Improve GemFire Java-based configuration support - Iteration 1. * SGF-486 - Release 1.9 M1 (Ingalls). * SGF-445 - Remove MaxPermSize Java option from Gradle build. * SGF-267 - Backwards Compatibility Testing between Clients and Servers as well as between GemFire Peer Members. Changes in version 1.8.2.RELEASE (2016-06-15) --------------------------------------------- * SGF-502 - DiskStoreAndEvictionRegionParsingTest fails when building with Maven due to missing Disk Store sub-directory. * SGF-501 - Add serialVersionUID to ListRegionsOnServerFunction. * SGF-499 - Prevent SDG-defined Pools from being destroyed before the Regions that use them. * SGF-497 - Intermittent failures in DurableClientCacheIntegrationTest. * SGF-487 - Release 1.8.2 (Hopper SR2). * SGF-484 - NoSuchMethodError with Spring Data Gemfire RC1 version. Changes in version 1.8.1.RELEASE (2016-04-06) --------------------------------------------- * SGF-485 - Release 1.8.1 (Hopper SR1). Changes in version 1.8.0.RELEASE (2016-04-06) --------------------------------------------- * SGF-483 - Add pull request template. * SGF-482 - Release 1.8 GA (Hopper). Changes in version 1.8.0.RC1 (2016-03-18) ----------------------------------------- * SGF-481 - Upgrade to Spring Framework 4.2.5.RELEASE. * SGF-480 - Change default for use-bean-factory-locator to false. * SGF-479 - Remove lazy initialization option for configuring a GemFire cache. * SGF-478 - Release 1.8 RC1 (Hopper). * SGF-475 - Add additional logging to the MappingPdxSerializer. * SGF-474 - Fix the NPE in the MappingPdxSerializer. * SGF-473 - Allow a Spring-configured ClientCache to be constructed without a Pool. * SGF-472 - Dependency to Aspectjweaver missing in Hopper M1. * SGF-469 - Add support for CDI. * SGF-416 - Avoid eager creation of a GemFire DistributedSystem in the PoolFactoryBean by creating a ClientCache first. Changes in version 1.7.4.RELEASE (2016-02-23) --------------------------------------------- * SGF-473 - Allow a Spring-configured ClientCache to be constructed without a Pool. * SGF-470 - Release 1.7.4 (Gosling SR4). * SGF-462 - Add appinfo hint to client region element in XSD. * SGF-460 - Remove unnecessary SLF4J compile-time dependency. * SGF-459 - Add support for the get(key:Object, valueLoader:Callable) method in Spring Framework 4.3's Cache interface. * SGF-458 - Enable resolution of GemFire's DistributedSystem and System properties to be overridden in PoolFactoryBean. * SGF-457 - Clean up Javadoc warnings. Changes in version 1.8.0.M1 (2016-02-12) ---------------------------------------- * SGF-468 - Improve coordination between the PoolFactoryBean and ClientCacheFactoryBean when configuring and resolving the GemFire DistributedSystem. * SGF-467 - Add Code of Conduct. * SGF-466 - Restore function to the Gradle-based build. * SGF-465 - Move project build to Maven. * SGF-464 - Release 1.8 M1 (Hopper). * SGF-462 - Add appinfo hint to client region element in XSD. * SGF-461 - Upgrade to Spring Framework 4.1.9.RELEASE. * SGF-460 - Remove unnecessary SLF4J compile-time dependency. * SGF-459 - Add support for the get(key:Object, valueLoader:Callable) method in Spring Framework 4.3's Cache interface. * SGF-458 - Enable resolution of GemFire's DistributedSystem and System properties to be overridden in PoolFactoryBean. * SGF-457 - Clean up Javadoc warnings. * SGF-455 - Fix creation of GemfireMappingContext for repositories. * SGF-454 - Adapt to API changes in Spring Data Commons. * SGF-450 - GemfireRepositoryFactoryBean needs to explicitly register the "default" GemfireMappingContext when not explicitly defined as a bean in the application's Spring context. * SGF-449 - GemfireRepositoryFactoryBean.setGemfireMappingContext needs to call RepositoryFactoryBeanSupport.setMappingContext. * SGF-448 - GemfireRepositoryConfigurationExtension needs to override the RepositoryConfigurationExtensionSupport postProcess(:BeanDefinitionBuilder, :AnnotationRepositoryConfigurationSource) method. * SGF-447 - Fix apache-geode build due to recent changes in Apache Geode that removed various internal utility classes in favor of external Spring classes. * SGF-442 - Remove incorrect statements about GemFire Java Reflection-based (PDX) Serialization in the SDG Reference Guide. * SGF-441 - Fix possible CacheClosedException in ClientCacheFactoryBean onApplicationEvent(:ContextRefreshedEvent) when the ClientCache initialization is lazy. * SGF-440 - Optimize imports across the SDG codebase. * SGF-439 - Add 'durable-client-id' and 'durable-client-timeout' attributes to the namespace element for convenience. * SGF-438 - Make , 'ready-for-events' true the default for durable clients. * SGF-437 - Upgrade to Spring Framework 4.1.8.RELEASE. * SGF-434 - Add a durable GemFire client cache test to assert proper behavior by SDG. * SGF-433 - Fix improper resolution of Spring property placeholders in 'locators' and 'servers' attributes on the '' element(s) in Spring XML config. * SGF-432 - IndexFactoryBean traps IndexExistsException instead of IndexNameConflictException. * SGF-431 - Remove mavenLocal() from the artifact repository declarations. * SGF-430 - Cleanup test failures on Windows due to incorrect Spring test context configuration resource resolution. * SGF-429 - GemfirePersistentProperty considers a BigDecimal property an entity. * SGF-427 - Update Spring Data GemFire Reference Guide 'New in the 1.7 Release' section. * SGF-387 - Prepare SDG 1.8 and upgrade to GemFire 8.2.0 GA. * SGF-373 - Implement a Spring Session Adapter for GemFire to back an HttpSession similar to Redis. Changes in version 1.7.2.RELEASE (2015-12-18) --------------------------------------------- * SGF-456 - Release 1.7.2 (Gosling). * SGF-455 - Fix creation of GemfireMappingContext for repositories. * SGF-450 - GemfireRepositoryFactoryBean needs to explicitly register the "default" GemfireMappingContext when not explicitly defined as a bean in the application's Spring context. * SGF-449 - GemfireRepositoryFactoryBean.setGemfireMappingContext needs to call RepositoryFactoryBeanSupport.setMappingContext. * SGF-448 - GemfireRepositoryConfigurationExtension needs to override the RepositoryConfigurationExtensionSupport postProcess(:BeanDefinitionBuilder, :AnnotationRepositoryConfigurationSource) method. * SGF-447 - Fix Spring Data GemFire due to recent changes to Apache Geode that removed various internal utility classes in favor of external Spring classes. Changes in version 1.7.1.RELEASE (2015-11-15) --------------------------------------------- * SGF-446 - Release 1.7.1 (Gosling). * SGF-443 - Fix Spring Data GemFire apache-geode build due to recent changes to Apache Geode that removed the HDFS support. * SGF-442 - Remove incorrect statements about GemFire Java Reflection-based (PDX) Serialization in the SDG Reference Guide. * SGF-437 - Upgrade to Spring Framework 4.1.8.RELEASE. * SGF-434 - Add a durable GemFire client cache test to assert proper behavior by SDG. * SGF-433 - Fix improper resolution of Spring property placeholders in 'locators' and 'servers' attributes on the '' element(s) in Spring XML config. * SGF-432 - IndexFactoryBean traps IndexExistsException instead of IndexNameConflictException. * SGF-430 - Cleanup test failures on Windows due to incorrect Spring test context configuration resource resolution. * SGF-429 - GemfirePersistentProperty considers a BigDecimal property an entity. * SGF-427 - Update Spring Data GemFire Reference Guide 'New in the 1.7 Release' section. Changes in version 1.5.4.RELEASE (2015-10-14) --------------------------------------------- * SGF-436 - Release 1.5.4 (Evans). Changes in version 1.7.0.RELEASE (2015-09-01) --------------------------------------------- * SGF-426 - Release 1.7 GA (Gosling). * SGF-425 - Allow early initialization and re-initialization of LazyWiringDeclarableSupport instances. * SGF-423 - Handle improper ClassCastException thrown from SDG's Function Execution interface and annotation-based support when a GemFire Function throws an Exception. * SGF-419 - Documentation error on page 22 in the Spring Data GemFire Reference PDF. * SGF-408 - Provide support in the SDG XML namespace to load a pre-defined data set using GemFire Snapshot Service for development and testing purposes. * SGF-392 - Add support for OQL Query statement extensions in Repository Query methods via Annotations. Changes in version 1.7.0.RC1 (2015-08-04) ----------------------------------------- * SGF-422 - Release 1.7 RC1 (Gosling). * SGF-421 - Fix Spring Data GemFire's MappingPdxSerializer due to the package-private access modifier change on org.springframework.data.mapping.model.BeanWrapper. * SGF-418 - Merge PR #83 updating the Spring IO Platform Plugin to perform compatibility checks. * SGF-417 - Update apache-geode SDG branch based on the latest Apache Geode developments (snapshot 20150713182515). * SGF-415 - Remove the ClientCacheFactory Pool configuration in ClientCacheFactoryBean. * SGF-414 - Resolve incompatibility between the DistributedSystem created by the PoolFactoryBean and the DistributedSystem resolved by the ClientCacheFactoryBean when SSL is configured. * SGF-410 - Enable the definition and creation of a generic, GemFire Cache Region with out-the-box defaults. * SGF-409 - Modify the GemfireDataSourcePostProcessor (basis for ) to not assume a GemFire Server was configured and bootstrapped with Spring and subsequently that the SDG ListRegionsOnServerFunction was registered. * SGF-407 - Modify the MappingPdxSerializer to allow for extensibility. * SGF-406 - Fix JavaDoc build. * SGF-404 - Enable Expiration settings and policies to be specified per application domain object using an @Expiration annotation and a "custom", SDG-provided CustomExpiry instance. * SGF-398 - Provide early support of Apache Geode (Pivotal GemFire OSS). * SGF-370 - Add multi-Index definition and creation support. Changes in version 1.6.2.RELEASE (2015-07-28) --------------------------------------------- * SGF-420 - Release 1.6.2 (Fowler). * SGF-415 - Remove the ClientCacheFactory Pool configuration in ClientCacheFactoryBean. * SGF-414 - Resolve incompatibility between the DistributedSystem created by the PoolFactoryBean and the DistributedSystem resolved by the ClientCacheFactoryBean when SSL is configured. * SGF-409 - Modify the GemfireDataSourcePostProcessor (basis for ) to not assume a GemFire Server was configured and bootstrapped with Spring and subsequently that the SDG ListRegionsOnServerFunction was registered. Changes in version 1.4.6.RELEASE (2015-07-01) --------------------------------------------- * SGF-411 - Release 1.4.6 (Dijkstra). * SGF-399 - Fix incorrect XSD appinfo annotation, expected 'type' attribute value on the 'error-handler' attribute of the 'cq-listener-container' element. Changes in version 1.5.3.RELEASE (2015-07-01) --------------------------------------------- * SGF-412 - Release 1.5.3 (Evans). * SGF-407 - Modify the MappingPdxSerializer to allow for extensibility. * SGF-406 - Fix JavaDoc build. * SGF-399 - Fix incorrect XSD appinfo annotation, expected 'type' attribute value on the 'error-handler' attribute of the 'cq-listener-container' element. * SGF-393 - Region scope not properly set for replicated region, prevents client CQ from registering properly. * SGF-385 - Local region does remote put in addition to local put in client cache. * SGF-384 - Issue with partitioned-region-template when persistence is enabled. * SGF-382 - Add logging to the SpringContextBootstrappingInitializer init method to capture any Spring context/GemFire errors on startup. * SGF-381 - Enable RegionFactoryBean to respect the Data Policy specified on a nested or referenced RegionAttributes bean definition. * SGF-379 - Specifying multiple or a single Gateway Endpoint with one or more GatewayListeners is not permitted by the SDG XML namespace (XSD) gatewayType element definition. * SGF-378 - SDG completely ignores the 'socket-read-timeout' attribute on the Gateway element nested in a GatewayHub. * SGF-376 - The GemFire WAN GatewayHub support needs refactoring and test coverage. * SGF-375 - The XML namespace element is missing the 'max-time-between-pings' attribute. * SGF-374 - Specifying a disk-store on a GatewayHub forces the GatewayHub to be persistent. Changes in version 1.6.1.RELEASE (2015-06-30) --------------------------------------------- * SGF-413 - Release 1.6.1 (Fowler). * SGF-407 - Modify the MappingPdxSerializer to allow for extensibility. * SGF-406 - Fix JavaDoc build. * SGF-400 - Enable the ability to set the ClassLoader used by the Spring ApplicationContext created in the SpringContextBootstrappingInitializer for loading bean definition classes and resolving resources. * SGF-399 - Fix incorrect XSD appinfo annotation, expected 'type' attribute value on the 'error-handler' attribute of the 'cq-listener-container' element. * SGF-396 - Enable support for variable Locator and Server endpoints on a SDG GFE Pool bean definition in a Spring Context. * SGF-395 - Allow Spring JavaConfig @Configuration classes to be registered and used to configure the (AnnotationConfig)ApplicationContext created by the SpringContextBootstrappingInitializer. * SGF-394 - Improve SDG Gradle build removing FindBug compilation warnings caused by GemFire. * SGF-393 - Region scope not properly set for replicated region, prevents client CQ from registering properly. Changes in version 1.7.0.M1 (2015-06-02) ---------------------------------------- * SGF-405 - Release 1.7 M1 (Gosling). * SGF-403 - Simplify the process of adding custom methods to Spring Data GemFire Repositories. * SGF-400 - Enable the ability to set the ClassLoader used by the Spring ApplicationContext created in the SpringContextBootstrappingInitializer for loading bean definition classes and resolving resources. * SGF-399 - Fix incorrect XSD appinfo annotation, expected 'type' attribute value on the 'error-handler' attribute of the 'cq-listener-container' element. * SGF-397 - Upgrade to Spring Framework 4.1.6.RELEASE. * SGF-396 - Enable support for variable Locator and Server endpoints on a SDG GFE Pool bean definition in a Spring Context. * SGF-395 - Allow Spring JavaConfig @Configuration classes to be registered and used to configure the (AnnotationConfig)ApplicationContext created by the SpringContextBootstrappingInitializer. * SGF-394 - Improve SDG Gradle build removing FindBug compilation warnings caused by GemFire. * SGF-393 - Region scope not properly set for replicated region, prevents client CQ from registering properly. * SGF-391 - Simplify and improve the robustness of the JNDI DataSource Type matching used in the Cache FactoryBeans. * SGF-390 - Improve unit test coverage for the PoolFactoryBean class. * SGF-389 - Improve unit test coverage of the ClientCacheFactoryBean class. * SGF-388 - Improve unit test coverage of the CacheFactoryBean class. * SGF-383 - Refactor and make RegionFactoryBean and RegionLookupFactoryBean abstract. * SGF-371 - The GatewayReceiverFactoryBean needs to set GatewayReceiverFactory.setManualStart(false) in GemFire 8.1 in order to enable manual starts on a GatewayReceiver. * SGF-357 - Optimize SimpleGemfireRepository.deleteAll() by using the new Region.removeAll() operation. * SGF-353 - Prepare SDG 1.7 and upgrade to GemFire 8.1.0 GA. * SGF-345 - Add PDX Aliases support. * SGF-322 - Add support for the newly added, retro 'max-connections' attribute on the element in the SDG XML namespace (XSD). * SGF-196 - Support adding CacheListeners, CacheLoaders and CacheWriters, along with other mutable Region attributes to an existing Region. Changes in version 1.6.0.RELEASE (2015-03-23) --------------------------------------------- * SGF-386 - Release 1.6 GA. * SGF-385 - Local region does remote put in addition to local put in client cache. * SGF-384 - Issue with partitioned-region-template when persistence is enabled. * SGF-382 - Add logging to the SpringContextBootstrappingInitializer init method to capture any Spring context/GemFire errors on startup. * SGF-381 - Enable RegionFactoryBean to respect the Data Policy specified on a nested or referenced RegionAttributes bean definition. Changes in version 1.6.0.RC1 (2015-03-05) ----------------------------------------- * SGF-380 - Release 1.6 RC1. * SGF-379 - Specifying multiple or a single Gateway Endpoint with one or more GatewayListeners is not permitted by the SDG XML namespace (XSD) gatewayType element definition. * SGF-378 - SDG completely ignores the 'socket-read-timeout' attribute on the Gateway element nested in a GatewayHub. * SGF-376 - The GemFire WAN GatewayHub support needs refactoring and test coverage. * SGF-375 - The XML namespace element is missing the 'max-time-between-pings' attribute. * SGF-374 - Specifying a disk-store on a GatewayHub forces the GatewayHub to be persistent. * SGF-366 - Unable to create local-only, client-based Region Indexes using SDG's and corresponding IndexFactoryBean functionality. * SGF-364 - Move EvictionAttributesFactoryBean and SubscriptionAttributesFactoryBean along with supporting enum types from the ..data.gemfire.config package to ..data.gemfire. * SGF-363 - Upgrade to Spring Framework 4.0.9.RELEASE. * SGF-360 - Failures in SubRegionNamespaceTests when built with Java 8. * SGF-358 - Enhance SDG's Function annotation support to allow strongly-typed arguments in the context of PDX even when read-serialized is set to true. * SGF-354 - SimpleGemfireRepository.deleteAll that supports transactions. * SGF-289 - Enumeration restrictions (xsd:enumeration) should be avoided in the XML schema. Changes in version 1.5.2.RELEASE (2015-01-28) --------------------------------------------- * SGF-368 - Release 1.5.2. * SGF-366 - Unable to create local-only, client-based Region Indexes using SDG's and corresponding IndexFactoryBean functionality. * SGF-363 - Upgrade to Spring Framework 4.0.9.RELEASE. * SGF-360 - Failures in SubRegionNamespaceTests when built with Java 8. * SGF-358 - Enhance SDG's Function annotation support to allow strongly-typed arguments in the context of PDX even when read-serialized is set to true. * SGF-354 - SimpleGemfireRepository.deleteAll that supports transactions. * SGF-352 - Change all Artifact Repository URLs to use HTTPS. * SGF-348 - Upgrade to Spring Framework 4.0.8.RELEASE. Changes in version 1.4.5.RELEASE (2015-01-27) --------------------------------------------- * SGF-369 - Fix Javadoc so that 1.4.x builds on Java 8. * SGF-367 - Release 1.4.5. * SGF-362 - Upgrade to Spring Framework 3.2.13.RELEASE. * SGF-352 - Change all Artifact Repository URLs to use HTTPS. * SGF-349 - Upgrade to Spring Framework 3.2.12.RELEASE. * SGF-346 - Enable LazyWiringDeclarableSupport-based GemFire components to be used inside both cache.xml and Spring config, especially in the context of GemFire 8's Cluster Configuration. * SGF-343 - Optimize the SDG implementation of CrudRepository.save(Iterable enttiies) to use GemFire's Region.putAll(Map values) operation. * SGF-337 - SDG's XML Schema (XSD) does not allow the developer to specify 'timeout' and 'action' values for CustomExpiry () on Region attributes. * SGF-336 - Upgrade to Spring Framework 3.2.11.RELEASE. * SGF-333 - The SpringContextBootstrappingInitializer needs to handle the case when it's init(:Properties) method maybe called more than once on initialization. * SGF-330 - Add missing 'disk-synchronous' attribute to the element in the SDG XML namespace (XSD). * SGF-328 - Add missing 'hostname-for-senders' attribute on the element in the SDG XML namespace (XSD). * SGF-327 - Avoid setting null values with GemFire's Cache Region put(key, value) operation when GemFire is used as the caching provider in Spring's Cache Abstraction (@Cacheable). * SGF-317 - Improve GemfireCache implementation to be able to build on Spring 4.1. Changes in version 1.6.0.M1 (2014-12-01) ---------------------------------------- * SGF-356 - local-region on client side. * SGF-355 - Release 1.6 M1. * SGF-350 - Upgrade to Spring Data Commons 1.10. * SGF-348 - Upgrade to Spring Framework 4.0.8.RELEASE. * SGF-346 - Enable LazyWiringDeclarableSupport-based GemFire components to be used inside both cache.xml and Spring config, especially in the context of GemFire 8's Cluster Configuration. * SGF-343 - Optimize the SDG implementation of CrudRepository.save(Iterable enttiies) to use GemFire's Region.putAll(Map values) operation. * SGF-342 - Update Spring Data GemFire Reference Guide with GemFire 8 functional support. * SGF-340 - Change a SpringSource-based links in the SDG Reference Guide to Spring.io-based links. * SGF-339 - Change all VMWare-based links in the SDG Reference Guide to Pivotal-based links. * SGF-338 - Both and SDG XML namespace elements allow for more than one 'CustomExpiry' bean to be set in the Region Expiration Attributes although GemFire only allows one!. * SGF-337 - SDG's XML Schema (XSD) does not allow the developer to specify 'timeout' and 'action' values for CustomExpiry () on Region attributes. * SGF-333 - The SpringContextBootstrappingInitializer needs to handle the case when it's init(:Properties) method maybe called more than once on initialization. * SGF-332 - Add support for the GatewaySender 'eventSubstitutionFilter' property in the SDG XSD and GatewaySenderFactoryBean API. * SGF-331 - Pull common WAN attributes from GatewaySenders and AsyncEventQueues in the SDG XSD into the 'commonWANQueueAttributes' attributes group. * SGF-330 - Add missing 'disk-synchronous' attribute to the element in the SDG XML namespace (XSD). * SGF-328 - Add missing 'hostname-for-senders' attribute on the element in the SDG XML namespace (XSD). * SGF-327 - Avoid setting null values with GemFire's Cache Region put(key, value) operation when GemFire is used as the caching provider in Spring's Cache Abstraction (@Cacheable). * SGF-326 - Create spring-gemfire-1.6.xsd and spring-data-gemfire-1.6.xsd for SDG 1.6. * SGF-325 - Create spring-gemfire-2.0.xsd and spring-data-gemfire-2.0.xsd for SDG 2. * SGF-323 - Add support for GemFire 8's DiskStore 'diskUsageCriticalPercentage' and 'diskUsageWarningPercentage' properties in the SDG XML namespace (XSD) and DiskStoreFactoryBean API. * SGF-318 - Upgrade to Spring Framework 4.0.7. * SGF-317 - Improve GemfireCache implementation to be able to build on Spring 4.1. * SGF-316 - Update Spring Data GemFire Reference Guide with 1.5 changes (e.g. Auto Region Lookups, Region Templates). * SGF-314 - Upgrade to Spring Framework 4.0.7. * SGF-313 - SDG 1.6 support for both GemFire 7 and GemFire 8. * SGF-309 - Add support for Region Data Compression with the new 'Compressor' property on the RegionAttributes class. * SGF-291 - Upgrade Spring Data GemFire 1.5 to GemFire 8.0. * SGF-270 - Remove the validation logic in the AsyncEventQueueFactoryBean restricting the specification of Dispatcher Threads when a 'Parallel' AsyncEventQueue is used. * SGF-269 - Remove the validation logic in the GatewaySenderFactoryBean restricting the specification of Dispatcher Threads when a 'Parallel' GatewaySender is used. * SGF-264 - Completely remove the 'data-policy' and 'shortcut' attributes from the SDG XML namespace Region elements. * SGF-227 - Support for 'auto-reconnect' functionality when peers are forcefully disconnected from the cluster. * SGF-226 - Support for requesting a peer member's configuration from a GemFire Locator/Manager using the new Cluster-based Configuration Service. Changes in version 1.5.1.RELEASE (2014-10-30) --------------------------------------------- * SGF-347 - Release 1.5.1. * SGF-346 - Enable LazyWiringDeclarableSupport-based GemFire components to be used inside both cache.xml and Spring config, especially in the context of GemFire 8's Cluster Configuration. * SGF-343 - Optimize the SDG implementation of CrudRepository.save(Iterable enttiies) to use GemFire's Region.putAll(Map values) operation. * SGF-340 - Change a SpringSource-based links in the SDG Reference Guide to Spring.io-based links. * SGF-339 - Change all VMWare-based links in the SDG Reference Guide to Pivotal-based links. * SGF-337 - SDG's XML Schema (XSD) does not allow the developer to specify 'timeout' and 'action' values for CustomExpiry () on Region attributes. * SGF-333 - The SpringContextBootstrappingInitializer needs to handle the case when it's init(:Properties) method maybe called more than once on initialization. * SGF-330 - Add missing 'disk-synchronous' attribute to the element in the SDG XML namespace (XSD). * SGF-328 - Add missing 'hostname-for-senders' attribute on the element in the SDG XML namespace (XSD). * SGF-327 - Avoid setting null values with GemFire's Cache Region put(key, value) operation when GemFire is used as the caching provider in Spring's Cache Abstraction (@Cacheable). Changes in version 1.5.0.RELEASE (2014-09-05) --------------------------------------------- * IMPORTANT: Upgrade to Gemfire 8.0 has been postponed to a 2.0 release. * SGF-319 - Release 1.5 GA. * SGF-318 - Upgrade to Spring Framework 4.0.7. * SGF-317 - Improve GemfireCache implementation to be able to build on Spring 4.1. * SGF-316 - Update Spring Data GemFire Reference Guide with 1.5 changes (e.g. Auto Region Lookups, Region Templates). * SGF-315 - Re-enable Bundlor plugin to create OSGi metadata. * SGF-314 - Upgrade to Spring Framework 4.0.7. * SGF-312 - The element in the SDG XSD does not properly support multiple PartitionListener bean definitions or references. * SGF-311 - ClientRegionFactoryBean does not properly set the 'concurrency-checks-enabled' attribute and property of GemFire's ClientRegionFactory class. * SGF-310 - The element is missing the 'concurrency-level' attribute, which is supported by GemFire's ClientRegionFactory API. * SGF-307 - Remove all default values on strongly-typed Region elements in the SDG Schema in support of Region Templates. * SGF-305 - Move to Asciidoctor for reference documentation. * SGF-254 - Template Regions which can be used to reuse the same Region configuration for all Regions that reference it. * SGF-223 - Ability to create directories on-the-fly at runtime based on explicitly defined Disk Stores disk directory locations. * SGF-207 - No support for hierarchical, inherited Region attributes like there is in GemFire's cache.xml. * SGF-191 - Provide automated way to add all Regions defined in GemFire's cache.xml as beans in the Spring context. Changes in version 1.4.4.RELEASE (2014-08-27) --------------------------------------------- * SGF-308 - Release 1.4.4. * SGF-304 - OnMembers function execution with Gemfire Group calls onMember (wrong method). Changes in version 1.5.0.RC1 (2014-08-13) ----------------------------------------- * SGF-306 - Release 1.5 RC1. * SGF-304 - OnMembers function execution with Gemfire Group calls onMember (wrong method). * SGF-291 - Upgrade Spring Data GemFire 1.5 to GemFire 8.0. * SGF-227 - Ability to handle forced disconnects due to node failures with "Reconnect" functionality being added in GemFire. * SGF-226 - Ability to request and get the member's configuration from a GemFire Locator/Manager using the cluster-wide configuration in the new Persistent Config feature. Changes in version 1.4.2.RELEASE (2014-07-28) --------------------------------------------- * SGF-303 - Release 1.4.2. * SGF-297 - Executing SDG Functions annotated POJO methods from Gfsh does not work when "injecting" arguments during Function argument resolution. * SGF-295 - Enable Local Region Eviction action to be set to 'LOCAL_DESTROY', which is allowed in GemFire using the public API or in cache.xml. * SGF-294 - Enable GemFire GatewayReceivers to be started manually, the same as for GatewaySenders using SDG. * SGF-284 - Modify SDG build (build.gradle script) to include SDG validation and compatibility checks for Spring IO. Changes in version 1.5.0.M1 (2014-07-10) ---------------------------------------- * SGF-299 - Upgrade Spring Data GemFire 1.5 to Spring Framework 4.0.6. * SGF-298 - Release 1.5 M1. * SGF-297 - Executing SDG Functions annotated POJO methods from Gfsh does not work when "injecting" arguments during Function argument resolution. * SGF-296 - Create spring-gemfire-1.5.xsd and spring-data-gemfire-1.5.xsd for SDG 1.5. * SGF-295 - Enable Local Region Eviction action to be set to 'LOCAL_DESTROY', which is allowed in GemFire using the public API or in cache.xml. * SGF-294 - Enable GemFire GatewayReceivers to be started manually, the same as for GatewaySenders using SDG. * SGF-292 - Upgrade Spring Data GemFire 1.5 to Spring Framework 4.0.5.RELEASE. * SGF-290 - SDG's Repository extension does not properly handle custom @Query annotated Repository methods returning non-Collection, non-Entity-based return values. * SGF-215 - Ensure compatibility with Spring Framework 4.0.0.X. Changes in version 1.4.1.RELEASE (2014-06-30) --------------------------------------------- * SGF-293 - Release 1.4.1. * SGF-290 - SDG's Repository extension does not properly handle custom @Query annotated Repository methods returning non-Collection, non-Entity-based return values. * SGF-288 - CacheServer's "maximum-time-between-pings" is set to ZERO. Changes in version 1.4.0.RELEASE (2014-05-20) --------------------------------------------- * SGF-287 - Upgrade to Spring 3.2.9. * SGF-286 - Release 1.4 GA. * SGF-274 - Avoid the creation of temporary objects in the GemfireTemplate when used with Spring Data GemFire's Repository abstraction and extension. * SGF-272 - Cleanup all Javadoc warnings. Changes in version 1.4.0.RC1 (2014-05-02) ----------------------------------------- * SGF-283 - Release 1.4 RC1. * SGF-282 - The Eviction 'action', other than the default, for a PARTITION Region is not properly passed to the GemFire EvictionAttributes.createLRUEntryAttributes(..) factory method when the 'threshold' is not set. * SGF-281 - Avoid setting the RegionAttributes Disk Store "Name" when the Region is neither "persistent" nor has an Eviction policy set to "OVERFLOW_TO_DISK". * SGF-280 - The ContinuousQueryListenerContainer class is not Thread-safe!. * SGF-279 - The element is missing the 'error-handler' attribute. * SGF-278 - The ContinuousQueryListenerContainer class's 'taskExecutor' property is not set properly by the GemfireListenerContainerParser. * SGF-277 - OQL Join in Repository interface. * SGF-276 - LIKE operator does not work. * SGF-275 - The element's 'phase' attribute is ignored. * SGF-274 - Avoid the creation of temporary objects in the GemfireTemplate when used with Spring Data GemFire's Repository abstraction and extension. * SGF-273 - OrderBy (static) and Sort parameter (dynamic) Repository Queries do not work!. * SGF-271 - The element is missing the 'auto-startup' attribute. * SGF-268 - Make it possible to run the build on Java 7 and/or Java 8. * SGF-265 - Upgrade to the latest version GemFire (7.0.2). Changes in version 1.4 M1 (2014-03-31) -------------------------------------- ** Bug * [SGF-225] - Inconsistent data policy defaults for subregions that are replicated regions * [SGF-230] - Cannot specify a Disk Store to be used for overflow on a Gateway Sender without enabling persistence. * [SGF-231] - Unable to specify Ordering Policy for Serial GW Sender * [SGF-232] - Unable to specify Order Policy for Serial Async Event Queue * [SGF-233] - Cannot specify a Disk Store to be used for overflow on an Async Event Queue without enabling persistence. * [SGF-234] - The docs indicate that the PDX attribute pdx-persistent defaults to true, however this does not seem to be the case. * [SGF-235] - NPE in DefaultFunctionArgumentResolver.resolveFunctionArguments(30) when a Function has no arguments and none are provided. * [SGF-238] - "jndi-prop" is not parced correctly * [SGF-239] - The value "XaPooledDataSource" of jndi-binding "type" attribute should be changed to "XAPooledDataSource" * [SGF-240] - XML schema type restrictions should be avoided in order to support placeholders (al types should be xs:string) * [SGF-242] - When defining "membership-attributes" for a Region, the bean definition "required-roles" attribute is required and, when specified, causes a BeanCreationException in the Spring container during initialization. * [SGF-244] - The nested , element is missing the ref attribute in the XSD. * [SGF-245] - always creates cache with default values ignoring all the specified attributes * [SGF-246] - execute function always assumes arguments are passed * [SGF-247] - boolean based repository queries generate UnsupportedOperationException in non PDX serialized entities * [SGF-249] - The SDG XSD is restricting the use of property placeholder values on , compaction-threshold attributes given the attribute type is a short and not string. * [SGF-251] - Creating and using GemFire Repositories based on the Spring Data Commons Repository abstraction does not work properly for domain objects stored in Subregions. * [SGF-252] - Spring GemFire's Repository extension does not properly handle multiple, identically named Subregions for persisting corresponding application domain objects associated by way of the @Region annotation. * [SGF-255] - The element's 'threshold' attribute is required even when the Eviction type is 'HEAP_PERCENTAGE'. * [SGF-258] - The SDG XML namespace element is missing the 'data-policy' attribute. * [SGF-263] - The 'disk-synchronous' Region attribute does not get successfully applied when explicitly set to false. ** Improvement * [SGF-88] - Create Regions in Spring Context with Region Shortcuts * [SGF-187] - Consider appending to the list of listener a new listener defined by another peer member * [SGF-201] - Create a Spring Boot Starter POM for Spring Data GemFire * [SGF-204] - The existing RegionFactoryBean does a lookup of a Region before trying to create one. * [SGF-209] - GemfireTemplate creates a temporary object for every operation. * [SGF-210] - GemfireRepository requires that there be an attribute in the entity class for the key. * [SGF-236] - Sub-Region Bean names require prepended "/" (vs. previous use of gfe:lookup-region for sub-regions) * [SGF-241] - Add support for defining client sub-Regions using nested SDG XML namespace elements. * [SGF-256] - Upgrade to the latest version of the Spring Framework (3.2.8) and Spring Data Commons (1.8.0) * [SGF-257] - Specify strict type rules in the Spring Data GemFire XSD for peer Region 'data-policy' and 'shortcut' attributes as currently enforced by the element's 'shortcut' attribute. * [SGF-259] - Handle cyclic bean dependencies in SDG XML config between Async Event Queues and Async Event Listeners. * [SGF-260] - Add the ability to set @Id to a method name. * [SGF-261] - Add ability to persist application domain objects (entities) to multiple Regions in a GemFire Cache. * [SGF-265] - Upgrade to the latest version GemFire (7.0.2) ** New Feature * [SGF-132] - Being able to get cacheservers overall status on the client * [SGF-248] - Ability to bootstrap a Spring context inside a GemFire Server JVM process by starting the GemFire Server with Gfsh. ** Task * [SGF-266] - Release 1.4 M1 Changes in Version 1.3.4 (2014-04-04) ------------------------------------- General * This is a maintenance/patch release to address bugs and other minor improvements. Bugs * [SGF-235] - NPE in DefaultFunctionArgumentResolver.resolveFunctionArguments(30) when a Function has no arguments and none are provided. * [SGF-238] - "jndi-prop" is not parced correctly. * [SGF-239] - The value "XaPooledDataSource" of jndi-binding "type" attribute should be changed to "XAPooledDataSource". * [SGF-240] - XML schema type restrictions should be avoided in order to support placeholders (al types should be xs:string). * [SGF-246] - execute function always assumes arguments are passed. * [SGF-249] - The SDG XSD is restricting the use of property placeholder values on , compaction-threshold attributes given the attribute type is a short and not string. * [SGF-255] - The element's 'threshold' attribute is required even when the Eviction type is 'HEAP_PERCENTAGE'. Improvements * Upgrades SDG to Spring Framework 3.2.8 and Spring Data Commons 1.7.1. Changes in Version 1.3.3 (2013-11-13) ------------------------------------- General * This is a maintenance/patch release to address bugs and other minor improvements. * See [1.3.3 release notes](https://jira.springsource.org/secure/ReleaseNote.jspa?projectId=10462&version=14257). Bugs * [SGF-174] - DynamicRegion usage causes ApplicationContext to fail to load when using non-dynamic parent * [SGF-178] - parent attribute causes endless loop in hashCode * [SGF-194] - Nested region do not work * [SGF-195] - colocated-with fails on partition region * [SGF-197] - A Cache (Region) created using Spring configuration with persistent PDX keys fails to start. * [SGF-198] - BeanCurrentlyInCreationException when injecting async-event-queue to a Gemfire replicated region * [SGF-200] - Extra unnecessary directory for disk store created when an embedded sender starts up * [SGF-203] - The treatment of 'persistence' is wrong. * [SGF-211] - Property placeholders don't work for copies attribute on partitioned-region * [SGF-216] - FunctionContextInjectingArgumentResolver only injects arguments for RegionFunctionContext * [SGF-217] - When configuring CacheServer with a Disk Store (used for client subscription queue overflow), the Cache Server fails to start up with an error. * [SGF-218] - The Eviction Policy on Client Subscription when configuring a GemFire Cache Server is not being properly set; always defaults to "NONE". * [SGF-219] - Unable to register GemFire CacheListeners on SubRegions. * [SGF-220] - Unable to register GemFire Gateway Senders on SubRegions. * [SGF-221] - Unable to register GemFire Async Event Listeners on SubRegions. Improvements * [SGF-214] - OnMembersFunctionExecutionTemplate constructors should be public New Features * [SGF-193] - concurrency-checks-enabled is not supported in SGF. * [SGF-206] - CacheLoader and CacheWriter are not supported on client local regions. Changes in Version 1.3.2 (2013-08-06) -------------------------------------- General * This is a patch release to address bugs and minor enhancements see [1.3.2 release notes](https://jira.springsource.org/secure/ReleaseNote.jspa?version=14219&projectId=10462) ** Bug * [SGF-168] - Race condition when using Spring data gemfire with tc Server parallel deployment * [SGF-176] - Missing Functionality: time to live and entry idle time on a local client region * [SGF-185] - @OnServers fails when pool attribute is set - cannot specify both pool and cache * [SGF-186] - BeanFactoryLocator reports cache already exists when ClientCache, Pool, and Functions are configured * [SGF-188] - Documentation mistake * [SGF-189] - Spring Gemfire does not allow persistence for a local region even though this is supported in Gemfire * [SGF-192] - client region ignores destroy and close settings ** Improvement * [SGF-180] - If nothing references the cache bean it doesn't get initialized * [SGF-183] - Little or no logging in Spring Gemfire Changes in version 1.3.1.RELEASE(2013-04-18) ** Bug * [SGF-159] - isRollbackOnCommitFailure flag is ignored by GemfireTransactionManager when transaction fails. * [SGF-169] - Unidirectional Gateway hubs cannot be created and fail with an exception * [SGF-173] - Function Execution throws exception on void return. Changes in version 1.3.0.RELEASE (2013-03-14) --------------------------------------------- General * Added annotation support for GemFire functions * Added 'datasource' element to gfe-data namespace to simplify client connection * Added support for JSON See [1.3.0.M1 release notes](https://jira.springsource.org/secure/ReleaseNote.jspa?projectId=10462&version=13300) See [1.3.0 release notes](https://jira.springsource.org/secure/ReleaseNote.jspa?projectId=10462&version=14023) Changes in version 1.2.1.RELEASE (2012-10-26) --------------------------------------------- General * Upgraded to GemFire 7.0 * Added support for GemFire 7.0 WAN Configuration Changes in version 1.2.0.RELEASE (2012-08-15) --------------------------------------------- General * Added support for Spring Data repositories * The Spring Data GemFire project, formerly Spring GemFire, is now a component of the Spring Data project * Upgraded to Spring 3.1.2.RELEASE * Upgraded to Spring Data Commons 1.4.0.RELEASE * The XML namespace provides support for everything that can be configured natively with Cache XML * A separate XML namespace has been created for Spring Data Repository support Enhancements * [SGF-53] - Add "enable-gateway" to replicated and partitioned region namespace config * [SGF-75] - Ability to define gateways in the Spring GemFire namespace * [SGF-76] - Disk store should be its own bean * [SGF-79] - Missing gateway attributes for regions * [SGF-86] - Make instance variables protected in CacheFactoryBean * [SGF-95] - Add namespace support for subregions * [SGF-98] - Provide namespace support for all cache and region properties * [SGF-102] - Add support for JavaConfig for repositories * [SGF-103] - Replace xsd:id type with xsd:string to support Spring environment profiles * [SGF-104] - The repository deleteAll() method only works for replicated regions * [SGF-109] - Separate repository support into its own namespace * [SGF-111] - Change default bean names from hyphenated to camel case to support @Autowired * [SGF-112] - Repositories should reject PagingAndSorting and Pageable parameters * [SGF-113] - Repositories should support single entities returned from a query method * [SGF-115] - Add support for 'Like', 'StartsWith','EndsWith', and 'Containing' repository queries Bug Fixes * [SGF-85] - Pdx disk store does not work when trying to references a disk store created in cache.xml * [SGF-89] - Continuous query container fails when implementing the ContinuousQueryListener interface * [SGF-101] - The repository deleteAll() method only works for replicated regions Changes in version 1.1.2.RELEASE (2012-07-04) --------------------------------------------- General * Upgraded to GemFire 6.6.3 Package org.springframework.data.gemfire.config * Fixed incorrect parsing of pdx-disk-store attribute Changes in version 1.1.1.RELEASE (2012-03-20) --------------------------------------------- General * Upgraded to GemFire 6.6.2 * Upgraded to Spring Framework 3.1.1 GA Package org.springframework.data.gemfire * Fixed incorrect parsing of pdx-serializer (from value to reference) * Fixed incorrect parsing of use-bean-factory-locator * Fixed GemfireTransactionCommitException class hierarchy * Improved handling of GemFire 6.5+ transaction exceptions Package org.springframework.data.gemfire.client * Fixed bug that caused client namespace to create only local regions Changes in version 1.1.0.RELEASE (2011-12-14) --------------------------------------------- General * Upgraded to Spring Framework 3.1 GA Changes in version 1.1.0.RC1 (2011-11-13) ----------------------------------------- General * Upgraded to GemFire 6.6.1 * Aligned Maven naming to Spring Data conventions (changed ids to 'org.springframework.data'/'spring-data-gemfire') * Introduced PDX options for 'cache' and 'client-cache' elements Changes in version 1.1.0.M3 (2011-09-25) ---------------------------------------- General * Upgraded to GemFire 6.6 GA * Introduced support for GemFire Indecies * Reintroduced samples in zip distribution Package org.springframework.data.gemfire * Improved region creation by removing the use of GemFire 6.0 API (replaced with 6.5+) Package org.springframework.data.gemfire.client * Added missing properties to PoolFactoryBean and pool namespace * Fixed registration of custom listeners specified through region attributes * Added missing 'receive-values' property to region interests Changes in version 1.1.0.M2 (2011-08-29) ---------------------------------------- General * Introduced support for GemFire Continuous Query (CQ) * Introduced support for client cache * Introduced namespace support for region expiration attributes Package org.springframework.data.gemfire * Added find methods (based on the query service) inside GemFireTemplate * Improved detection of local client regions without pools configured Package org.springframework.data.gemfire.server * Fixed bug occuring when applying defaults for disk stores * Delayed CacheServer start up to allow declared regions to properly initialize Changes in version 1.1.0.M1 (2011-07-20) ---------------------------------------- General * Changed build system to Gradle * Added support for GemFire 6.6 * Dropped support for GemFire 6.0 (GemFire 6.5 or higher required) * Introduced support for CacheServer * Introduced GemFire implementation for Spring 3.1 cache abstraction * Upgraded to Spring Framework 3.1 M2 Package org.springframework.data.gemfire * Introduced cache option for disabling bean factory locator; useful for multi cache definitions, in the same VM * Added more region methods to GemfireTemplate * Introduced support for queries with variable parameters in GemfireTemplate * Improved handling of optimistic exception in a transaction scenario Changes in version 1.0.1 (2011-04-26) ------------------------------------- General * Upgraded to GemFire 6.5.1.4 * Fix networking issue with the sample on some Linux distributions (Ubuntu) * Loosen type constraints in the schema to allow placeholders * Added 'statistics' attribute to all write regions Package org.springframework.data.gemfire * Introduced auto-close (configurable) on RegionFactoryBean Package org.springframework.data.gemfire.config * Fixed bug causing region names to be used as aliases for region beans Package org.springframework.data.gemfire.client * Improved dependency initialization between cache and pools Package org.springframework.data.gemfire.serialization * Improved cache-wide registration of custom instantiators Package org.springframework.data.gemfire.support * Introduced GemfireDaoSupport Changes in version 1.0.0 (2011-02-02) ------------------------------------- Changes in version 1.0.0.RC1 (2010-12-20) ----------------------------------------- General * Upgraded to GemFire 6.5.1 * Upgraded to Spring 3.0.5 Changes in version 1.0.0.M2 (2010-12-08) ---------------------------------------- General * Introduced namespace for all the major SGF components * Improved documentation to accomodate the SGF namespace Package org.springframework.data.gemfire * Introduced RegionLookupFactoryBean for retrieving (but not creating) regions Package org.springframework.data.gemfire.client * Refactored client-specific classes into a dedicated package * Introduced support for configuring GemFire Pools Changes in version 1.0.0.M1 (2010-08-03) ---------------------------------------- General * Configuration support for GemFire Cache, Region * Exception translation * GemFire Template for exception translation * Declarative transaction management * Auto-generation of non-reflection based GemFire instantiators