You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by la...@apache.org on 2017/11/03 23:48:51 UTC

[geode] branch feature/GEODE-3930 updated (1002285 -> 71e52a3)

This is an automated email from the ASF dual-hosted git repository.

ladyvader pushed a change to branch feature/GEODE-3930
in repository https://gitbox.apache.org/repos/asf/geode.git.


 discard 1002285  Cleanup IntelliJ refactoring glitch
 discard 2834e5a  Splotless
 discard 6b7d30f  Added integration and DUnit tests for index creation on an existing region.
 discard dc5d4e9  Index creation after region creation works for a single member integration test
 discard 41ab887  Start of internal method to create a lucene index on an existing region
     add ec6820a  GEODE-3778: mark tests flaky (#1004)
     add a9a444f  GEODE-3936: remove ThreadUtil (#998)
     add 891274c  Add files necessary for Concourse CI infrastructure. (#1006)
     add b5603c1  Fix up branches. GEODE-3942 (#1008)
     add 2c30b7e  GEODE-3637: Moved client queue initialization into the ServerConnection.java Added test to confirm asynchronous client queue creation
     add 8876dd5  GEODE-3637: Amended AcceptorImpl.java to use a Connection pool that provides stats
     add a733b39  GEODE-3895: Add Handshake/Message version byte (#1001)
     add 0b636c2  Fix version number in email subject.
     add 235790c  GEODE-3895: fixup: Add exceptions to excludedClasses.txt
     add a8e1fab  GEODE-3941: Pulse issues when SecurityManager is enabled (#1007)
     add 3487b3a  GEODE-3947: add the necessary dependency in geode-dependency.jar (#1010)
     add 9829873  GEODE-3870: clean up region entry classes (#989)
     add 7a429e8  User Guide: fixed typo in the ‘configuring’ section
     add 302b7e2  GEODE-3940: Revert "GEODE-3801: Use hardlinks for backup oplog files (#963)"
     add 9cb7e42  User Guide: Fixed a typo in Basic Config/Data Regions/Region Management
     new bbcfdc8  Start of internal method to create a lucene index on an existing region
     new ff8c066  Index creation after region creation works for a single member integration test
     new 210e743  Added integration and DUnit tests for index creation on an existing region.
     new 135b958  Splotless
     new 71e52a3  Cleanup IntelliJ refactoring glitch

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (1002285)
            \
             N -- N -- N   refs/heads/feature/GEODE-3930 (71e52a3)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 ci/docker/Dockerfile                               |   37 +
 .../Dockerfile => ci/docker/cache_dependencies.sh  |   28 +-
 ci/pipelines/develop.yml                           |  110 +
 ci/pipelines/docker-images.yml                     |   49 +
 ci/pipelines/meta.yml                              |   74 +
 ci/scripts/build.sh                                |  189 ++
 geode-assembly/build.gradle                        |    2 +
 ...torLogTest.java => PutCommandWithJsonTest.java} |   49 +-
 .../tools/pulse/PulseSecurityIntegrationTest.java  |   57 +
 .../distributed/internal/tcpserver/TcpServer.java  |   11 +-
 .../geode/internal/cache/AbstractLRURegionMap.java |    2 +-
 .../geode/internal/cache/AbstractRegion.java       |   11 +-
 .../geode/internal/cache/AbstractRegionMap.java    |   68 +-
 .../apache/geode/internal/cache/BackupManager.java |   25 +-
 .../apache/geode/internal/cache/BucketRegion.java  |    3 +-
 .../apache/geode/internal/cache/DiskRegion.java    |    4 +-
 .../apache/geode/internal/cache/DiskStoreImpl.java |   37 +-
 .../geode/internal/cache/EntryEventImpl.java       |    8 +-
 .../geode/internal/cache/HasCachePerfStats.java    |    3 +-
 .../{HasCachePerfStats.java => HasDiskRegion.java} |    5 +-
 .../geode/internal/cache/InternalRegion.java       |   79 +-
 .../apache/geode/internal/cache/LocalRegion.java   |   39 +-
 .../geode/internal/cache/NonLocalRegionEntry.java  |  216 +-
 .../org/apache/geode/internal/cache/Oplog.java     |  226 +-
 .../org/apache/geode/internal/cache/OplogSet.java  |    6 +-
 .../geode/internal/cache/OverflowOplogSet.java     |   60 +-
 .../geode/internal/cache/PartitionedRegion.java    |    2 +-
 .../geode/internal/cache/PersistentOplogSet.java   |    9 +-
 .../geode/internal/cache/ProxyRegionMap.java       |  219 +-
 .../apache/geode/internal/cache/RegionEntry.java   |   82 +-
 .../org/apache/geode/internal/cache/RegionMap.java |  122 +-
 .../geode/internal/cache/ValidatingDiskRegion.java |  150 +-
 .../client/protocol/ClientProtocolService.java     |    2 +
 .../protocol/ClientProtocolServiceLoader.java      |   12 +-
 .../exception}/ServiceLoadingFailureException.java |    2 +-
 .../ServiceVersionNotFoundException.java}          |   12 +-
 .../cache/entries/AbstractDiskRegionEntry.java     |    2 +-
 .../entries/AbstractOplogDiskRegionEntry.java      |   47 +-
 .../cache/entries/AbstractRegionEntry.java         |  127 +-
 .../geode/internal/cache/entries/DiskEntry.java    |  101 +-
 .../internal/cache/entries/LeafRegionEntry.cpp     |  698 +++---
 .../VMStatsDiskLRURegionEntryHeapIntKey.java       |  232 +-
 .../VMStatsDiskLRURegionEntryHeapLongKey.java      |  232 +-
 .../VMStatsDiskLRURegionEntryHeapObjectKey.java    |  233 +-
 .../VMStatsDiskLRURegionEntryHeapStringKey1.java   |  295 +--
 .../VMStatsDiskLRURegionEntryHeapStringKey2.java   |  345 +--
 .../VMStatsDiskLRURegionEntryHeapUUIDKey.java      |  234 +-
 .../VMStatsDiskLRURegionEntryOffHeapIntKey.java    |  269 +--
 .../VMStatsDiskLRURegionEntryOffHeapLongKey.java   |  269 +--
 .../VMStatsDiskLRURegionEntryOffHeapObjectKey.java |  262 +--
 ...VMStatsDiskLRURegionEntryOffHeapStringKey1.java |  342 +--
 ...VMStatsDiskLRURegionEntryOffHeapStringKey2.java |  392 ++--
 .../VMStatsDiskLRURegionEntryOffHeapUUIDKey.java   |  273 +--
 .../entries/VMStatsDiskRegionEntryHeapIntKey.java  |  175 +-
 .../entries/VMStatsDiskRegionEntryHeapLongKey.java |  175 +-
 .../VMStatsDiskRegionEntryHeapObjectKey.java       |  169 +-
 .../VMStatsDiskRegionEntryHeapStringKey1.java      |  232 +-
 .../VMStatsDiskRegionEntryHeapStringKey2.java      |  282 ++-
 .../entries/VMStatsDiskRegionEntryHeapUUIDKey.java |  177 +-
 .../VMStatsDiskRegionEntryOffHeapIntKey.java       |  206 +-
 .../VMStatsDiskRegionEntryOffHeapLongKey.java      |  206 +-
 .../VMStatsDiskRegionEntryOffHeapObjectKey.java    |  206 +-
 .../VMStatsDiskRegionEntryOffHeapStringKey1.java   |  284 ++-
 .../VMStatsDiskRegionEntryOffHeapStringKey2.java   |  334 +--
 .../VMStatsDiskRegionEntryOffHeapUUIDKey.java      |  210 +-
 .../entries/VMStatsLRURegionEntryHeapIntKey.java   |  174 +-
 .../entries/VMStatsLRURegionEntryHeapLongKey.java  |  174 +-
 .../VMStatsLRURegionEntryHeapObjectKey.java        |  168 +-
 .../VMStatsLRURegionEntryHeapStringKey1.java       |  231 +-
 .../VMStatsLRURegionEntryHeapStringKey2.java       |  281 +--
 .../entries/VMStatsLRURegionEntryHeapUUIDKey.java  |  176 +-
 .../VMStatsLRURegionEntryOffHeapIntKey.java        |  202 +-
 .../VMStatsLRURegionEntryOffHeapLongKey.java       |  203 +-
 .../VMStatsLRURegionEntryOffHeapObjectKey.java     |  201 +-
 .../VMStatsLRURegionEntryOffHeapStringKey1.java    |  283 +--
 .../VMStatsLRURegionEntryOffHeapStringKey2.java    |  333 +--
 .../VMStatsLRURegionEntryOffHeapUUIDKey.java       |  207 +-
 .../entries/VMStatsRegionEntryHeapIntKey.java      |  132 +-
 .../entries/VMStatsRegionEntryHeapLongKey.java     |  132 +-
 .../entries/VMStatsRegionEntryHeapObjectKey.java   |  126 +-
 .../entries/VMStatsRegionEntryHeapStringKey1.java  |  189 +-
 .../entries/VMStatsRegionEntryHeapStringKey2.java  |  239 ++-
 .../entries/VMStatsRegionEntryHeapUUIDKey.java     |  134 +-
 .../entries/VMStatsRegionEntryOffHeapIntKey.java   |  160 +-
 .../entries/VMStatsRegionEntryOffHeapLongKey.java  |  160 +-
 .../VMStatsRegionEntryOffHeapObjectKey.java        |  154 +-
 .../VMStatsRegionEntryOffHeapStringKey1.java       |  235 +-
 .../VMStatsRegionEntryOffHeapStringKey2.java       |  285 +--
 .../entries/VMStatsRegionEntryOffHeapUUIDKey.java  |  164 +-
 .../VMThinDiskLRURegionEntryHeapIntKey.java        |  192 +-
 .../VMThinDiskLRURegionEntryHeapLongKey.java       |  192 +-
 .../VMThinDiskLRURegionEntryHeapObjectKey.java     |  189 +-
 .../VMThinDiskLRURegionEntryHeapStringKey1.java    |  251 +--
 .../VMThinDiskLRURegionEntryHeapStringKey2.java    |  301 +--
 .../VMThinDiskLRURegionEntryHeapUUIDKey.java       |  194 +-
 .../VMThinDiskLRURegionEntryOffHeapIntKey.java     |  225 +-
 .../VMThinDiskLRURegionEntryOffHeapLongKey.java    |  225 +-
 .../VMThinDiskLRURegionEntryOffHeapObjectKey.java  |  218 +-
 .../VMThinDiskLRURegionEntryOffHeapStringKey1.java |  298 +--
 .../VMThinDiskLRURegionEntryOffHeapStringKey2.java |  348 +--
 .../VMThinDiskLRURegionEntryOffHeapUUIDKey.java    |  229 +-
 .../entries/VMThinDiskRegionEntryHeapIntKey.java   |  135 +-
 .../entries/VMThinDiskRegionEntryHeapLongKey.java  |  135 +-
 .../VMThinDiskRegionEntryHeapObjectKey.java        |  129 +-
 .../VMThinDiskRegionEntryHeapStringKey1.java       |  192 +-
 .../VMThinDiskRegionEntryHeapStringKey2.java       |  242 ++-
 .../entries/VMThinDiskRegionEntryHeapUUIDKey.java  |  137 +-
 .../VMThinDiskRegionEntryOffHeapIntKey.java        |  165 +-
 .../VMThinDiskRegionEntryOffHeapLongKey.java       |  166 +-
 .../VMThinDiskRegionEntryOffHeapObjectKey.java     |  162 +-
 .../VMThinDiskRegionEntryOffHeapStringKey1.java    |  240 ++-
 .../VMThinDiskRegionEntryOffHeapStringKey2.java    |  290 +--
 .../VMThinDiskRegionEntryOffHeapUUIDKey.java       |  170 +-
 .../entries/VMThinLRURegionEntryHeapIntKey.java    |  134 +-
 .../entries/VMThinLRURegionEntryHeapLongKey.java   |  134 +-
 .../entries/VMThinLRURegionEntryHeapObjectKey.java |  128 +-
 .../VMThinLRURegionEntryHeapStringKey1.java        |  191 +-
 .../VMThinLRURegionEntryHeapStringKey2.java        |  241 ++-
 .../entries/VMThinLRURegionEntryHeapUUIDKey.java   |  136 +-
 .../entries/VMThinLRURegionEntryOffHeapIntKey.java |  162 +-
 .../VMThinLRURegionEntryOffHeapLongKey.java        |  162 +-
 .../VMThinLRURegionEntryOffHeapObjectKey.java      |  157 +-
 .../VMThinLRURegionEntryOffHeapStringKey1.java     |  239 ++-
 .../VMThinLRURegionEntryOffHeapStringKey2.java     |  289 +--
 .../VMThinLRURegionEntryOffHeapUUIDKey.java        |  166 +-
 .../cache/entries/VMThinRegionEntryHeapIntKey.java |   92 +-
 .../entries/VMThinRegionEntryHeapLongKey.java      |   92 +-
 .../entries/VMThinRegionEntryHeapObjectKey.java    |   86 +-
 .../entries/VMThinRegionEntryHeapStringKey1.java   |  149 +-
 .../entries/VMThinRegionEntryHeapStringKey2.java   |  199 +-
 .../entries/VMThinRegionEntryHeapUUIDKey.java      |   94 +-
 .../entries/VMThinRegionEntryOffHeapIntKey.java    |  120 +-
 .../entries/VMThinRegionEntryOffHeapLongKey.java   |  120 +-
 .../entries/VMThinRegionEntryOffHeapObjectKey.java |  114 +-
 .../VMThinRegionEntryOffHeapStringKey1.java        |  194 +-
 .../VMThinRegionEntryOffHeapStringKey2.java        |  244 +--
 .../entries/VMThinRegionEntryOffHeapUUIDKey.java   |  124 +-
 ...VersionedStatsDiskLRURegionEntryHeapIntKey.java |  319 +--
 ...ersionedStatsDiskLRURegionEntryHeapLongKey.java |  319 +--
 ...sionedStatsDiskLRURegionEntryHeapObjectKey.java |  313 +--
 ...ionedStatsDiskLRURegionEntryHeapStringKey1.java |  375 ++--
 ...ionedStatsDiskLRURegionEntryHeapStringKey2.java |  425 ++--
 ...ersionedStatsDiskLRURegionEntryHeapUUIDKey.java |  321 +--
 ...sionedStatsDiskLRURegionEntryOffHeapIntKey.java |  348 +--
 ...ionedStatsDiskLRURegionEntryOffHeapLongKey.java |  348 +--
 ...nedStatsDiskLRURegionEntryOffHeapObjectKey.java |  342 +--
 ...edStatsDiskLRURegionEntryOffHeapStringKey1.java |  422 ++--
 ...edStatsDiskLRURegionEntryOffHeapStringKey2.java |  472 +++--
 ...ionedStatsDiskLRURegionEntryOffHeapUUIDKey.java |  352 +--
 .../VersionedStatsDiskRegionEntryHeapIntKey.java   |  262 +--
 .../VersionedStatsDiskRegionEntryHeapLongKey.java  |  262 +--
 ...VersionedStatsDiskRegionEntryHeapObjectKey.java |  256 +--
 ...ersionedStatsDiskRegionEntryHeapStringKey1.java |  318 +--
 ...ersionedStatsDiskRegionEntryHeapStringKey2.java |  368 ++--
 .../VersionedStatsDiskRegionEntryHeapUUIDKey.java  |  264 +--
 ...VersionedStatsDiskRegionEntryOffHeapIntKey.java |  291 +--
 ...ersionedStatsDiskRegionEntryOffHeapLongKey.java |  291 +--
 ...sionedStatsDiskRegionEntryOffHeapObjectKey.java |  285 +--
 ...ionedStatsDiskRegionEntryOffHeapStringKey1.java |  365 ++--
 ...ionedStatsDiskRegionEntryOffHeapStringKey2.java |  415 ++--
 ...ersionedStatsDiskRegionEntryOffHeapUUIDKey.java |  295 +--
 .../VersionedStatsLRURegionEntryHeapIntKey.java    |  260 +--
 .../VersionedStatsLRURegionEntryHeapLongKey.java   |  261 +--
 .../VersionedStatsLRURegionEntryHeapObjectKey.java |  255 ++-
 ...VersionedStatsLRURegionEntryHeapStringKey1.java |  317 +--
 ...VersionedStatsLRURegionEntryHeapStringKey2.java |  367 ++--
 .../VersionedStatsLRURegionEntryHeapUUIDKey.java   |  263 +--
 .../VersionedStatsLRURegionEntryOffHeapIntKey.java |  288 +--
 ...VersionedStatsLRURegionEntryOffHeapLongKey.java |  288 +--
 ...rsionedStatsLRURegionEntryOffHeapObjectKey.java |  282 +--
 ...sionedStatsLRURegionEntryOffHeapStringKey1.java |  362 ++--
 ...sionedStatsLRURegionEntryOffHeapStringKey2.java |  414 ++--
 ...VersionedStatsLRURegionEntryOffHeapUUIDKey.java |  292 +--
 .../VersionedStatsRegionEntryHeapIntKey.java       |  212 +-
 .../VersionedStatsRegionEntryHeapLongKey.java      |  212 +-
 .../VersionedStatsRegionEntryHeapObjectKey.java    |  213 +-
 .../VersionedStatsRegionEntryHeapStringKey1.java   |  275 +--
 .../VersionedStatsRegionEntryHeapStringKey2.java   |  325 +--
 .../VersionedStatsRegionEntryHeapUUIDKey.java      |  214 +-
 .../VersionedStatsRegionEntryOffHeapIntKey.java    |  247 ++-
 .../VersionedStatsRegionEntryOffHeapLongKey.java   |  247 ++-
 .../VersionedStatsRegionEntryOffHeapObjectKey.java |  240 ++-
 ...VersionedStatsRegionEntryOffHeapStringKey1.java |  320 +--
 ...VersionedStatsRegionEntryOffHeapStringKey2.java |  372 ++--
 .../VersionedStatsRegionEntryOffHeapUUIDKey.java   |  251 +--
 .../VersionedThinDiskLRURegionEntryHeapIntKey.java |  275 +--
 ...VersionedThinDiskLRURegionEntryHeapLongKey.java |  275 +--
 ...rsionedThinDiskLRURegionEntryHeapObjectKey.java |  269 +--
 ...sionedThinDiskLRURegionEntryHeapStringKey1.java |  331 +--
 ...sionedThinDiskLRURegionEntryHeapStringKey2.java |  381 ++--
 ...VersionedThinDiskLRURegionEntryHeapUUIDKey.java |  277 +--
 ...rsionedThinDiskLRURegionEntryOffHeapIntKey.java |  304 +--
 ...sionedThinDiskLRURegionEntryOffHeapLongKey.java |  304 +--
 ...onedThinDiskLRURegionEntryOffHeapObjectKey.java |  298 +--
 ...nedThinDiskLRURegionEntryOffHeapStringKey1.java |  378 ++--
 ...nedThinDiskLRURegionEntryOffHeapStringKey2.java |  428 ++--
 ...sionedThinDiskLRURegionEntryOffHeapUUIDKey.java |  308 +--
 .../VersionedThinDiskRegionEntryHeapIntKey.java    |  217 +-
 .../VersionedThinDiskRegionEntryHeapLongKey.java   |  218 +-
 .../VersionedThinDiskRegionEntryHeapObjectKey.java |  212 +-
 ...VersionedThinDiskRegionEntryHeapStringKey1.java |  274 +--
 ...VersionedThinDiskRegionEntryHeapStringKey2.java |  324 +--
 .../VersionedThinDiskRegionEntryHeapUUIDKey.java   |  220 +-
 .../VersionedThinDiskRegionEntryOffHeapIntKey.java |  247 +--
 ...VersionedThinDiskRegionEntryOffHeapLongKey.java |  247 +--
 ...rsionedThinDiskRegionEntryOffHeapObjectKey.java |  241 ++-
 ...sionedThinDiskRegionEntryOffHeapStringKey1.java |  321 +--
 ...sionedThinDiskRegionEntryOffHeapStringKey2.java |  371 ++--
 ...VersionedThinDiskRegionEntryOffHeapUUIDKey.java |  251 +--
 .../VersionedThinLRURegionEntryHeapIntKey.java     |  216 +-
 .../VersionedThinLRURegionEntryHeapLongKey.java    |  217 +-
 .../VersionedThinLRURegionEntryHeapObjectKey.java  |  211 +-
 .../VersionedThinLRURegionEntryHeapStringKey1.java |  273 +--
 .../VersionedThinLRURegionEntryHeapStringKey2.java |  323 +--
 .../VersionedThinLRURegionEntryHeapUUIDKey.java    |  219 +-
 .../VersionedThinLRURegionEntryOffHeapIntKey.java  |  244 ++-
 .../VersionedThinLRURegionEntryOffHeapLongKey.java |  244 ++-
 ...ersionedThinLRURegionEntryOffHeapObjectKey.java |  238 ++-
 ...rsionedThinLRURegionEntryOffHeapStringKey1.java |  318 +--
 ...rsionedThinLRURegionEntryOffHeapStringKey2.java |  370 ++--
 .../VersionedThinLRURegionEntryOffHeapUUIDKey.java |  248 ++-
 .../VersionedThinRegionEntryHeapIntKey.java        |  172 +-
 .../VersionedThinRegionEntryHeapLongKey.java       |  172 +-
 .../VersionedThinRegionEntryHeapObjectKey.java     |  169 +-
 .../VersionedThinRegionEntryHeapStringKey1.java    |  231 +-
 .../VersionedThinRegionEntryHeapStringKey2.java    |  281 +--
 .../VersionedThinRegionEntryHeapUUIDKey.java       |  174 +-
 .../VersionedThinRegionEntryOffHeapIntKey.java     |  203 +-
 .../VersionedThinRegionEntryOffHeapLongKey.java    |  203 +-
 .../VersionedThinRegionEntryOffHeapObjectKey.java  |  196 +-
 .../VersionedThinRegionEntryOffHeapStringKey1.java |  276 +--
 .../VersionedThinRegionEntryOffHeapStringKey2.java |  328 +--
 .../VersionedThinRegionEntryOffHeapUUIDKey.java    |  207 +-
 .../apache/geode/internal/cache/lru/LRUEntry.java  |    6 +-
 .../geode/internal/cache/partitioned/Bucket.java   |    6 +-
 .../cache/partitioned/FetchEntriesMessage.java     |    2 +-
 .../cache/persistence/DiskRecoveryStore.java       |    1 -
 .../internal/cache/tier/sockets/AcceptorImpl.java  |  330 +--
 .../internal/cache/tier/sockets/BaseCommand.java   |    2 +-
 .../cache/tier/sockets/ServerConnection.java       |   65 +-
 .../tier/sockets/ServerConnectionFactory.java      |   22 +-
 .../internal/cache/versions/VersionSource.java     |    6 +-
 .../internal/cache/versions/VersionStamp.java      |   42 +-
 .../apache/geode/internal/lang/ThreadUtils.java    |  138 --
 .../internal/logging/log4j/AlertAppender.java      |    5 +-
 .../internal/offheap/MemoryAllocatorImpl.java      |    2 +-
 .../concurrent/CustomEntryConcurrentHashMap.java   |    4 +-
 .../internal/beans/LocatorMBeanBridge.java         |    4 +-
 .../geode/cache30/MultiVMRegionTestCase.java       |    6 +-
 .../LocatorLauncherRemoteIntegrationTest.java      |    2 +
 .../apache/geode/internal/SSLConfigJUnitTest.java  |    5 +-
 .../internal/cache/AbstractRegionJUnitTest.java    |  134 ++
 .../cache/Bug34179TooManyFilesOpenJUnitTest.java   |    2 +-
 .../geode/internal/cache/Bug37377DUnitTest.java    |    4 +-
 ...precatedCacheServerLauncherIntegrationTest.java |    2 +
 .../internal/cache/DiskRegRecoveryJUnitTest.java   |    2 +-
 .../cache/DiskRegionAsyncRecoveryJUnitTest.java    |    2 +-
 .../internal/cache/DiskRegionHelperFactory.java    |  109 +-
 .../geode/internal/cache/DiskRegionJUnitTest.java  |  119 +-
 .../internal/cache/DiskRegionTestingBase.java      |  119 +-
 .../geode/internal/cache/OplogJUnitTest.java       | 2235 ++++++++++++++++++--
 .../internal/cache/PRDataStoreMemoryJUnitTest.java |    6 +-
 .../internal/cache/RemoteTransactionDUnitTest.java |    2 +-
 .../internal/cache/SimpleDiskRegionJUnitTest.java  |    2 +-
 ...skRegionOverflowAsyncRollingOpLogJUnitTest.java |    4 +-
 ...iskRegionOverflowSyncRollingOpLogJUnitTest.java |    4 +-
 .../DiskRegionPerfJUnitPerformanceTest.java        |    2 +-
 .../DiskRegionRollOpLogJUnitPerformanceTest.java   |    2 +-
 .../cache/partitioned/Bug43684DUnitTest.java       |    2 +-
 .../sockets/AcceptorImplClientQueueDUnitTest.java  |  263 +++
 .../tier/sockets/ServerConnectionFactoryTest.java  |    5 +
 .../geode/internal/lang/ThreadUtilsJUnitTest.java  |  220 --
 .../offheap/OffHeapValidationJUnitTest.java        |    2 +-
 .../FileProcessControllerIntegrationTest.java      |    2 +
 .../apache/geode/test/dunit/rules/CacheRule.java   |   22 +-
 .../apache/geode/codeAnalysis/excludedClasses.txt  |    2 +
 .../data_regions/managing_data_regions.html.md.erb |    3 +-
 .../running/change_file_spec.html.md.erb           |    4 +-
 .../protocol/protobuf/ProtobufProtocolService.java |    5 +
 .../protocol/AuthenticationIntegrationTest.java    |    4 +-
 .../protocol/AuthorizationIntegrationTest.java     |    4 +-
 .../protocol/HandshakeIntegrationTest.java         |  131 ++
 .../acceptance/CacheConnectionJUnitTest.java       |   11 +-
 .../CacheConnectionTimeoutJUnitTest.java           |    5 +-
 .../acceptance/CacheMaxConnectionJUnitTest.java    |    4 +-
 .../acceptance/CacheOperationsJUnitTest.java       |    1 +
 .../acceptance/LocatorConnectionDUnitTest.java     |    2 +
 .../tools/pulse/internal/data/JMXDataUpdater.java  |   30 +-
 .../src/main/webapp/WEB-INF/spring-security.xml    |    1 +
 289 files changed, 29519 insertions(+), 24665 deletions(-)
 create mode 100644 ci/docker/Dockerfile
 copy dev-tools/docker/base/Dockerfile => ci/docker/cache_dependencies.sh (59%)
 create mode 100644 ci/pipelines/develop.yml
 create mode 100644 ci/pipelines/docker-images.yml
 create mode 100644 ci/pipelines/meta.yml
 create mode 100755 ci/scripts/build.sh
 copy geode-assembly/src/test/java/org/apache/geode/management/internal/cli/commands/{GfshStartLocatorLogTest.java => PutCommandWithJsonTest.java} (52%)
 create mode 100644 geode-assembly/src/test/java/org/apache/geode/tools/pulse/PulseSecurityIntegrationTest.java
 copy geode-core/src/main/java/org/apache/geode/internal/cache/{HasCachePerfStats.java => HasDiskRegion.java} (91%)
 copy geode-core/src/main/java/org/apache/geode/internal/cache/{tier/sockets => client/protocol/exception}/ServiceLoadingFailureException.java (94%)
 rename geode-core/src/main/java/org/apache/geode/internal/cache/{tier/sockets/ServiceLoadingFailureException.java => client/protocol/exception/ServiceVersionNotFoundException.java} (69%)
 delete mode 100644 geode-core/src/main/java/org/apache/geode/internal/lang/ThreadUtils.java
 create mode 100644 geode-core/src/test/java/org/apache/geode/internal/cache/tier/sockets/AcceptorImplClientQueueDUnitTest.java
 delete mode 100644 geode-core/src/test/java/org/apache/geode/internal/lang/ThreadUtilsJUnitTest.java
 create mode 100644 geode-protobuf/src/test/java/org/apache/geode/internal/protocol/HandshakeIntegrationTest.java

-- 
To stop receiving notification emails like this one, please contact
['"commits@geode.apache.org" <co...@geode.apache.org>'].

[geode] 02/05: Index creation after region creation works for a single member integration test

Posted by la...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ladyvader pushed a commit to branch feature/GEODE-3930
in repository https://gitbox.apache.org/repos/asf/geode.git

commit ff8c066a1626695279a1ea4c4d73fe8776442b99
Author: Dan Smith <up...@apache.org>
AuthorDate: Thu Nov 2 12:37:41 2017 -0700

    Index creation after region creation works for a single member integration test
---
 .../apache/geode/internal/cache/AbstractRegion.java  |  8 +++++++-
 .../apache/geode/internal/cache/InternalRegion.java  |  2 ++
 .../org/apache/geode/internal/cache/LocalRegion.java | 15 ++++++++++-----
 .../geode/internal/cache/PartitionedRegion.java      | 13 ++++++++-----
 .../lucene/internal/LuceneIndexFactoryImpl.java      |  2 +-
 .../cache/lucene/internal/LuceneRegionListener.java  |  5 -----
 .../cache/lucene/internal/LuceneServiceImpl.java     | 20 +++++++++++++-------
 .../lucene/LuceneIndexCreationIntegrationTest.java   | 20 +++++++++++++++++---
 8 files changed, 58 insertions(+), 27 deletions(-)

diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java
index bc97a35..0c5709a 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java
@@ -869,8 +869,14 @@ public abstract class AbstractRegion implements InternalRegion, AttributesMutato
 
   @Override
   public void addAsyncEventQueueId(String asyncEventQueueId) {
+    addAsyncEventQueueId(asyncEventQueueId, false);
+  }
+
+  public void addAsyncEventQueueId(String asyncEventQueueId, boolean isInternal) {
     getAsyncEventQueueIds().add(asyncEventQueueId);
-    getVisibleAsyncEventQueueIds().add(asyncEventQueueId);
+    if(!isInternal) {
+      getVisibleAsyncEventQueueIds().add(asyncEventQueueId);
+    }
     setAllGatewaySenderIds();
   }
 
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/InternalRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/InternalRegion.java
index 1b7c1b0..8b0b2ab 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/InternalRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/InternalRegion.java
@@ -110,4 +110,6 @@ public interface InternalRegion<K, V>
 
   void invokeInvalidateCallbacks(final EnumListenerEvent eventType, final EntryEventImpl event,
       final boolean callDispatchListenerEvent);
+  void addCacheServiceProfile(CacheServiceProfile profile);
+
 }
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
index 74bdb52..af275a5 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
@@ -215,6 +215,7 @@ import org.apache.geode.internal.offheap.annotations.Released;
 import org.apache.geode.internal.offheap.annotations.Retained;
 import org.apache.geode.internal.offheap.annotations.Unretained;
 import org.apache.geode.internal.sequencelog.EntryLogger;
+import org.apache.geode.internal.util.concurrent.CopyOnWriteHashMap;
 import org.apache.geode.internal.util.concurrent.FutureResult;
 import org.apache.geode.internal.util.concurrent.StoppableCountDownLatch;
 import org.apache.geode.internal.util.concurrent.StoppableReadWriteLock;
@@ -541,7 +542,7 @@ public class LocalRegion extends AbstractRegion implements InternalRegion, Loade
     return this.stopper;
   }
 
-  Map<String, CacheServiceProfile> cacheServiceProfiles;
+  private final CopyOnWriteHashMap<String, CacheServiceProfile> cacheServiceProfiles = new CopyOnWriteHashMap<>();
 
   private static String calcFullPath(String regionName, LocalRegion parentRegion) {
     StringBuilder buf = null;
@@ -634,9 +635,9 @@ public class LocalRegion extends AbstractRegion implements InternalRegion, Loade
     this.isUsedForParallelGatewaySenderQueue =
         internalRegionArgs.isUsedForParallelGatewaySenderQueue();
     this.serialGatewaySender = internalRegionArgs.getSerialGatewaySender();
-    this.cacheServiceProfiles =
-        internalRegionArgs.getCacheServiceProfiles() == null ? Collections.emptyMap()
-            : Collections.unmodifiableMap(internalRegionArgs.getCacheServiceProfiles());
+    if(internalRegionArgs.getCacheServiceProfiles() != null) {
+      this.cacheServiceProfiles.putAll(internalRegionArgs.getCacheServiceProfiles());
+    }
 
     if (!isUsedForMetaRegion && !isUsedForPartitionedRegionAdmin
         && !isUsedForPartitionedRegionBucket && !isUsedForSerialGatewaySenderQueue
@@ -10399,7 +10400,11 @@ public class LocalRegion extends AbstractRegion implements InternalRegion, Loade
   }
 
   Map<String, CacheServiceProfile> getCacheServiceProfiles() {
-    return Collections.unmodifiableMap(this.cacheServiceProfiles);
+    return this.cacheServiceProfiles.getSnapshot();
+  }
+
+  public void addCacheServiceProfile(CacheServiceProfile profile) {
+    this.cacheServiceProfiles.put(profile.getId(), profile);
   }
 
   @Override
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java
index 7720bfa..5192751 100755
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java
@@ -1218,7 +1218,12 @@ public class PartitionedRegion extends LocalRegion
   }
 
   public void addAsyncEventQueueId(String asyncEventQueueId) {
-    super.addAsyncEventQueueId(asyncEventQueueId);
+    addAsyncEventQueueId(asyncEventQueueId, false);
+  }
+
+  public void addAsyncEventQueueId(
+      String asyncEventQueueId, boolean isInternal) {
+    super.addAsyncEventQueueId(asyncEventQueueId, isInternal);
     new UpdateAttributesProcessor(this).distribute();
     ((PartitionedRegion) this).distributeUpdatedProfileOnSenderCreation();
     GatewaySender sender = getCache()
@@ -4966,10 +4971,8 @@ public class PartitionedRegion extends LocalRegion
 
     fillInProfile((PartitionProfile) profile);
 
-    if (cacheServiceProfiles != null) {
-      for (CacheServiceProfile csp : cacheServiceProfiles.values()) {
-        profile.addCacheServiceProfile(csp);
-      }
+    for (CacheServiceProfile csp : getCacheServiceProfiles().values()) {
+      profile.addCacheServiceProfile(csp);
     }
 
     profile.isOffHeap = getOffHeap();
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java
index 6353ce7..4155f13 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java
@@ -67,7 +67,7 @@ public class LuceneIndexFactoryImpl implements LuceneIndexFactory {
 
   public void create(final String indexName, final String regionPath,
       boolean allowOnExistingRegion) {
-    service.createIndex(indexName, regionPath, fields, serializer, false);
+    service.createIndex(indexName, regionPath, fields, serializer, allowOnExistingRegion);
   }
 
   @Override
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
index fa44f63..bec0dd2 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
@@ -108,11 +108,6 @@ public class LuceneRegionListener implements RegionListener {
     if (region.getFullPath().equals(this.regionPath)
         && this.afterCreateInvoked.compareAndSet(false, true)) {
       this.service.afterDataRegionCreated(this.luceneIndex);
-      String aeqId = LuceneServiceImpl.getUniqueIndexName(this.indexName, this.regionPath);
-      AsyncEventQueueImpl aeq = (AsyncEventQueueImpl) cache.getAsyncEventQueue(aeqId);
-      AbstractPartitionedRepositoryManager repositoryManager =
-          (AbstractPartitionedRepositoryManager) luceneIndex.getRepositoryManager();
-      repositoryManager.allowRepositoryComputation();
     }
   }
 
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
index e0ab851..4d2bf31 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
@@ -66,6 +66,8 @@ import org.apache.geode.internal.DSFIDFactory;
 import org.apache.geode.internal.DataSerializableFixedID;
 import org.apache.geode.internal.cache.CacheService;
 import org.apache.geode.internal.cache.InternalCache;
+import org.apache.geode.internal.cache.InternalRegion;
+import org.apache.geode.internal.cache.PartitionedRegion;
 import org.apache.geode.internal.cache.RegionListener;
 import org.apache.geode.internal.cache.extension.Extensible;
 import org.apache.geode.internal.cache.xmlcache.XmlGenerator;
@@ -228,7 +230,7 @@ public class LuceneServiceImpl implements InternalLuceneService {
     registerDefinedIndex(indexName, regionPath, new LuceneIndexCreationProfile(indexName,
         regionPath, fields, analyzer, fieldAnalyzers, serializer));
 
-    Region region = cache.getRegion(regionPath);
+    PartitionedRegion region = (PartitionedRegion) cache.getRegion(regionPath);
 
     LuceneRegionListener regionListener = new LuceneRegionListener(this, cache, indexName,
         regionPath, fields, analyzer, fieldAnalyzers, serializer);
@@ -248,23 +250,21 @@ public class LuceneServiceImpl implements InternalLuceneService {
 
   }
 
-  private void createIndexOnExistingRegion(Region region, String indexName, String regionPath,
+  private void createIndexOnExistingRegion(PartitionedRegion region, String indexName, String regionPath,
       String[] fields, Analyzer analyzer, Map<String, Analyzer> fieldAnalyzers,
       LuceneSerializer serializer) {
     validateRegionAttributes(region.getAttributes());
 
     String aeqId = LuceneServiceImpl.getUniqueIndexName(indexName, regionPath);
-    region.getAttributesMutator().addAsyncEventQueueId(aeqId);
+    region.addAsyncEventQueueId(aeqId, true);
 
-    // Add index creation profile
-    internalRegionArgs.addCacheServiceProfile(new LuceneIndexCreationProfile(indexName, regionPath,
+    region.addCacheServiceProfile(new LuceneIndexCreationProfile(indexName, regionPath,
         fields, analyzer, fieldAnalyzers, serializer));
 
     LuceneIndexImpl luceneIndex = beforeDataRegionCreated(indexName, regionPath,
         region.getAttributes(), analyzer, fieldAnalyzers, aeqId, serializer, fields);
 
-    // Add internal async event id
-    internalRegionArgs.addInternalAsyncEventQueueId(aeqId);
+    afterDataRegionCreated(luceneIndex);
   }
 
   static void validateRegionAttributes(RegionAttributes attrs) {
@@ -297,6 +297,12 @@ public class LuceneServiceImpl implements InternalLuceneService {
       this.managementListener.afterIndexCreated(index);
     }
 
+    String aeqId = LuceneServiceImpl.getUniqueIndexName(index.getName(), index.getRegionPath());
+    AsyncEventQueueImpl aeq = (AsyncEventQueueImpl) cache.getAsyncEventQueue(aeqId);
+    AbstractPartitionedRepositoryManager repositoryManager =
+        (AbstractPartitionedRepositoryManager) index.getRepositoryManager();
+    repositoryManager.allowRepositoryComputation();
+
   }
 
   public LuceneIndexImpl beforeDataRegionCreated(final String indexName, final String regionPath,
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
index d0a1da8..8a57666 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
@@ -27,6 +27,7 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.concurrent.TimeUnit;
 import java.util.function.Consumer;
 import java.util.stream.Collectors;
 
@@ -187,11 +188,24 @@ public class LuceneIndexCreationIntegrationTest extends LuceneIntegrationTest {
 
   @Test()
   public void canCreateLuceneIndexAfterRegionCreatedIfAllowFlagIsSet()
-      throws IOException, ParseException {
-    createRegion();
+      throws IOException, ParseException, InterruptedException, LuceneQueryException {
+    Region region = createRegion();
+    LuceneService luceneService = LuceneServiceProvider.get(cache);
     final LuceneIndexFactoryImpl indexFactory =
-        (LuceneIndexFactoryImpl) LuceneServiceProvider.get(cache).createIndexFactory();
+        (LuceneIndexFactoryImpl) luceneService.createIndexFactory();
     indexFactory.setFields("field1", "field2").create(INDEX_NAME, REGION_NAME, true);
+
+    LuceneIndex index = luceneService.getIndex(INDEX_NAME, REGION_NAME);
+    assertNotNull(index);
+
+    region.put("key1", new TestObject("hello", "world"));
+    luceneService.waitUntilFlushed(INDEX_NAME, REGION_NAME, 1, TimeUnit.MINUTES);
+    LuceneQuery<Object, Object>
+        query =
+        luceneService.createLuceneQueryFactory()
+            .create(INDEX_NAME, REGION_NAME, "field1:hello", "field1");
+
+    assertEquals(Collections.singletonList("key1"), query.findKeys());
   }
 
   @Test

-- 
To stop receiving notification emails like this one, please contact
"commits@geode.apache.org" <co...@geode.apache.org>.

[geode] 01/05: Start of internal method to create a lucene index on an existing region

Posted by la...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ladyvader pushed a commit to branch feature/GEODE-3930
in repository https://gitbox.apache.org/repos/asf/geode.git

commit bbcfdc8bd0e09153119ea16570033fd5443dde95
Author: Dan Smith <up...@apache.org>
AuthorDate: Wed Nov 1 17:09:57 2017 -0700

    Start of internal method to create a lucene index on an existing region
    
    Adding a parameter to LuceneIndexFactoryImpl.create to allow creation on
    an existing region.
    
    Started implementing LuceneService.createIndexOnExistingRegion to do
    what we need it to do. This needs to do a lot of what
    LuceneRegionListener is doing, but some parts are different because it
    is modifying an existing region.
---
 .../lucene/internal/LuceneIndexFactoryImpl.java    | 19 ++++---
 .../cache/lucene/internal/LuceneIndexImpl.java     |  2 +
 .../lucene/internal/LuceneRegionListener.java      | 18 +-----
 .../cache/lucene/internal/LuceneServiceImpl.java   | 65 +++++++++++++++++++---
 .../lucene/internal/xml/LuceneIndexCreation.java   |  3 +-
 .../lucene/LuceneIndexCreationIntegrationTest.java | 10 ++++
 .../internal/LuceneIndexFactoryImplJUnitTest.java  |  3 +-
 .../internal/LuceneServiceImplJUnitTest.java       |  4 +-
 8 files changed, 87 insertions(+), 37 deletions(-)

diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java
index 429da38..6353ce7 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImpl.java
@@ -23,7 +23,7 @@ import org.apache.lucene.analysis.standard.StandardAnalyzer;
 import java.util.LinkedHashMap;
 import java.util.Map;
 
-public class LuceneIndexFactoryImpl implements org.apache.geode.cache.lucene.LuceneIndexFactory {
+public class LuceneIndexFactoryImpl implements LuceneIndexFactory {
   private final LuceneServiceImpl service;
   private final Map<String, Analyzer> fields = new LinkedHashMap<String, Analyzer>();
   private LuceneSerializer serializer;
@@ -34,12 +34,12 @@ public class LuceneIndexFactoryImpl implements org.apache.geode.cache.lucene.Luc
   }
 
   @Override
-  public LuceneIndexFactory addField(final String name) {
+  public LuceneIndexFactoryImpl addField(final String name) {
     return addField(name, new StandardAnalyzer());
   }
 
   @Override
-  public LuceneIndexFactory setFields(final String... fields) {
+  public LuceneIndexFactoryImpl setFields(final String... fields) {
     this.fields.clear();
     for (String field : fields) {
       addField(field);
@@ -48,13 +48,13 @@ public class LuceneIndexFactoryImpl implements org.apache.geode.cache.lucene.Luc
   }
 
   @Override
-  public LuceneIndexFactory addField(final String name, final Analyzer analyzer) {
+  public LuceneIndexFactoryImpl addField(final String name, final Analyzer analyzer) {
     fields.put(name, analyzer);
     return this;
   }
 
   @Override
-  public LuceneIndexFactory setFields(final Map<String, Analyzer> fieldMap) {
+  public LuceneIndexFactoryImpl setFields(final Map<String, Analyzer> fieldMap) {
     this.fields.clear();
     this.fields.putAll(fieldMap);
     return this;
@@ -62,11 +62,16 @@ public class LuceneIndexFactoryImpl implements org.apache.geode.cache.lucene.Luc
 
   @Override
   public void create(final String indexName, final String regionPath) {
-    service.createIndex(indexName, regionPath, fields, serializer);
+    this.create(indexName, regionPath, false);
+  }
+
+  public void create(final String indexName, final String regionPath,
+      boolean allowOnExistingRegion) {
+    service.createIndex(indexName, regionPath, fields, serializer, false);
   }
 
   @Override
-  public LuceneIndexFactory setLuceneSerializer(LuceneSerializer luceneSerializer) {
+  public LuceneIndexFactoryImpl setLuceneSerializer(LuceneSerializer luceneSerializer) {
     this.serializer = luceneSerializer;
     return this;
   }
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexImpl.java
index 2110ca5..fe4ca19 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneIndexImpl.java
@@ -24,6 +24,8 @@ import org.apache.lucene.analysis.standard.StandardAnalyzer;
 import org.apache.geode.InternalGemFireError;
 import org.apache.geode.cache.Cache;
 import org.apache.geode.cache.DataPolicy;
+import org.apache.geode.cache.EvictionAlgorithm;
+import org.apache.geode.cache.EvictionAttributes;
 import org.apache.geode.cache.Region;
 import org.apache.geode.cache.RegionAttributes;
 import org.apache.geode.cache.asyncqueue.AsyncEventQueue;
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
index df9dca0..fa44f63 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneRegionListener.java
@@ -20,8 +20,6 @@ import java.util.concurrent.atomic.AtomicBoolean;
 import org.apache.lucene.analysis.Analyzer;
 
 import org.apache.geode.cache.AttributesFactory;
-import org.apache.geode.cache.EvictionAlgorithm;
-import org.apache.geode.cache.EvictionAttributes;
 import org.apache.geode.cache.Region;
 import org.apache.geode.cache.RegionAttributes;
 import org.apache.geode.cache.asyncqueue.internal.AsyncEventQueueImpl;
@@ -83,21 +81,7 @@ public class LuceneRegionListener implements RegionListener {
 
     if (path.equals(this.regionPath) && this.beforeCreateInvoked.compareAndSet(false, true)) {
 
-      if (!attrs.getDataPolicy().withPartitioning()) {
-        // replicated region
-        throw new UnsupportedOperationException(
-            "Lucene indexes on replicated regions are not supported");
-      }
-
-      // For now we cannot support eviction with local destroy.
-      // Eviction with overflow to disk still needs to be supported
-      EvictionAttributes evictionAttributes = attrs.getEvictionAttributes();
-      EvictionAlgorithm evictionAlgorithm = evictionAttributes.getAlgorithm();
-      if (evictionAlgorithm != EvictionAlgorithm.NONE
-          && evictionAttributes.getAction().isLocalDestroy()) {
-        throw new UnsupportedOperationException(
-            "Lucene indexes on regions with eviction and action local destroy are not supported");
-      }
+      LuceneServiceImpl.validateRegionAttributes(attrs);
 
       String aeqId = LuceneServiceImpl.getUniqueIndexName(this.indexName, this.regionPath);
       if (!attrs.getAsyncEventQueueIds().contains(aeqId)) {
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
index 985e3ad..e0ab851 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
@@ -32,7 +32,10 @@ import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.miscellaneous.PerFieldAnalyzerWrapper;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
 
+import org.apache.geode.cache.AttributesFactory;
 import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.EvictionAlgorithm;
+import org.apache.geode.cache.EvictionAttributes;
 import org.apache.geode.cache.Region;
 import org.apache.geode.cache.RegionAttributes;
 import org.apache.geode.cache.asyncqueue.internal.AsyncEventQueueImpl;
@@ -202,20 +205,21 @@ public class LuceneServiceImpl implements InternalLuceneService {
   }
 
   public void createIndex(String indexName, String regionPath, Map<String, Analyzer> fieldAnalyzers,
-      LuceneSerializer serializer) {
+      LuceneSerializer serializer, boolean allowOnExistingRegion) {
     if (fieldAnalyzers == null || fieldAnalyzers.isEmpty()) {
       throw new IllegalArgumentException("At least one field must be indexed");
     }
     Analyzer analyzer = new PerFieldAnalyzerWrapper(new StandardAnalyzer(), fieldAnalyzers);
     Set<String> fieldsSet = fieldAnalyzers.keySet();
-    String[] fields = (String[]) fieldsSet.toArray(new String[fieldsSet.size()]);
+    String[] fields = fieldsSet.toArray(new String[fieldsSet.size()]);
 
-    createIndex(indexName, regionPath, analyzer, fieldAnalyzers, serializer, fields);
+    createIndex(indexName, regionPath, analyzer, fieldAnalyzers, serializer, allowOnExistingRegion,
+        fields);
   }
 
   public void createIndex(final String indexName, String regionPath, final Analyzer analyzer,
       final Map<String, Analyzer> fieldAnalyzers, final LuceneSerializer serializer,
-      final String... fields) {
+      boolean allowOnExistingRegion, final String... fields) {
 
     if (!regionPath.startsWith("/")) {
       regionPath = "/" + regionPath;
@@ -225,13 +229,60 @@ public class LuceneServiceImpl implements InternalLuceneService {
         regionPath, fields, analyzer, fieldAnalyzers, serializer));
 
     Region region = cache.getRegion(regionPath);
-    if (region != null) {
+
+    LuceneRegionListener regionListener = new LuceneRegionListener(this, cache, indexName,
+        regionPath, fields, analyzer, fieldAnalyzers, serializer);
+    if (region == null) {
+      cache.addRegionListener(regionListener);
+      return;
+    }
+
+    if (!allowOnExistingRegion) {
       definedIndexMap.remove(LuceneServiceImpl.getUniqueIndexName(indexName, regionPath));
       throw new IllegalStateException("The lucene index must be created before region");
     }
 
-    cache.addRegionListener(new LuceneRegionListener(this, cache, indexName, regionPath, fields,
-        analyzer, fieldAnalyzers, serializer));
+
+    createIndexOnExistingRegion(region, indexName, regionPath, fields, analyzer, fieldAnalyzers,
+        serializer);
+
+  }
+
+  private void createIndexOnExistingRegion(Region region, String indexName, String regionPath,
+      String[] fields, Analyzer analyzer, Map<String, Analyzer> fieldAnalyzers,
+      LuceneSerializer serializer) {
+    validateRegionAttributes(region.getAttributes());
+
+    String aeqId = LuceneServiceImpl.getUniqueIndexName(indexName, regionPath);
+    region.getAttributesMutator().addAsyncEventQueueId(aeqId);
+
+    // Add index creation profile
+    internalRegionArgs.addCacheServiceProfile(new LuceneIndexCreationProfile(indexName, regionPath,
+        fields, analyzer, fieldAnalyzers, serializer));
+
+    LuceneIndexImpl luceneIndex = beforeDataRegionCreated(indexName, regionPath,
+        region.getAttributes(), analyzer, fieldAnalyzers, aeqId, serializer, fields);
+
+    // Add internal async event id
+    internalRegionArgs.addInternalAsyncEventQueueId(aeqId);
+  }
+
+  static void validateRegionAttributes(RegionAttributes attrs) {
+    if (!attrs.getDataPolicy().withPartitioning()) {
+      // replicated region
+      throw new UnsupportedOperationException(
+          "Lucene indexes on replicated regions are not supported");
+    }
+
+    // For now we cannot support eviction with local destroy.
+    // Eviction with overflow to disk still needs to be supported
+    EvictionAttributes evictionAttributes = attrs.getEvictionAttributes();
+    EvictionAlgorithm evictionAlgorithm = evictionAttributes.getAlgorithm();
+    if (evictionAlgorithm != EvictionAlgorithm.NONE
+        && evictionAttributes.getAction().isLocalDestroy()) {
+      throw new UnsupportedOperationException(
+          "Lucene indexes on regions with eviction and action local destroy are not supported");
+    }
   }
 
   /**
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/xml/LuceneIndexCreation.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/xml/LuceneIndexCreation.java
index 7af43fb..3ed1bba 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/xml/LuceneIndexCreation.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/xml/LuceneIndexCreation.java
@@ -17,7 +17,6 @@ package org.apache.geode.cache.lucene.internal.xml;
 
 import java.util.*;
 
-import org.apache.geode.cache.Declarable;
 import org.apache.geode.cache.lucene.LuceneIndexExistsException;
 import org.apache.geode.cache.lucene.LuceneSerializer;
 import org.apache.geode.internal.i18n.LocalizedStrings;
@@ -100,7 +99,7 @@ public class LuceneIndexCreation implements LuceneIndex, Extension<Region<?, ?>>
         : new PerFieldAnalyzerWrapper(new StandardAnalyzer(), this.fieldAnalyzers);
     try {
       service.createIndex(getName(), getRegionPath(), analyzer, this.fieldAnalyzers,
-          getLuceneSerializer(), getFieldNames());
+          getLuceneSerializer(), false, getFieldNames());
     } catch (LuceneIndexExistsException e) {
       logger
           .info(LocalizedStrings.LuceneIndexCreation_IGNORING_DUPLICATE_INDEX_CREATION_0_ON_REGION_1
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
index 1d688fb..d0a1da8 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
@@ -39,6 +39,7 @@ import org.apache.geode.cache.Region;
 import org.apache.geode.cache.RegionFactory;
 import org.apache.geode.cache.RegionShortcut;
 import org.apache.geode.cache.lucene.internal.LuceneIndexCreationProfile;
+import org.apache.geode.cache.lucene.internal.LuceneIndexFactoryImpl;
 import org.apache.geode.cache.lucene.internal.LuceneIndexImplFactory;
 import org.apache.geode.cache.lucene.internal.LuceneRawIndex;
 import org.apache.geode.cache.lucene.internal.LuceneRawIndexFactory;
@@ -184,6 +185,15 @@ public class LuceneIndexCreationIntegrationTest extends LuceneIntegrationTest {
     createIndex("field1", "field2", "field3");
   }
 
+  @Test()
+  public void canCreateLuceneIndexAfterRegionCreatedIfAllowFlagIsSet()
+      throws IOException, ParseException {
+    createRegion();
+    final LuceneIndexFactoryImpl indexFactory =
+        (LuceneIndexFactoryImpl) LuceneServiceProvider.get(cache).createIndexFactory();
+    indexFactory.setFields("field1", "field2").create(INDEX_NAME, REGION_NAME, true);
+  }
+
   @Test
   public void cannotCreateLuceneIndexForReplicateRegion() throws IOException, ParseException {
     try {
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java
index 67759db..cd4afa1 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java
@@ -14,7 +14,6 @@
  */
 package org.apache.geode.cache.lucene.internal;
 
-import static org.junit.Assert.*;
 import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.Mockito.mock;
@@ -37,7 +36,7 @@ public class LuceneIndexFactoryImplJUnitTest {
     LuceneIndexFactory factory = new LuceneIndexFactoryImpl(service);
     factory.setLuceneSerializer(serializer);
     factory.create("index", "region");
-    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer));
+    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer), false);
   }
 
 }
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java
index c5ca8f8..c24495e 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java
@@ -62,7 +62,7 @@ public class LuceneServiceImplJUnitTest {
     factory.setLuceneSerializer(serializer);
     factory.setFields("field1", "field2");
     factory.create("index", "region");
-    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer));
+    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer), false);
   }
 
   @Test
@@ -74,7 +74,7 @@ public class LuceneServiceImplJUnitTest {
   @Test
   public void shouldThrowIllegalArgumentExceptionIfFieldsMapIsMissing() {
     thrown.expect(IllegalArgumentException.class);
-    service.createIndex("index", "region", Collections.emptyMap(), null);
+    service.createIndex("index", "region", Collections.emptyMap(), null, false);
   }
 
   @Test

-- 
To stop receiving notification emails like this one, please contact
"commits@geode.apache.org" <co...@geode.apache.org>.

[geode] 05/05: Cleanup IntelliJ refactoring glitch

Posted by la...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ladyvader pushed a commit to branch feature/GEODE-3930
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 71e52a33de9ef867bedeca72c4286710d5c3f08f
Author: Lynn Hughes-Godfrey <lh...@pivotal.io>
AuthorDate: Fri Nov 3 11:28:56 2017 -0700

    Cleanup IntelliJ refactoring glitch
---
 .../geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java   | 3 ++-
 .../apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java
index cd4afa1..bafb60a 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneIndexFactoryImplJUnitTest.java
@@ -36,7 +36,8 @@ public class LuceneIndexFactoryImplJUnitTest {
     LuceneIndexFactory factory = new LuceneIndexFactoryImpl(service);
     factory.setLuceneSerializer(serializer);
     factory.create("index", "region");
-    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer), false);
+    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer),
+        eq(false));
   }
 
 }
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java
index c24495e..736b3ca 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/internal/LuceneServiceImplJUnitTest.java
@@ -62,7 +62,8 @@ public class LuceneServiceImplJUnitTest {
     factory.setLuceneSerializer(serializer);
     factory.setFields("field1", "field2");
     factory.create("index", "region");
-    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer), false);
+    Mockito.verify(service).createIndex(eq("index"), eq("region"), any(), eq(serializer),
+        eq(false));
   }
 
   @Test

-- 
To stop receiving notification emails like this one, please contact
"commits@geode.apache.org" <co...@geode.apache.org>.

[geode] 03/05: Added integration and DUnit tests for index creation on an existing region.

Posted by la...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ladyvader pushed a commit to branch feature/GEODE-3930
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 210e7439e84aeb4739dc55c24a991679d88c06c8
Author: Dan Smith <up...@apache.org>
AuthorDate: Thu Nov 2 14:08:25 2017 -0700

    Added integration and DUnit tests for index creation on an existing
    region.
---
 .../cache/lucene/LuceneIndexCreationDUnitTest.java | 94 ++++++++++++++++++++++
 .../lucene/LuceneIndexCreationIntegrationTest.java | 17 ++++
 2 files changed, 111 insertions(+)

diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
index 948ba14..743ccd2 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
@@ -14,8 +14,12 @@
  */
 package org.apache.geode.cache.lucene;
 
+import org.apache.geode.cache.Cache;
+import org.apache.geode.cache.Region;
+import org.apache.geode.cache.lucene.internal.LuceneIndexFactoryImpl;
 import org.apache.geode.cache.lucene.internal.repository.serializer.HeterogeneousLuceneSerializer;
 import org.apache.geode.cache.lucene.test.LuceneTestUtilities;
+import org.apache.geode.cache.lucene.test.TestObject;
 import org.apache.geode.internal.i18n.LocalizedStrings;
 import org.apache.geode.test.dunit.SerializableRunnableIF;
 import org.apache.geode.test.junit.categories.DistributedTest;
@@ -25,15 +29,20 @@ import junitparams.Parameters;
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.core.KeywordAnalyzer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
+import org.hamcrest.Matchers;
+import org.junit.Rule;
 import org.junit.Test;
 import org.junit.experimental.categories.Category;
+import org.junit.rules.ExpectedException;
 import org.junit.runner.RunWith;
 
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
 import java.util.Collection;
+import java.util.Collections;
 import java.util.HashMap;
 import java.util.Map;
+import java.util.concurrent.TimeUnit;
 
 import static org.apache.geode.cache.lucene.test.LuceneTestUtilities.*;
 import static junitparams.JUnitParamsRunner.$;
@@ -43,6 +52,9 @@ import static org.junit.Assert.*;
 @RunWith(JUnitParamsRunner.class)
 public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
 
+  @Rule
+  public transient ExpectedException expectedException = ExpectedException.none();
+
   private Object[] parametersForMultipleIndexCreates() {
     Integer[] numIndexes = {1, 2, 10};
     RegionTestableType[] regionTestTypes = getListOfRegionTestTypes();
@@ -248,6 +260,65 @@ public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
     dataStore2.invoke(() -> initDataStore(createIndex, regionType));
   }
 
+  @Test
+  @Parameters({"PARTITION", "PARTITION_REDUNDANT"})
+  public void creatingIndexAfterRegionAndStartingUpSecondMemberSucceeds(RegionTestableType regionType) {
+    dataStore1.invoke(() -> {
+      regionType.createDataStore(getCache(), REGION_NAME);
+      createIndexAfterRegion("field1");
+    });
+
+    dataStore2.invoke(() -> {
+      createIndexAfterRegion("field1");
+      regionType.createDataStore(getCache(), REGION_NAME);
+    });
+    dataStore1.invoke(() -> {
+      putEntryAndQuery();
+    });
+  }
+
+  @Test()
+  @Parameters({"PARTITION", "PARTITION_REDUNDANT"})
+  public void creatingIndexAfterRegionAndStartingUpSecondMemberWithoutIndexFails(RegionTestableType regionType) {
+    dataStore1.invoke(() -> {
+      regionType.createDataStore(getCache(), REGION_NAME);
+      createIndexAfterRegion("field1");
+    });
+
+    expectedException.expectCause(Matchers.instanceOf(IllegalStateException.class));
+    dataStore2.invoke(() -> {
+      regionType.createDataStore(getCache(), REGION_NAME);
+      createIndexAfterRegion("field1");
+    });
+
+    dataStore1.invoke(() -> {
+      putEntryAndQuery();
+    });
+  }
+
+  @Test
+  @Parameters({"PARTITION", "PARTITION_REDUNDANT"})
+  public void creatingIndexAfterRegionInTwoMembersSucceed(RegionTestableType regionType) {
+    dataStore1.invoke(() -> {
+      regionType.createDataStore(getCache(), REGION_NAME);
+    });
+
+    dataStore2.invoke(() -> {
+      regionType.createDataStore(getCache(), REGION_NAME);
+    });
+
+    dataStore1.invoke(() -> {
+      createIndexAfterRegion("field1");
+    });
+
+    dataStore2.invoke(() -> {
+      createIndexAfterRegion("field1");
+    });
+
+    dataStore1.invoke(() -> {
+      putEntryAndQuery();
+    });
+  }
 
   @Test
   @Parameters(method = "getXmlAndExceptionMessages")
@@ -544,4 +615,27 @@ public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
   protected void verifyAsyncEventQueues(final int expectedSize) {
     assertEquals(expectedSize, getCache().getAsyncEventQueues(false).size());
   }
+
+  private void createIndexAfterRegion(String ... fields) {
+    LuceneService luceneService = LuceneServiceProvider.get(getCache());
+    LuceneIndexFactoryImpl indexFactory =
+        (LuceneIndexFactoryImpl) luceneService.createIndexFactory();
+    indexFactory.setFields(fields).create(INDEX_NAME, REGION_NAME, true);
+  }
+
+  private void putEntryAndQuery()
+      throws InterruptedException, LuceneQueryException {
+    Cache cache = getCache();
+    Region region = cache.getRegion(REGION_NAME);
+    region.put("key1", new TestObject("field1Value", "field2Value"));
+    LuceneService luceneService = LuceneServiceProvider.get(cache);
+    luceneService.waitUntilFlushed(INDEX_NAME, REGION_NAME, 1, TimeUnit.MINUTES);
+    LuceneQuery<Object, Object>
+        query =
+        luceneService.createLuceneQueryFactory()
+            .create(INDEX_NAME, REGION_NAME, "field1:field1Value", "field1");
+    assertEquals(Collections.singletonList("key1"), query.findKeys());
+  }
+
+
 }
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
index 8a57666..0b5bb04 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
@@ -208,6 +208,23 @@ public class LuceneIndexCreationIntegrationTest extends LuceneIntegrationTest {
     assertEquals(Collections.singletonList("key1"), query.findKeys());
   }
 
+
+  @Test()
+  public void creatingDuplicateLuceneIndexFails()
+      throws IOException, ParseException, InterruptedException, LuceneQueryException {
+    Region region = createRegion();
+    LuceneService luceneService = LuceneServiceProvider.get(cache);
+    final LuceneIndexFactoryImpl indexFactory =
+        (LuceneIndexFactoryImpl) luceneService.createIndexFactory();
+    indexFactory.setFields("field1", "field2").create(INDEX_NAME, REGION_NAME, true);
+
+    LuceneIndex index = luceneService.getIndex(INDEX_NAME, REGION_NAME);
+    assertNotNull(index);
+
+    expectedException.expect(LuceneIndexExistsException.class);
+    indexFactory.setFields("field1", "field2").create(INDEX_NAME, REGION_NAME, true);
+  }
+
   @Test
   public void cannotCreateLuceneIndexForReplicateRegion() throws IOException, ParseException {
     try {

-- 
To stop receiving notification emails like this one, please contact
"commits@geode.apache.org" <co...@geode.apache.org>.

[geode] 04/05: Splotless

Posted by la...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

ladyvader pushed a commit to branch feature/GEODE-3930
in repository https://gitbox.apache.org/repos/asf/geode.git

commit 135b9582a1db792042acb94ff070d8cdb1336ee4
Author: Dan Smith <up...@apache.org>
AuthorDate: Thu Nov 2 14:10:05 2017 -0700

    Splotless
---
 .../org/apache/geode/internal/cache/AbstractRegion.java |  2 +-
 .../org/apache/geode/internal/cache/LocalRegion.java    |  5 +++--
 .../apache/geode/internal/cache/PartitionedRegion.java  |  3 +--
 .../geode/cache/lucene/internal/LuceneServiceImpl.java  |  8 ++++----
 .../cache/lucene/LuceneIndexCreationDUnitTest.java      | 17 ++++++++---------
 .../lucene/LuceneIndexCreationIntegrationTest.java      |  6 ++----
 6 files changed, 19 insertions(+), 22 deletions(-)

diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java
index 0c5709a..59fb160 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/AbstractRegion.java
@@ -874,7 +874,7 @@ public abstract class AbstractRegion implements InternalRegion, AttributesMutato
 
   public void addAsyncEventQueueId(String asyncEventQueueId, boolean isInternal) {
     getAsyncEventQueueIds().add(asyncEventQueueId);
-    if(!isInternal) {
+    if (!isInternal) {
       getVisibleAsyncEventQueueIds().add(asyncEventQueueId);
     }
     setAllGatewaySenderIds();
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
index af275a5..c2e916e 100644
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/LocalRegion.java
@@ -542,7 +542,8 @@ public class LocalRegion extends AbstractRegion implements InternalRegion, Loade
     return this.stopper;
   }
 
-  private final CopyOnWriteHashMap<String, CacheServiceProfile> cacheServiceProfiles = new CopyOnWriteHashMap<>();
+  private final CopyOnWriteHashMap<String, CacheServiceProfile> cacheServiceProfiles =
+      new CopyOnWriteHashMap<>();
 
   private static String calcFullPath(String regionName, LocalRegion parentRegion) {
     StringBuilder buf = null;
@@ -635,7 +636,7 @@ public class LocalRegion extends AbstractRegion implements InternalRegion, Loade
     this.isUsedForParallelGatewaySenderQueue =
         internalRegionArgs.isUsedForParallelGatewaySenderQueue();
     this.serialGatewaySender = internalRegionArgs.getSerialGatewaySender();
-    if(internalRegionArgs.getCacheServiceProfiles() != null) {
+    if (internalRegionArgs.getCacheServiceProfiles() != null) {
       this.cacheServiceProfiles.putAll(internalRegionArgs.getCacheServiceProfiles());
     }
 
diff --git a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java
index 5192751..da8697b 100755
--- a/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java
+++ b/geode-core/src/main/java/org/apache/geode/internal/cache/PartitionedRegion.java
@@ -1221,8 +1221,7 @@ public class PartitionedRegion extends LocalRegion
     addAsyncEventQueueId(asyncEventQueueId, false);
   }
 
-  public void addAsyncEventQueueId(
-      String asyncEventQueueId, boolean isInternal) {
+  public void addAsyncEventQueueId(String asyncEventQueueId, boolean isInternal) {
     super.addAsyncEventQueueId(asyncEventQueueId, isInternal);
     new UpdateAttributesProcessor(this).distribute();
     ((PartitionedRegion) this).distributeUpdatedProfileOnSenderCreation();
diff --git a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
index 4d2bf31..22f498c 100644
--- a/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
+++ b/geode-lucene/src/main/java/org/apache/geode/cache/lucene/internal/LuceneServiceImpl.java
@@ -250,16 +250,16 @@ public class LuceneServiceImpl implements InternalLuceneService {
 
   }
 
-  private void createIndexOnExistingRegion(PartitionedRegion region, String indexName, String regionPath,
-      String[] fields, Analyzer analyzer, Map<String, Analyzer> fieldAnalyzers,
+  private void createIndexOnExistingRegion(PartitionedRegion region, String indexName,
+      String regionPath, String[] fields, Analyzer analyzer, Map<String, Analyzer> fieldAnalyzers,
       LuceneSerializer serializer) {
     validateRegionAttributes(region.getAttributes());
 
     String aeqId = LuceneServiceImpl.getUniqueIndexName(indexName, regionPath);
     region.addAsyncEventQueueId(aeqId, true);
 
-    region.addCacheServiceProfile(new LuceneIndexCreationProfile(indexName, regionPath,
-        fields, analyzer, fieldAnalyzers, serializer));
+    region.addCacheServiceProfile(new LuceneIndexCreationProfile(indexName, regionPath, fields,
+        analyzer, fieldAnalyzers, serializer));
 
     LuceneIndexImpl luceneIndex = beforeDataRegionCreated(indexName, regionPath,
         region.getAttributes(), analyzer, fieldAnalyzers, aeqId, serializer, fields);
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
index 743ccd2..fd296fd 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationDUnitTest.java
@@ -262,7 +262,8 @@ public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
 
   @Test
   @Parameters({"PARTITION", "PARTITION_REDUNDANT"})
-  public void creatingIndexAfterRegionAndStartingUpSecondMemberSucceeds(RegionTestableType regionType) {
+  public void creatingIndexAfterRegionAndStartingUpSecondMemberSucceeds(
+      RegionTestableType regionType) {
     dataStore1.invoke(() -> {
       regionType.createDataStore(getCache(), REGION_NAME);
       createIndexAfterRegion("field1");
@@ -279,7 +280,8 @@ public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
 
   @Test()
   @Parameters({"PARTITION", "PARTITION_REDUNDANT"})
-  public void creatingIndexAfterRegionAndStartingUpSecondMemberWithoutIndexFails(RegionTestableType regionType) {
+  public void creatingIndexAfterRegionAndStartingUpSecondMemberWithoutIndexFails(
+      RegionTestableType regionType) {
     dataStore1.invoke(() -> {
       regionType.createDataStore(getCache(), REGION_NAME);
       createIndexAfterRegion("field1");
@@ -616,24 +618,21 @@ public class LuceneIndexCreationDUnitTest extends LuceneDUnitTest {
     assertEquals(expectedSize, getCache().getAsyncEventQueues(false).size());
   }
 
-  private void createIndexAfterRegion(String ... fields) {
+  private void createIndexAfterRegion(String... fields) {
     LuceneService luceneService = LuceneServiceProvider.get(getCache());
     LuceneIndexFactoryImpl indexFactory =
         (LuceneIndexFactoryImpl) luceneService.createIndexFactory();
     indexFactory.setFields(fields).create(INDEX_NAME, REGION_NAME, true);
   }
 
-  private void putEntryAndQuery()
-      throws InterruptedException, LuceneQueryException {
+  private void putEntryAndQuery() throws InterruptedException, LuceneQueryException {
     Cache cache = getCache();
     Region region = cache.getRegion(REGION_NAME);
     region.put("key1", new TestObject("field1Value", "field2Value"));
     LuceneService luceneService = LuceneServiceProvider.get(cache);
     luceneService.waitUntilFlushed(INDEX_NAME, REGION_NAME, 1, TimeUnit.MINUTES);
-    LuceneQuery<Object, Object>
-        query =
-        luceneService.createLuceneQueryFactory()
-            .create(INDEX_NAME, REGION_NAME, "field1:field1Value", "field1");
+    LuceneQuery<Object, Object> query = luceneService.createLuceneQueryFactory().create(INDEX_NAME,
+        REGION_NAME, "field1:field1Value", "field1");
     assertEquals(Collections.singletonList("key1"), query.findKeys());
   }
 
diff --git a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
index 0b5bb04..5f4e74b 100644
--- a/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
+++ b/geode-lucene/src/test/java/org/apache/geode/cache/lucene/LuceneIndexCreationIntegrationTest.java
@@ -200,10 +200,8 @@ public class LuceneIndexCreationIntegrationTest extends LuceneIntegrationTest {
 
     region.put("key1", new TestObject("hello", "world"));
     luceneService.waitUntilFlushed(INDEX_NAME, REGION_NAME, 1, TimeUnit.MINUTES);
-    LuceneQuery<Object, Object>
-        query =
-        luceneService.createLuceneQueryFactory()
-            .create(INDEX_NAME, REGION_NAME, "field1:hello", "field1");
+    LuceneQuery<Object, Object> query = luceneService.createLuceneQueryFactory().create(INDEX_NAME,
+        REGION_NAME, "field1:hello", "field1");
 
     assertEquals(Collections.singletonList("key1"), query.findKeys());
   }

-- 
To stop receiving notification emails like this one, please contact
"commits@geode.apache.org" <co...@geode.apache.org>.