[ 
https://issues.apache.org/jira/browse/GEODE-2764?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15968352#comment-15968352
 ] 

ASF GitHub Bot commented on GEODE-2764:
---------------------------------------

Github user nabarunnag commented on the issue:

    https://github.com/apache/geode/pull/449
  
    @jhuynh1 
    I have the changes you mentioned and also added a dunit test to confirm the 
behaviour


> Index entry not entered into cluster config xml if region name contains a 
> function call like entrySet()
> -------------------------------------------------------------------------------------------------------
>
>                 Key: GEODE-2764
>                 URL: https://issues.apache.org/jira/browse/GEODE-2764
>             Project: Geode
>          Issue Type: Bug
>            Reporter: nabarun
>
> Steps to recreate the issue type the following in a gfsh instance:
> 1. start locator --name=locator
> 2. start server --name=server
> 3. create region --name=regionName --type=REPLICATE_PERSISTENT 
> 4. create index --name=regionIndex --region="regionName.entrySet() r" 
> --expression=r.key
> -- this will result in an error message 
> {noformat}
> Failed to create index "regionIndex" due to following reasons
> null
> {noformat}
> Cause:
> The index is created but while putting the entry into the clusterconfig it 
> tries to put the region name as regionName.entrySet() which does not exist. 
> cache.getRegion(regionName.entrySet()) will result in null and no xml entry 
> is added to the clusterconfig. So when the server is restarted, there is no 
> index entry in the cluster config xml hence the index is not re-created.
> Solution:
> If the region name contains the character '(' and ')' spilt the region name 
> at the index of '.' and check if the region exists. 
> If the check returns successful only then enter the entry into the cluster 
> config.



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

Reply via email to