Hello,
In the getting started example the code finished by a System.exit because “This is needed for a tidy closedown of work executors” and if I don’t put this instruction, the java process is still executing in background.
I tried by stopping replication with a replicator.stop() but it doesn’t change anything.
Is it a bug in java couchbase lite api ?
When cblite logs are activated, I can see this log at the very end:
V/CouchbaseLite/NETWORK:AbstractCBLWebSocket{ws://<sync_gateway_url>//_blipsync}:OkHTTP closing:
V/CouchbaseLite/DATABASE:StateMachine@0x3e519de4: no transition: CLOSING => CLOSE_REQUESTED [CLOSED]
java.lang.Exception
at com.couchbase.lite.internal.utils.StateMachine.setState(StateMachine.java:150)
at com.couchbase.lite.internal.replicator.AbstractCBLWebSocket$CBLWebSocketListener.onClosing(AbstractCBLWebSocket.java:193)
at okhttp3.internal.ws.RealWebSocket.onReadClose(RealWebSocket.java:361)
at okhttp3.internal.ws.WebSocketReader.readControlFrame(WebSocketReader.java:202)
at okhttp3.internal.ws.WebSocketReader.processNextFrame(WebSocketReader.java:103)
at okhttp3.internal.ws.RealWebSocket.loopReader(RealWebSocket.java:273)
at okhttp3.internal.ws.RealWebSocket$1.onResponse(RealWebSocket.java:209)
at okhttp3.RealCall$AsyncCall.execute(RealCall.java:174)
at okhttp3.internal.NamedRunnable.run(NamedRunnable.java:32)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)