如何设置Apache ignite缓存的查询超时?

时间:2019-07-30 15:34:31

标签: caching configuration config ignite tibco-business-works

我正在研究TIBCO BusinessWorks 5.3。因此,我们通常在SQL Direct / JDBC查询活动中提供查询超时。但是对于Ignite缓存,超时似乎不起作用。

这已安装在Linux服务器上。我试图将setTimeout属性添加到cacheConfiguration属性节点下的config xml中。

我尝试了2种不同的配置

1。

<bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="cacheConfiguration">
 <list>
   <bean class="org.apache.ignite.configuration.CacheConfiguration">
     <!--some properties-->
     <property name="setTimeout" value="60" />
   </bean>                      
</list>
</property> 

2。

<bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="cacheConfiguration">
 <list>
   <bean class="org.apache.ignite.configuration.CacheConfiguration">
     <!--some properties-->
   </bean>
  <bean class="org.apache.ignite.cache.query.SqlFieldsQuery"> 
    <property name="setTimeout" value="60" />
  </bean>                       
</list>
</property>

错误消息如下所示-

    org.springframework.beans.NotWritablePropertyException: Invalid 
    property setTimeout of bean class 
    [org.apache.ignite.configuration.CacheConfiguration]: Bean property 
    setTimeout is not writable or has an invalid setter method.

1 个答案:

答案 0 :(得分:2)

当前,您可以使用SqlQuery / SqlFieldsQuery API来设置查询的各个超时:https://apacheignite-sql.readme.io/docs/query-cancellation

这是一个已知的问题,没有选项可以配置查询的默认超时,这是供您参考的链接(有一个月前处于活动状态的PR):https://issues.apache.org/jira/browse/IGNITE-7285

已实现JDBC查询超时,但尚未记录/发布:https://issues.apache.org/jira/browse/IGNITE-5438