使用 QueryEntity 后获取空查询输出
Getting null query output after using QueryEntity
我已经为我的数据库编写了以下查询实体。我提供此文件来点燃服务器节点以进行索引映射。加载部分数据是通过点燃客户端节点完成的。
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="peerClassLoadingEnabled" value="false"/>
<property name="cacheConfiguration">
<list>
<!-- Partitioned cache example configuration (Atomic mode). -->
<bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="warehouse_cache"/>
<property name="backups" value="0"/>
<property name="copyOnRead" value="true"/>
<property name="memoryMode" value="ONHEAP_TIERED"/>
<property name="cacheMode" value="PARTITIONED"/>
<!-- Configure query entities -->
<property name="queryEntities">
<list>
<bean class="org.apache.ignite.cache.QueryEntity">
<property name="keyType" value="java.lang.Long"/>
<property name="valueType" value="schema.warehouse"/>
<property name="fields">
<map>
<entry key="w_id" value="java.lang.Integer"/>
<entry key="w_name" value="java.lang.String"/>
<entry key="w_street_1" value="java.lang.String"/>
<entry key="w_street_2" value="java.lang.String"/>
<entry key="w_city" value="java.lang.String"/>
<entry key="w_state" value="java.lang.String"/>
<entry key="w_zip" value="java.lang.String"/>
<entry key="w_tax" value="java.lang.Double"/>
<entry key="w_ytd" value="java.lang.Double"/>
</map>
</property>
<property name="indexes">
<list>
<bean class="org.apache.ignite.cache.QueryIndex">
<constructor-arg value="w_id"/>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</beans>
此仓库 table 的所有条目均已正确加载(使用 ignitevisorcmd.sh 验证)。对于这个查询实体,我创建了包模式的 jar 文件,其中包含仓库 class。我将这个 jar 文件保存在 apache ignite 安装路径的 libs 文件夹中。当我 运行 查询此仓库 table 时,我得到空输出。为什么会这样?
配置中的值类型看起来可疑:
<property name="valueType" value="schema.warehouse"/>
确保此值是正确的值 class 名称。还有你在执行什么查询?
我已经为我的数据库编写了以下查询实体。我提供此文件来点燃服务器节点以进行索引映射。加载部分数据是通过点燃客户端节点完成的。
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<property name="peerClassLoadingEnabled" value="false"/>
<property name="cacheConfiguration">
<list>
<!-- Partitioned cache example configuration (Atomic mode). -->
<bean class="org.apache.ignite.configuration.CacheConfiguration">
<property name="name" value="warehouse_cache"/>
<property name="backups" value="0"/>
<property name="copyOnRead" value="true"/>
<property name="memoryMode" value="ONHEAP_TIERED"/>
<property name="cacheMode" value="PARTITIONED"/>
<!-- Configure query entities -->
<property name="queryEntities">
<list>
<bean class="org.apache.ignite.cache.QueryEntity">
<property name="keyType" value="java.lang.Long"/>
<property name="valueType" value="schema.warehouse"/>
<property name="fields">
<map>
<entry key="w_id" value="java.lang.Integer"/>
<entry key="w_name" value="java.lang.String"/>
<entry key="w_street_1" value="java.lang.String"/>
<entry key="w_street_2" value="java.lang.String"/>
<entry key="w_city" value="java.lang.String"/>
<entry key="w_state" value="java.lang.String"/>
<entry key="w_zip" value="java.lang.String"/>
<entry key="w_tax" value="java.lang.Double"/>
<entry key="w_ytd" value="java.lang.Double"/>
</map>
</property>
<property name="indexes">
<list>
<bean class="org.apache.ignite.cache.QueryIndex">
<constructor-arg value="w_id"/>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</list>
</property>
</bean>
</beans>
此仓库 table 的所有条目均已正确加载(使用 ignitevisorcmd.sh 验证)。对于这个查询实体,我创建了包模式的 jar 文件,其中包含仓库 class。我将这个 jar 文件保存在 apache ignite 安装路径的 libs 文件夹中。当我 运行 查询此仓库 table 时,我得到空输出。为什么会这样?
配置中的值类型看起来可疑:
<property name="valueType" value="schema.warehouse"/>
确保此值是正确的值 class 名称。还有你在执行什么查询?