puniverse / comsat

Fibers and actors for web development
docs.paralleluniverse.co/comsat
Other
598 stars 103 forks source link

comsat-jooq Null Pointer Exception when using jOOQ's store() method #86

Open safar opened 7 years ago

safar commented 7 years ago

I'm using jOOQ together with comsat webactors. Here is relevant part of my build.gradle:

dependencies {
  compile 'org.slf4j:slf4j-log4j12:1.7.12'
  compile 'args4j:args4j:2.33'
  compile 'org.yaml:snakeyaml:1.17'
  compile 'io.netty:netty-all:4.1.5.Final'
  compile 'co.paralleluniverse:quasar-core:0.7.6:jdk8'
  // Agent for bytecode instrumentation
  quasar 'co.paralleluniverse:quasar-core:0.7.6:jdk8@jar'
  compile 'co.paralleluniverse:comsat-jdbc:0.7.0'
  compile 'co.paralleluniverse:comsat-actors-netty:0.7.0'
  compile 'co.paralleluniverse:comsat-jooq:0.7.0'
  compile group: 'com.google.code.gson', name: 'gson', version: '2.7'
  compile "io.grpc:grpc-netty:${grpcVersion}"
  compile "io.grpc:grpc-protobuf:${grpcVersion}"
  compile "io.grpc:grpc-stub:${grpcVersion}"
  compile 'commons-fileupload:commons-fileupload:1.3.2'
  compile group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1'
  compile group: 'org.postgresql', name: 'postgresql', version: '9.4.1212'
  compile 'net.postgis:postgis-jdbc:2.2.1'
  compile 'org.jooq:jooq:3.6.4' //I have also tried latest 3.8.4
  compile 'org.jooq:jooq-meta:3.6.4' //I have also tried latest 3.8.4
  compile 'org.jooq:jooq-codegen:3.6.4' //I have also tried latest 3.8.4
  testCompile 'junit:junit:4.12'
  markdownDoclet 'ch.raffael.pegdown-doclet:pegdown-doclet:1.3'
}

I have wrapped my Postgres data source in FiberDataSource

PGSimpleDataSource pgSimpleDataSource = new PGSimpleDataSource();
pgSimpleDataSource.setServerName(smartphoneConfig.databaseHost);
pgSimpleDataSource.setPortNumber(smartphoneConfig.databasePort);
pgSimpleDataSource.setDatabaseName(smartphoneConfig.databaseName);
pgSimpleDataSource.setUser(smartphoneConfig.databaseUser);
pgSimpleDataSource.setPassword(smartphoneConfig.databasePassword);
fiberDs = FiberDataSource.wrap(pgSimpleDataSource);
// fiberDs = pgSimpleDataSource;

When I try to store a new record from jOOQ generated class, fibers throws Null Pointer Exception:

conn = fiberDs.getConnection();
DSLContext ctx = DSL.using(conn);
TripRecord trip = ctx.newRecord(TRIP);
//setting trip record fields
trip.store();
java.lang.NullPointerException
    at co.paralleluniverse.fibers.FiberAsync.run(FiberAsync.java:121)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(FiberAsync.java:409)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(JDBCFiberAsync.java:29)
    at co.paralleluniverse.fibers.jdbc.FiberConnection.prepareStatement(FiberConnection.java:65)
    at co.paralleluniverse.fibers.jdbc.FiberConnection.prepareStatement(FiberConnection.java:41)
    at org.jooq.impl.ProviderEnabledConnection.prepareStatement(ProviderEnabledConnection.java:112)
    at org.jooq.impl.SettingsEnabledConnection.prepareStatement(SettingsEnabledConnection.java:76)
    at org.jooq.impl.AbstractQuery.prepare(AbstractQuery.java:394)
    at org.jooq.impl.AbstractDMLQuery.prepare(AbstractDMLQuery.java:223)
    at org.jooq.impl.AbstractQuery.execute(AbstractQuery.java:316)
    at org.jooq.impl.TableRecordImpl.storeInsert0(TableRecordImpl.java:176)
    at org.jooq.impl.TableRecordImpl$1.operate(TableRecordImpl.java:142)
    at org.jooq.impl.RecordDelegate.operate(RecordDelegate.java:128)
    at org.jooq.impl.TableRecordImpl.storeInsert(TableRecordImpl.java:138)
    at org.jooq.impl.UpdatableRecordImpl.store0(UpdatableRecordImpl.java:185)
    at org.jooq.impl.UpdatableRecordImpl.access$000(UpdatableRecordImpl.java:85)
    at org.jooq.impl.UpdatableRecordImpl$1.operate(UpdatableRecordImpl.java:135)
    at org.jooq.impl.RecordDelegate.operate(RecordDelegate.java:128)
    at org.jooq.impl.UpdatableRecordImpl.store(UpdatableRecordImpl.java:131)
    at org.jooq.impl.UpdatableRecordImpl.store(UpdatableRecordImpl.java:123)
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip(SmartphoneWebActor.java:430)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun(SmartphoneWebActor.java:262)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun(SmartphoneWebActor.java:47)
    at co.paralleluniverse.actors.Actor.run0(Actor.java:691)
    at co.paralleluniverse.actors.ActorRunner.run(ActorRunner.java:51)
    at co.paralleluniverse.fibers.Fiber.run(Fiber.java:1072)
    at co.paralleluniverse.fibers.Fiber.run1(Fiber.java:1067)
    at co.paralleluniverse.fibers.Fiber.exec(Fiber.java:767)
    at co.paralleluniverse.fibers.FiberForkJoinScheduler$FiberForkJoinTask.exec1(FiberForkJoinScheduler.java:266)
    at co.paralleluniverse.concurrent.forkjoin.ParkableForkJoinTask.doExec(ParkableForkJoinTask.java:117)
    at co.paralleluniverse.concurrent.forkjoin.ParkableForkJoinTask.exec(ParkableForkJoinTask.java:74)
    at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
    at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
    at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
    at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)

I have enabled debugging in jOOQ and query it tries to execute is valid and can be ran manually on the DB.

I have tried to disable FiberDataSource wrapper and use pgSimpleDataSource directly, in that scenario trip is stored in DB without any Exception (warnings are thrown since it blocks threads in that case).

Can you please tell me if there is something wrong with the configuration?

Is this a bug in comsat-jooq?

pron commented 7 years ago

Hi. Are you actually running the agent? Listing the JAR in the dependencies isn't enough.

safar commented 7 years ago

Yes, agent is running. Definition in build.gradle:

run {
  args "--config=dev.yml"
  // Returns path to quasar JAR file
  jvmArgs "-javaagent:${configurations.quasar.iterator().next()}"
}
pron commented 7 years ago

Can you run with the verifyInstrumentation flag?

 -Dco.paralleluniverse.fibers.verifyInstrumentation=true
safar commented 7 years ago

I have run it with verifyInstrumentation flag as requested. I have separated each warning in a separate block for easier referencing. My guess is that instrumentation is not working correctly for some o jOOQ's methods. Any help would be greatly appreciated.

  1. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberResultSet.close) (FiberResultSet.java:70 bci: 97)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose(java.sql.ResultSet) (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.Tools.safeClose(org.jooq.ExecuteListener,org.jooq.ExecuteContext,boolean,boolean) (Tools.java:1963 bci: 6) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:714 bci: 148) !! (instrumented suspendable calls at: [708, 711])
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.checkVehicleAccess (SmartphoneWebActor.java:487 bci: 512)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:210 bci: 951)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  2. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberStatement.getWarnings) (FiberStatement.java:172 bci: 97)
    at org.jooq.tools.jdbc.DefaultStatement.getWarnings) (DefaultStatement.java:182 bci: 76)
    at org.jooq.impl.Tools.consumeWarnings(org.jooq.ExecuteContext,org.jooq.ExecuteListener) (Tools.java:2830 bci: 25) **
    at org.jooq.impl.Tools.safeClose (Tools.java:1968 bci: 31) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:714 bci: 148) !! (instrumented suspendable calls at: [708, 711])
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.checkVehicleAccess (SmartphoneWebActor.java:487 bci: 512)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:210 bci: 951)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  3. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberResultSet.close) (FiberResultSet.java:70 bci: 97)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose(java.sql.ResultSet) (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.Tools.safeClose(org.jooq.ExecuteListener,org.jooq.ExecuteContext,boolean,boolean) (Tools.java:1963 bci: 6) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.CursorImpl$CursorIterator.fetchOne (CursorImpl.java:1565 bci: 1494)
    at org.jooq.impl.CursorImpl$CursorIterator.hasNext (CursorImpl.java:1507 bci: 228)
    at org.jooq.impl.CursorImpl.fetch (CursorImpl.java:329 bci: 189)
    at org.jooq.impl.CursorImpl.fetchOne (CursorImpl.java:287 bci: 2) (optimized)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:711 bci: 141)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.findDuplicateTrip (SmartphoneWebActor.java:517 bci: 502)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:249 bci: 2015)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  4. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1636 bci: 3)
    at co.paralleluniverse.fibers.Fiber.park (Fiber.java:620 bci: 0)
    at co.paralleluniverse.fibers.Fiber.park (Fiber.java:624 bci: 4)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:121 bci: 158)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberResultSet.close) (FiberResultSet.java:70 bci: 97)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose(java.sql.ResultSet) (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.Tools.safeClose(org.jooq.ExecuteListener,org.jooq.ExecuteContext,boolean,boolean) (Tools.java:1963 bci: 6) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.CursorImpl$CursorIterator.fetchOne (CursorImpl.java:1565 bci: 1494)
    at org.jooq.impl.CursorImpl$CursorIterator.hasNext (CursorImpl.java:1507 bci: 228)
    at org.jooq.impl.CursorImpl.fetch (CursorImpl.java:329 bci: 189)
    at org.jooq.impl.CursorImpl.fetchOne (CursorImpl.java:287 bci: 2) (optimized)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:711 bci: 141)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.findDuplicateTrip (SmartphoneWebActor.java:517 bci: 502)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:249 bci: 2015)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  5. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberStatement.getWarnings) (FiberStatement.java:172 bci: 97)
    at org.jooq.tools.jdbc.DefaultStatement.getWarnings) (DefaultStatement.java:182 bci: 76)
    at org.jooq.impl.Tools.consumeWarnings(org.jooq.ExecuteContext,org.jooq.ExecuteListener) (Tools.java:2830 bci: 25) **
    at org.jooq.impl.Tools.safeClose (Tools.java:1968 bci: 31) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.CursorImpl$CursorIterator.fetchOne (CursorImpl.java:1565 bci: 1494)
    at org.jooq.impl.CursorImpl$CursorIterator.hasNext (CursorImpl.java:1507 bci: 228)
    at org.jooq.impl.CursorImpl.fetch (CursorImpl.java:329 bci: 189)
    at org.jooq.impl.CursorImpl.fetchOne (CursorImpl.java:287 bci: 2) (optimized)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:711 bci: 141)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.findDuplicateTrip (SmartphoneWebActor.java:517 bci: 502)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:249 bci: 2015)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  6. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberResultSet.close) (FiberResultSet.java:70 bci: 97)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose(java.sql.ResultSet) (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.Tools.safeClose(org.jooq.ExecuteListener,org.jooq.ExecuteContext,boolean,boolean) (Tools.java:1963 bci: 6) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.CursorImpl$CursorIterator.fetchOne (CursorImpl.java:1565 bci: 1494)
    at org.jooq.impl.CursorImpl$CursorIterator.hasNext (CursorImpl.java:1507 bci: 228)
    at org.jooq.impl.CursorImpl.fetch (CursorImpl.java:329 bci: 189)
    at org.jooq.impl.CursorImpl.fetchOne (CursorImpl.java:287 bci: 2) (optimized)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:711 bci: 141)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip (SmartphoneWebActor.java:340 bci: 1328)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:278 bci: 3333)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  7. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1636 bci: 3)
    at co.paralleluniverse.fibers.Fiber.park (Fiber.java:620 bci: 0)
    at co.paralleluniverse.fibers.Fiber.park (Fiber.java:624 bci: 4)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:121 bci: 158)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberResultSet.close) (FiberResultSet.java:70 bci: 97)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose(java.sql.ResultSet) (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.Tools.safeClose(org.jooq.ExecuteListener,org.jooq.ExecuteContext,boolean,boolean) (Tools.java:1963 bci: 6) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.CursorImpl$CursorIterator.fetchOne (CursorImpl.java:1565 bci: 1494)
    at org.jooq.impl.CursorImpl$CursorIterator.hasNext (CursorImpl.java:1507 bci: 228)
    at org.jooq.impl.CursorImpl.fetch (CursorImpl.java:329 bci: 189)
    at org.jooq.impl.CursorImpl.fetchOne (CursorImpl.java:287 bci: 2) (optimized)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:711 bci: 141)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip (SmartphoneWebActor.java:340 bci: 1328)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:278 bci: 3333)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  8. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberStatement.getWarnings) (FiberStatement.java:172 bci: 97)
    at org.jooq.tools.jdbc.DefaultStatement.getWarnings) (DefaultStatement.java:182 bci: 76)
    at org.jooq.impl.Tools.consumeWarnings(org.jooq.ExecuteContext,org.jooq.ExecuteListener) (Tools.java:2830 bci: 25) **
    at org.jooq.impl.Tools.safeClose (Tools.java:1968 bci: 31) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.CursorImpl$CursorIterator.fetchOne (CursorImpl.java:1565 bci: 1494)
    at org.jooq.impl.CursorImpl$CursorIterator.hasNext (CursorImpl.java:1507 bci: 228)
    at org.jooq.impl.CursorImpl.fetch (CursorImpl.java:329 bci: 189)
    at org.jooq.impl.CursorImpl.fetchOne (CursorImpl.java:287 bci: 2) (optimized)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:711 bci: 141)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:3050 bci: 79)
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip (SmartphoneWebActor.java:340 bci: 1328)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:278 bci: 3333)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  9. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberResultSet.close) (FiberResultSet.java:70 bci: 97)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose(java.sql.ResultSet) (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.Tools.safeClose(org.jooq.ExecuteListener,org.jooq.ExecuteContext,boolean,boolean) (Tools.java:1963 bci: 6) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:714 bci: 148) !! (instrumented suspendable calls at: [708, 711])
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:644 bci: 1) (optimized)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:2990 bci: 108)
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip (SmartphoneWebActor.java:364 bci: 1768)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:278 bci: 3333)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  10. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberStatement.getWarnings) (FiberStatement.java:172 bci: 97)
    at org.jooq.tools.jdbc.DefaultStatement.getWarnings) (DefaultStatement.java:182 bci: 76)
    at org.jooq.impl.Tools.consumeWarnings(org.jooq.ExecuteContext,org.jooq.ExecuteListener) (Tools.java:2830 bci: 25) **
    at org.jooq.impl.Tools.safeClose (Tools.java:1968 bci: 31) **
    at org.jooq.impl.CursorImpl$CursorResultSet.close (CursorImpl.java:578 bci: 445)
    at org.jooq.tools.jdbc.JDBCUtils.safeClose (JDBCUtils.java:309 bci: 92)
    at org.jooq.impl.CursorImpl.close (CursorImpl.java:388 bci: 76)
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:714 bci: 148) !! (instrumented suspendable calls at: [708, 711])
    at org.jooq.impl.AbstractResultQuery.fetchAny (AbstractResultQuery.java:644 bci: 1) (optimized)
    at org.jooq.impl.SelectImpl.fetchAny (SelectImpl.java:2990 bci: 108)
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip (SmartphoneWebActor.java:364 bci: 1768)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:278 bci: 3333)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
  11. WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1668 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1641 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberConnection.prepareStatement(java.lang.String) (FiberConnection.java:65 bci: 115)
    at co.paralleluniverse.fibers.jdbc.FiberConnection.prepareStatement(java.lang.String) (FiberConnection.java:41 bci: 2) (optimized)
    at org.jooq.impl.ProviderEnabledConnection.prepareStatement(java.lang.String) (ProviderEnabledConnection.java:112 bci: 176)
    at org.jooq.impl.SettingsEnabledConnection.prepareStatement(java.lang.String) (SettingsEnabledConnection.java:76 bci: 163)
    at org.jooq.impl.AbstractQuery.prepare(org.jooq.ExecuteContext) (AbstractQuery.java:414 bci: 126)
    at org.jooq.impl.AbstractDMLQuery.prepare(org.jooq.ExecuteContext) (AbstractDMLQuery.java:270 bci: 325)
    at org.jooq.impl.AbstractQuery.execute) (AbstractQuery.java:320 bci: 474)
    at org.jooq.impl.TableRecordImpl.storeInsert0(org.jooq.Field[]) (TableRecordImpl.java:184 bci: 73) **
    at org.jooq.impl.TableRecordImpl$1.operate (TableRecordImpl.java:155 bci: 13) **
    at org.jooq.impl.RecordDelegate.operate (RecordDelegate.java:128 bci: 491)
    at org.jooq.impl.TableRecordImpl.storeInsert (TableRecordImpl.java:151 bci: 25) **
    at org.jooq.impl.UpdatableRecordImpl.store0 (UpdatableRecordImpl.java:195 bci: 121) **
    at org.jooq.impl.UpdatableRecordImpl.access$000 (UpdatableRecordImpl.java:85 bci: 2) **
    at org.jooq.impl.UpdatableRecordImpl$1.operate (UpdatableRecordImpl.java:135 bci: 136)
    at org.jooq.impl.RecordDelegate.operate (RecordDelegate.java:128 bci: 491)
    at org.jooq.impl.UpdatableRecordImpl.store (UpdatableRecordImpl.java:131 bci: 25) **
    at org.jooq.impl.UpdatableRecordImpl.store (UpdatableRecordImpl.java:123 bci: 11) **
    at copilot.storage.smartphone.SmartphoneWebActor.storeTrip (SmartphoneWebActor.java:449 bci: 2425) !! (instrumented suspendable calls at: [311, 312, 312, 340, 364, 461, 461, 461])
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:278 bci: 3333)
    at copilot.storage.smartphone.SmartphoneWebActor.doRun (SmartphoneWebActor.java:50 bci: 1) (optimized)
    at co.paralleluniverse.actors.Actor.run0 (Actor.java:691 bci: 222)
    at co.paralleluniverse.actors.ActorRunner.run (ActorRunner.java:51 bci: 148)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1072 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1067 bci: 1)
gitplaneta commented 7 years ago

@safar , did you manage to solve that issue? I'm experiencing something similar...

fab1an commented 7 years ago

I have a similar problem using JDBC directly:

WARNING: Uninstrumented methods (marked '**') or call-sites (marked '!!') detected on the call stack: 
    at co.paralleluniverse.common.util.ExtendedStackTrace.here (ExtendedStackTrace.java:44 bci: 8)
    at co.paralleluniverse.fibers.Fiber.checkInstrumentation (Fiber.java:1620 bci: 0)
    at co.paralleluniverse.fibers.Fiber.verifySuspend (Fiber.java:1593 bci: 6)
    at co.paralleluniverse.fibers.FiberAsync.run) (FiberAsync.java:118 bci: 92)
    at co.paralleluniverse.fibers.FiberAsync.runBlocking(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (FiberAsync.java:409 bci: 113)
    at co.paralleluniverse.fibers.jdbc.JDBCFiberAsync.exec(java.util.concurrent.ExecutorService,co.paralleluniverse.common.util.CheckedCallable) (JDBCFiberAsync.java:29 bci: 119)
    at co.paralleluniverse.fibers.jdbc.FiberDataSource.getConnection) (FiberDataSource.java:76 bci: 97)
    at co.paralleluniverse.fibers.jdbc.FiberDataSource.getConnection) (FiberDataSource.java:35 bci: 1) (optimized)
    at at.fab1an.xslserve.FiberTestServlet.resolve(java.lang.String,java.lang.String) (XSLServe.kt:64 bci: 238)
    at net.sf.saxon.functions.DocumentFn.resolveURI(java.lang.String,java.lang.String,java.lang.String,net.sf.saxon.expr.XPathContext) (DocumentFn.java:397 bci: 130) **
    at net.sf.saxon.functions.DocumentFn.makeDoc (DocumentFn.java:284 bci: 391) **
    at net.sf.saxon.functions.DocumentFn$DocumentMappingFunction.mapItem (DocumentFn.java:150 bci: 55) **
    at net.sf.saxon.expr.ItemMappingIterator.next (ItemMappingIterator.java:113 bci: 21) **
    at net.sf.saxon.expr.sort.DocumentOrderIterator.<init> (DocumentOrderIterator.java:47 bci: 53) **
    at net.sf.saxon.functions.DocumentFn.call (DocumentFn.java:121 bci: 122) **
    at net.sf.saxon.expr.FunctionCall.iterate (FunctionCall.java:546 bci: 15) **
    at net.sf.saxon.expr.instruct.ApplyTemplates.apply (ApplyTemplates.java:278 bci: 86) **
    at net.sf.saxon.expr.instruct.ApplyTemplates.process (ApplyTemplates.java:251 bci: 3) **
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail (ElementCreator.java:364 bci: 223) **
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail (ElementCreator.java:311 bci: 3) **
    at net.sf.saxon.expr.instruct.Block.processLeavingTail (Block.java:653 bci: 53) **
    at net.sf.saxon.expr.instruct.Instruction.process (Instruction.java:149 bci: 2) **
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail (ElementCreator.java:364 bci: 223) **
    at net.sf.saxon.expr.instruct.ElementCreator.processLeavingTail (ElementCreator.java:311 bci: 3) **
    at net.sf.saxon.expr.instruct.Block.processLeavingTail (Block.java:653 bci: 53) **
    at net.sf.saxon.expr.instruct.TemplateRule.applyLeavingTail (TemplateRule.java:353 bci: 143) **
    at net.sf.saxon.trans.Mode.applyTemplates (Mode.java:456 bci: 532) **
    at net.sf.saxon.Controller.transformDocument (Controller.java:2321 bci: 687) **
    at net.sf.saxon.Controller.transform (Controller.java:1892 bci: 589) **
    at net.sf.saxon.s9api.XsltTransformer.transform (XsltTransformer.java:579 bci: 269) **
    at net.sf.saxon.jaxp.TransformerImpl.transform (TransformerImpl.java:185 bci: 601) **
    at at.fab1an.xslserve.FiberTestServlet.doGet (XSLServe.kt:93 bci: 160) !! (instrumented suspendable calls at: [])
    at javax.servlet.http.HttpServlet.service (HttpServlet.java:687 bci: 35) **
    at co.paralleluniverse.fibers.servlet.FiberHttpServlet.exec0 (FiberHttpServlet.java:228 bci: 19) **
    at co.paralleluniverse.fibers.servlet.FiberHttpServlet.exec (FiberHttpServlet.java:203 bci: 13) **
    at co.paralleluniverse.fibers.servlet.FiberHttpServlet$ServletSuspendableRunnable.run (FiberHttpServlet.java:176 bci: 144)
    at co.paralleluniverse.strands.SuspendableUtils$VoidSuspendableCallable.run (SuspendableUtils.java:44 bci: 4)
    at co.paralleluniverse.strands.SuspendableUtils$VoidSuspendableCallable.run (SuspendableUtils.java:32 bci: 1)
    at co.paralleluniverse.fibers.Fiber.run (Fiber.java:1026 bci: 11)
    at co.paralleluniverse.fibers.Fiber.run1 (Fiber.java:1021 bci: 1)