空指针异常和corda的H2控制台中未找到表“ SYNONYMS”错误

时间:2018-08-31 05:42:13

标签: corda

我是corda的新手,当我尝试执行corda节点时,这些节点将继续显示以下错误:

java.lang.NullPointerException at
> co.paralleluniverse.fibers.instrument.MethodDatabase$ClassEntry.equals(MethodDatabase.java:557)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.recordSuspendableMethods(MethodDatabase.java:265)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.checkClass(MethodDatabase.java:327)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.getOrLoadClassEntry(MethodDatabase.java:183)
> at
> co.paralleluniverse.fibers.instrument.SimpleSuspendableClassifier.isSuspendable(SimpleSuspendableClassifier.java:156)
> at
> co.paralleluniverse.fibers.instrument.DefaultSuspendableClassifier.isSuspendable(DefaultSuspendableClassifier.java:47)
> at
> co.paralleluniverse.fibers.instrument.CheckInstrumentationVisitor.visitMethod(CheckInstrumentationVisitor.java:130)
> at co.paralleluniverse.asm.ClassReader.b(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.fibers.instrument.MethodDatabase.checkFileAndClose(MethodDatabase.java:347)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.checkClass(MethodDatabase.java:324)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.getOrLoadClassEntry(MethodDatabase.java:183)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.isMethodSuspendable0(MethodDatabase.java:194)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.isMethodSuspendable(MethodDatabase.java:161)
> at
> co.paralleluniverse.fibers.instrument.InstrumentMethod.isSuspendableCall(InstrumentMethod.java:231)
> at
> co.paralleluniverse.fibers.instrument.LabelSuspendableCallSitesClassVisitor$1.visitMethodInsn(LabelSuspendableCallSitesClassVisitor.java:64)
> at co.paralleluniverse.asm.ClassReader.a(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.b(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:123)
> at
> co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:94)
> at
> co.paralleluniverse.fibers.instrument.JavaAgent$Transformer.transform(JavaAgent.java:209)
> at sun.instrument.TransformerManager.transform(Unknown Source) at
> sun.instrument.InstrumentationImpl.transform(Unknown Source) at
> java.lang.ClassLoader.defineClass1(Native Method) at
> java.lang.ClassLoader.defineClass(Unknown Source) at
> java.security.SecureClassLoader.defineClass(Unknown Source) at
> java.net.URLClassLoader.defineClass(Unknown Source) at
> java.net.URLClassLoader.access$100(Unknown Source) at
> java.net.URLClassLoader$1.run(Unknown Source) at
> java.net.URLClassLoader$1.run(Unknown Source) at
> java.security.AccessController.doPrivileged(Native Method) at
> java.net.URLClassLoader.findClass(Unknown Source) at
> java.lang.ClassLoader.loadClass(Unknown Source) at
> sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at
> java.lang.ClassLoader.loadClass(Unknown Source) at
> sun.instrument.InstrumentationImpl.loadClassAndStartAgent(Unknown
> Source) at
> sun.instrument.InstrumentationImpl.loadClassAndCallPremain(Unknown
> Source) [quasar] ERROR: java/lang/Thread
> java.lang.NullPointerException at
> co.paralleluniverse.fibers.instrument.MethodDatabase$ClassEntry.equals(MethodDatabase.java:557)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.recordSuspendableMethods(MethodDatabase.java:265)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.checkClass(MethodDatabase.java:327)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.getOrLoadClassEntry(MethodDatabase.java:183)
> at
> co.paralleluniverse.fibers.instrument.SimpleSuspendableClassifier.isSuspendable(SimpleSuspendableClassifier.java:156)
> at
> co.paralleluniverse.fibers.instrument.DefaultSuspendableClassifier.isSuspendable(DefaultSuspendableClassifier.java:47)
> at
> co.paralleluniverse.fibers.instrument.CheckInstrumentationVisitor.visitMethod(CheckInstrumentationVisitor.java:130)
> at co.paralleluniverse.asm.ClassReader.b(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.fibers.instrument.MethodDatabase.checkFileAndClose(MethodDatabase.java:347)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.checkClass(MethodDatabase.java:324)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.getOrLoadClassEntry(MethodDatabase.java:183)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.isMethodSuspendable0(MethodDatabase.java:194)
> at
> co.paralleluniverse.fibers.instrument.MethodDatabase.isMethodSuspendable(MethodDatabase.java:161)
> at
> co.paralleluniverse.fibers.instrument.InstrumentMethod.isSuspendableCall(InstrumentMethod.java:231)
> at
> co.paralleluniverse.fibers.instrument.LabelSuspendableCallSitesClassVisitor$1.visitMethodInsn(LabelSuspendableCallSitesClassVisitor.java:64)
> at co.paralleluniverse.asm.ClassReader.a(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.b(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.asm.ClassReader.accept(Unknown Source) at
> co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:123)
> at
> co.paralleluniverse.fibers.instrument.QuasarInstrumentor.instrumentClass(QuasarInstrumentor.java:94)
> at
> co.paralleluniverse.fibers.instrument.JavaAgent$Transformer.transform(JavaAgent.java:209)
> at sun.instrument.TransformerManager.transform(Unknown Source) at
> sun.instrument.InstrumentationImpl.transform(Unknown Source) at
> java.lang.ClassLoader.defineClass1(Native Method) at
> java.lang.ClassLoader.defineClass(Unknown Source) at
> java.security.SecureClassLoader.defineClass(Unknown Source) at
> java.net.URLClassLoader.defineClass(Unknown Source) at
> java.net.URLClassLoader.access$100(Unknown Source) at
> java.net.URLClassLoader$1.run(Unknown Source) at
> java.net.URLClassLoader$1.run(Unknown Source) at
> java.security.AccessController.doPrivileged(Native Method) at
> java.net.URLClassLoader.findClass(Unknown Source) at
> java.lang.ClassLoader.loadClass(Unknown Source) at
> sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at
> java.lang.ClassLoader.loadClass(Unknown Source) at
> sun.instrument.InstrumentationImpl.loadClassAndStartAgent(Unknown
> Source) at
> sun.instrument.InstrumentationImpl.loadClassAndCallPremain(Unknown
> Source)

一段时间corda正常启动后,当我尝试进入h2控制台时,出现以下错误:

Table "SYNONYMS" not found; SQL statement: SELECT TABLE_CAT,
> TABLE_SCHEM, TABLE_NAME, TABLE_TYPE, REMARKS, TYPE_CAT, TYPE_SCHEM, 
> TYPE_NAME, SELF_REFERENCING_COL_NAME, REF_GENERATION, SQL FROM (SELECT
> SYNONYM_CATALOG TABLE_CAT,  SYNONYM_SCHEMA TABLE_SCHEM, SYNONYM_NAME
> as TABLE_NAME, TYPE_NAME AS TABLE_TYPE, REMARKS, TYPE_NAME TYPE_CAT, 
> TYPE_NAME TYPE_SCHEM, TYPE_NAME AS TYPE_NAME, TYPE_NAME
> SELF_REFERENCING_COL_NAME, TYPE_NAME REF_GENERATION, NULL AS SQL FROM
> INFORMATION_SCHEMA.SYNONYMS WHERE SYNONYM_CATALOG LIKE ? ESCAPE ? AND
> SYNONYM_SCHEMA LIKE ? ESCAPE ? AND SYNONYM_NAME LIKE ? ESCAPE ? AND
> (false)  UNION SELECT TABLE_CATALOG TABLE_CAT, TABLE_SCHEMA
> TABLE_SCHEM,  TABLE_NAME, TABLE_TYPE, REMARKS, TYPE_NAME TYPE_CAT,
> TYPE_NAME TYPE_SCHEM, TYPE_NAME, TYPE_NAME SELF_REFERENCING_COL_NAME, 
> TYPE_NAME REF_GENERATION, SQL FROM INFORMATION_SCHEMA.TABLES WHERE
> TABLE_CATALOG LIKE ? ESCAPE ? AND TABLE_SCHEMA LIKE ? ESCAPE ? AND
> TABLE_NAME LIKE ? ESCAPE ? AND (TABLE_TYPE IN(?)) )  ORDER BY
> TABLE_TYPE, TABLE_SCHEM, TABLE_NAME [42102-197] 42S02/42102 (Help)

我试图从here找到解决方案,但发现h2-1.4.194在他们的网站上不可用。是我的流程代码有问题,还是插件本身有问题。

我的流程代码在[https://ideone.com/Dy3nEM][2]中给出。我哪里出错了?

1 个答案:

答案 0 :(得分:0)

可能其中一个函数缺少@Suspebdable注释。 H2错误也发生在我身上,但无法修复。如果您拥有Intellij Ultimate,则可以使用对我有用的他们的数据库浏览器。