2016-11-28 18 views
0

Ich habe folgende Abfrageeinheit für meine Datenbank geschrieben. Ich stelle diese Datei zur Verfügung, um den Serverknoten für die Indexzuordnung zu initialisieren. Das Laden eines Teils der Daten erfolgt über den ignite client node.Abrufen von Nullabfragen nach Verwendung von 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"> 
 
     
 
\t <property name="peerClassLoadingEnabled" value="false"/> 
 
\t <property name="cacheConfiguration"> 
 
      <list> 
 
      
 
       <!-- Partitioned cache example configuration (Atomic mode). --> 
 
      <bean class="org.apache.ignite.configuration.CacheConfiguration"> 
 
     \t <property name="name" value="warehouse_cache"/> 
 
\t \t  <property name="backups" value="0"/> 
 
\t \t  <property name="copyOnRead" value="true"/> 
 
\t \t  <property name="memoryMode" value="ONHEAP_TIERED"/> 
 
\t \t  <property name="cacheMode" value="PARTITIONED"/> \t 
 
\t \t \t 
 
\t \t \t <!-- Configure query entities --> 
 
\t \t \t <property name="queryEntities"> 
 
\t \t \t \t <list> 
 
\t \t \t \t \t <bean class="org.apache.ignite.cache.QueryEntity"> 
 
\t \t \t \t \t \t <property name="keyType" value="java.lang.Long"/> 
 
\t \t \t \t \t \t <property name="valueType" value="schema.warehouse"/> 
 

 
\t \t \t \t \t \t <property name="fields"> 
 
\t \t \t \t \t \t \t <map> 
 
\t \t \t \t \t \t \t \t <entry key="w_id" value="java.lang.Integer"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_name" value="java.lang.String"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_street_1" value="java.lang.String"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_street_2" value="java.lang.String"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_city" value="java.lang.String"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_state" value="java.lang.String"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_zip" value="java.lang.String"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_tax" value="java.lang.Double"/> 
 
\t \t \t \t \t \t \t \t <entry key="w_ytd" value="java.lang.Double"/> 
 
\t \t \t \t \t \t \t \t 
 
\t \t \t \t \t \t \t </map> 
 
\t \t \t \t \t \t </property> 
 

 
\t \t \t \t \t \t <property name="indexes"> 
 
\t \t \t \t \t \t \t <list> 
 
\t \t \t \t \t \t \t \t <bean class="org.apache.ignite.cache.QueryIndex"> 
 
\t \t \t \t \t \t \t \t \t <constructor-arg value="w_id"/> 
 
\t \t \t \t \t \t \t \t </bean> 
 
\t \t \t \t \t \t \t </list> 
 
\t \t \t \t \t \t </property> 
 
\t \t \t \t \t </bean> 
 
\t \t \t \t </list> 
 
\t \t \t </property> \t \t 
 
\t   </bean> 
 
      
 
      
 
      </list> 
 
    </property> 
 
\t 
 
    </bean> 
 
</beans>

Alle Einträge dieses Warehouse-Tabelle wird korrekt (überprüft mit ignitevisorcmd.sh) geladen. Für diese Abfrageeinheit habe ich die JAR-Datei des Paketschemas erstellt, die die Warehouse-Klasse enthält. Ich habe diese JAR-Datei in libs-Ordner in Apache gezündet Installationspfad. Wenn ich eine Abfrage für diese Warehouse-Tabelle ausfühle, erhalte ich eine Nullausgabe. Warum passiert dies?

Antwort

0

Der Werttyp in der Konfiguration sieht verdächtig:

<property name="valueType" value="schema.warehouse"/> 

Vergewissern Sie sich, dass dieser Wert korrekten Wert Klassenname ist. Welche Abfrage führen Sie auch aus?

+0

Ich habe warehouse.java mit dem Klassenlager zum Paketschema hinzugefügt. Deshalb habe ich schema.warehouse geschrieben. Die Abfrage, die ich ausführe, ist 'SELECT * aus dem Warehouse w WHERE w.w_id = 1' und der Eintrag, der w_id = 1 entspricht, ist im Warehouse-Cache vorhanden. – rishi007bansod

Verwandte Themen