2016-04-25 4 views
1

Folgende Ausnahme tritt auf, wenn Apache verwendet, zünden Data Grid mit Schema-Import-Dienstprogramm. Eine Tabelle "Mitarbeiter" wurde mit dem Primärschlüssel "emp_no" als Spaltenname erstellt. generiert pojo Klassen und Konfiguration mit Apache zünden Schemaimport-Dienstprogramm. habe versucht, ein Beispielprogramm auszuführen, das mit der Distribution geliefert wird. Danach die Ausnahme. Apache Ignite Version ist: 1.5.0-finalAusnahme bei der Verwendung des Primärschlüssels mit "Unterstrich" -Zeichen in Apache zünden

[16:45:58,890][ERROR][exchange-worker-#49%null%][GridDhtPartitionsExchangeFuture] Failed to reinitialize local partitions (preloading will be stopped): GridDhtPartitionExchangeId [topVer=AffinityTopologyVersion [topVer=1, minorTopVer=1], nodeId=1073ac4a, evt=DISCOVERY_CUSTOM_EVT] 
class org.apache.ignite.IgniteCheckedException: Failed to register query type: TypeDescriptor [name=Employees, fields={empNo=class java.lang.Object, birthDate=class java.sql.Date, firstName=class java.lang.Object, lastName=class java.lang.Object, gender=class java.lang.Object, hireDate=class java.sql.Date}, indexes={PRIMARY=IndexDescriptor [type=SORTED]}, fullTextIdx=null, keyCls=class java.lang.Object, valCls=class java.lang.Object, valTextIdx=false, registered=false] 
    at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1167) 
    at org.apache.ignite.internal.processors.query.GridQueryProcessor.initializeCache(GridQueryProcessor.java:291) 
    at org.apache.ignite.internal.processors.query.GridQueryProcessor.onCacheStart(GridQueryProcessor.java:457) 
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.startCache(GridCacheProcessor.java:1038) 
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCacheStart(GridCacheProcessor.java:1648) 
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.prepareCachesStart(GridCacheProcessor.java:1563) 
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.startCaches(GridDhtPartitionsExchangeFuture.java:956) 
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:523) 
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1297) 
    at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: org.h2.jdbc.JdbcSQLException: Column "EMP_NO" not found; SQL statement: 
CREATE TABLE "EmployeesCache".Employees (_key OTHER NOT NULL,_val OTHER,empNo OTHER,birthDate DATE,firstName OTHER,lastName OTHER,gender OTHER,hireDate DATE) engine "org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine" [42122-175] 
    at org.h2.message.DbException.getJdbcSQLException(DbException.java:332) 
    at org.h2.message.DbException.get(DbException.java:172) 
    at org.h2.message.DbException.get(DbException.java:149) 
    at org.h2.table.Table.getColumn(Table.java:626) 
    at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing$TableDescriptor.createIndexes(IgniteH2Indexing.java:1984) 
    at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table.<init>(GridH2Table.java:106) 
    at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:675) 
    at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:659) 
    at org.h2.schema.Schema.createTable(Schema.java:584) 
    at org.h2.command.ddl.CreateTable.update(CreateTable.java:135) 
    at org.h2.command.CommandContainer.update(CommandContainer.java:79) 
    at org.h2.command.Command.executeUpdate(Command.java:253) 
    at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:181) 
    at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:156) 
    at org.apache.ignite.internal.processors.query.h2.opt.GridH2Table$Engine.createTable(GridH2Table.java:700) 
    at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.createTable(IgniteH2Indexing.java:1288) 
    at org.apache.ignite.internal.processors.query.h2.IgniteH2Indexing.registerType(IgniteH2Indexing.java:1160) 
    ... 10 more 
[16:45:58,890][ERROR][exchange-worker-#49%null%][GridCachePartitionExchangeManager] Runtime error caught during grid runnable execution: GridWorker [name=partition-exchanger, gridName=null, finished=false, isCancelled=false, hashCode=2115830072, interrupted=false, runner=exchange-worker-#49%null%] 
java.lang.NullPointerException 
    at org.apache.ignite.internal.processors.cache.GridCacheProcessor.onExchangeDone(GridCacheProcessor.java:1723) 
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onDone(GridDhtPartitionsExchangeFuture.java:1109) 
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.onDone(GridDhtPartitionsExchangeFuture.java:87) 
    at org.apache.ignite.internal.util.future.GridFutureAdapter.onDone(GridFutureAdapter.java:334) 
    at org.apache.ignite.internal.processors.cache.distributed.dht.preloader.GridDhtPartitionsExchangeFuture.init(GridDhtPartitionsExchangeFuture.java:873) 
    at org.apache.ignite.internal.processors.cache.GridCachePartitionExchangeManager$ExchangeWorker.body(GridCachePartitionExchangeManager.java:1297) 
    at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:110) 
    at java.lang.Thread.run(Thread.java:745) 

Es scheint, als wenn die Tabelle jeden Index aufweist, die Spalten mit „_“ Zeichen hat, wird dieses Problem verursacht.

Antwort

0

Im Schema Import Utility wurden vor kurzem viele Fehler behoben. Könnten Sie versuchen, POJOs erneut zu generieren und ein weiteres Mal mit dem Schema Import Utility von nightly build zu konfigurieren?

Verwandte Themen