Barry Oglesby created GEODE-2688:
------------------------------------

             Summary: The Lucene xml in the cluster config includes the 
internal async event queue id
                 Key: GEODE-2688
                 URL: https://issues.apache.org/jira/browse/GEODE-2688
             Project: Geode
          Issue Type: Bug
          Components: lucene
            Reporter: Barry Oglesby


The cluster config xml contains the internal async-event-queue-ids like:
{noformat}
<region name="data">
  <region-attributes async-event-queue-ids="full_index#_data" 
data-policy="partition">
    <partition-attributes redundant-copies="1"/>
  </region-attributes>
  <lucene:index xmlns:lucene="http://geode.apache.org/schema/lucene"; 
name="full_index">
    <lucene:field 
analyzer="org.apache.lucene.analysis.standard.StandardAnalyzer" name="field1"/>
  </lucene:index>
</region>
{noformat}
This is not necessary since the async event id will be added to the 
{{AttributesFactory}} in the {{RegionListener beforeCreate}} call:
{noformat}
java.lang.Exception: Stack trace
        at java.lang.Thread.dumpStack(Thread.java:1329)
        at 
org.apache.geode.cache.lucene.internal.LuceneServiceImpl.getUniqueIndexName(LuceneServiceImpl.java:127)
        at 
org.apache.geode.cache.lucene.internal.LuceneRegionListener.beforeCreate(LuceneRegionListener.java:88)
        at 
org.apache.geode.internal.cache.GemFireCacheImpl.invokeRegionBefore(GemFireCacheImpl.java:3363)
        at 
org.apache.geode.internal.cache.GemFireCacheImpl.createVMRegion(GemFireCacheImpl.java:3212)
        at 
org.apache.geode.internal.cache.GemFireCacheImpl.basicCreateRegion(GemFireCacheImpl.java:3190)
        at 
org.apache.geode.internal.cache.GemFireCacheImpl.createRegion(GemFireCacheImpl.java:3178)
        at org.apache.geode.cache.RegionFactory.create(RegionFactory.java:762)
        at 
org.apache.geode.management.internal.cli.functions.RegionCreateFunction.createRegion(RegionCreateFunction.java:358)
        at 
org.apache.geode.management.internal.cli.functions.RegionCreateFunction.execute(RegionCreateFunction.java:93)
        at 
org.apache.geode.internal.cache.MemberFunctionStreamingMessage.process(MemberFunctionStreamingMessage.java:191)
        at 
org.apache.geode.distributed.internal.DistributionMessage.scheduleAction(DistributionMessage.java:376)
        at 
org.apache.geode.distributed.internal.DistributionMessage$1.run(DistributionMessage.java:442)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at 
org.apache.geode.distributed.internal.DistributionManager.runUntilShutdown(DistributionManager.java:621)
        at 
org.apache.geode.distributed.internal.DistributionManager$9$1.run(DistributionManager.java:1067)
        at java.lang.Thread.run(Thread.java:745)
{noformat}
This is not a huge deal, except in the case where the index is destroyed. The 
_destroy lucene index_ command currently removes just the *lucene:index* from 
the cluster config xml. It doesn't do anything with the 
*async-event-queue-ids*. There would have to be a separate {{XmlEntity}} to 
deal with those, so it would be better if they weren't included in the first 
place.




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to