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

Masaki Yamakawa commented on GEODE-3809:
----------------------------------------

[~huynhja]

Thank you for the quick response.

I understand the content of the comment and convinced it. I confirmed that OQL 
result will be returned by changing to PROXY.
I close this issue.

Regarding the content of GEODE-3811, I would like to discuss it with that 
ticket.


> Invalid OQL result to region with entry-idle-time setting
> ---------------------------------------------------------
>
>                 Key: GEODE-3809
>                 URL: https://issues.apache.org/jira/browse/GEODE-3809
>             Project: Geode
>          Issue Type: Bug
>          Components: querying
>            Reporter: Masaki Yamakawa
>
> I am setting the expiration of entry-idle-time to Region. Despite periodic 
> access to the region, I discovered an event that data can not be get with OQL 
> after the time set by entry-idle-time has elapsed. I am using Geode in the 
> production, so I want you to solve this problem as soon as possible.
> The cache.xml of the server is as follows:
> {code:xml}
> <cache>
>   <cache-server port="7777" />
>   <region name="Data" refid="PARTITION">
>     <region-attributes>
>       <entry-idle-time>
>         <expiration-attributes timeout="10" action="destroy" />
>       </entry-idle-time>
>     </region-attributes>
>   </region>
> </cache>
> {code}
> The source code of the client is as follows:
> {code:java}
> private static final Integer KEY = 1;
> public static void main(String[] args) throws Exception {
>       Properties props = new Properties();
>       props.setProperty("cache-xml-file", "clientcache.xml");
>       ClientCacheFactory factory = new ClientCacheFactory(props);
>       ClientCache cache = factory.create();
>       Region<Integer, String> region = cache.getRegion("Data");
>       region.put(KEY, "InitialValue");
>       Thread.sleep(7000);
>       System.out.println("Get Result1=" + region.get(1));
>       Pool pool = PoolManager.find("ClientPool");
>       Query query = pool.getQueryService().newQuery("select k from 
> /Data.keySet k");
>       // Normal OQL result
>       SelectResults result = SelectResults.class.cast(query.execute());
>       System.out.println("Get Result2=" + region.get(1));
>       System.out.println("Query Result2=" + result.size() + ", value=" + 
> result.iterator().next());
>       Thread.sleep(5000);
>       // Invalid OQL result!!!
>       result = SelectResults.class.cast(query.execute());
>       System.out.println("Get Result3=" + region.get(1));
>       System.out.println("Query Result3=" + result.size() + ", value=" + 
> (result.isEmpty() ? null : result.iterator().next()));
>       System.out.println("Get Result4=" + region.get(1));
>       cache.close();
>       System.exit(0);
> }
> {code}
> {code:xml}
> <client-cache>
>   <pool name="ClientPool" subscription-enabled="true">
>     <server host="localhost" port="7777" />
>   </pool>
>   <region name="Data">
>     <region-attributes refid="LOCAL" pool-name="ClientPool" />
>   </region>
> </client-cache>
> {code}



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to