couchbase / couchbase-lite-android-ce

The community edition of couchbase lite for android
Apache License 2.0
9 stars 1 forks source link

Memory Leak: Database reference held by a ReplicatorListenerThread after close #2

Closed fijemax closed 5 years ago

fijemax commented 5 years ago

Hello,

Using: CB 2.1.0 I inspect my app memory after stop my two replicators and closing and releasing my Database.

I observed that the both replicators are keep by a ReplicatorListenerThread and by the same way the Database reference's is keep too.

Note: All references at any couchbase Documents or Database are release by my app. I force Garbage Collecte to release memory. The database was closed after both Replication has stopped properly.

This is memory leak or normal behavior ?

Sandychuang8 commented 5 years ago

Hi @fijemax, as far as I know, the local database participating in the replication has to wait for all replicators properly stopped before it can be closed.

fijemax commented 5 years ago

Before closing the database I sync my thread with the replicators stop.

borrrden commented 5 years ago

Have you discarded all replicator references too? I don't think Java itself was designed with this in mind, but the thread you mention is started via a single thread executor that is referenced by the replicator. My assumption is that it will shut down once the handle is garbage collected (as part of the Replicator garbage collection)

johnvm commented 5 years ago

We are seeing this issue as well. Explicitly calling stop and then discarding the reference.

Replicators do not release resources when they are finished. As such for long-running applications, the replicators end up filling memory and causing an application crash.

We declare the replicator

private Replicator remote;

Initialize the replicator

Endpoint targetEndpoint = new URLEndpoint(new URI(getRemoteURL())); ReplicatorConfiguration replConfig = new ReplicatorConfiguration(database, targetEndpoint); replConfig.setReplicatorType(ReplicatorConfiguration.ReplicatorType.PUSH_AND_PULL); replConfig.setAuthenticator(new BasicAuthenticator(getUsername(), getPassword())); replConfig.setContinuous(false); remote = new Replicator(replConfig); remote.start();

For the test case we run the following code every 5 seconds:

remote.stop(); Endpoint targetEndpoint = new URLEndpoint(new URI(getRemoteURL())); ReplicatorConfiguration replConfig = new ReplicatorConfiguration(database, targetEndpoint); replConfig.setReplicatorType(ReplicatorConfiguration.ReplicatorType.PUSH_AND_PULL); replConfig.setAuthenticator(new BasicAuthenticator(getUsername(), getPassword())); replConfig.setContinuous(false); remote = new Replicator(replConfig); remote.start();

The following is the thread pool state for the application after some time:

2019-03-30 11:15:21.527 4980-5095/pos D/DeviceManagement: Thread (121):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.528 4980-5095/pos D/DeviceManagement: Thread (122):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.528 4980-5095/pos D/DeviceManagement: Thread (123):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.528 4980-5095/pos D/DeviceManagement: Thread (124):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.529 4980-5095/pos D/DeviceManagement: Thread (125):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.529 4980-5095/pos D/DeviceManagement: Thread (126):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.529 4980-5095/pos D/DeviceManagement: Thread (127):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.529 4980-5095/pos D/DeviceManagement: Thread (128):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.530 4980-5095/pos D/DeviceManagement: Thread (129):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.530 4980-5095/pos D/DeviceManagement: Thread (130):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.530 4980-5095/pos D/DeviceManagement: Thread (131):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.530 4980-5095/pos D/DeviceManagement: Thread (132):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.531 4980-5095/pos D/DeviceManagement: Thread (133):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.531 4980-5095/pos D/DeviceManagement: Thread (134):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.531 4980-5095/pos D/DeviceManagement: Thread (135):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.532 4980-5095/pos D/DeviceManagement: Thread (136):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.532 4980-5095/pos D/DeviceManagement: Thread (137):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.532 4980-5095/pos D/DeviceManagement: Thread (138):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.532 4980-5095/pos D/DeviceManagement: Thread (139):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.533 4980-5095/pos D/DeviceManagement: Thread (140):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.533 4980-5095/pos D/DeviceManagement: Thread (141):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.533 4980-5095/pos D/DeviceManagement: Thread (142):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.533 4980-5095/pos D/DeviceManagement: Thread (143):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.534 4980-5095/pos D/DeviceManagement: Thread (144):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.534 4980-5095/pos D/DeviceManagement: Thread (145):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.534 4980-5095/pos D/DeviceManagement: Thread (146):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.534 4980-5095/pos D/DeviceManagement: Thread (147):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.535 4980-5095/pos D/DeviceManagement: Thread (148):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.535 4980-5095/pos D/DeviceManagement: Thread (149):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.535 4980-5095/pos D/DeviceManagement: Thread (150):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.535 4980-5095/pos D/DeviceManagement: Thread (151):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.536 4980-5095/pos D/DeviceManagement: Thread (152):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.536 4980-5095/pos D/DeviceManagement: Thread (153):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.536 4980-5095/pos D/DeviceManagement: Thread (154):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.537 4980-5095/pos D/DeviceManagement: Thread (155):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.537 4980-5095/pos D/DeviceManagement: Thread (156):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.537 4980-5095/pos D/DeviceManagement: Thread (157):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.537 4980-5095/pos D/DeviceManagement: Thread (158):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.538 4980-5095/pos D/DeviceManagement: Thread (159):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.538 4980-5095/pos D/DeviceManagement: Thread (160):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.538 4980-5095/pos D/DeviceManagement: Thread (161):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.538 4980-5095/pos D/DeviceManagement: Thread (162):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.539 4980-5095/pos D/DeviceManagement: Thread (163):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.539 4980-5095/pos D/DeviceManagement: Thread (164):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.539 4980-5095/pos D/DeviceManagement: Thread (165):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.539 4980-5095/pos D/DeviceManagement: Thread (166):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.540 4980-5095/pos D/DeviceManagement: Thread (167):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.540 4980-5095/pos D/DeviceManagement: Thread (168):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.540 4980-5095/pos D/DeviceManagement: Thread (169):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.541 4980-5095/pos D/DeviceManagement: Thread (170):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.541 4980-5095/pos D/DeviceManagement: Thread (171):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.541 4980-5095/pos D/DeviceManagement: Thread (172):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.541 4980-5095/pos D/DeviceManagement: Thread (173):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.542 4980-5095/pos D/DeviceManagement: Thread (174):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.542 4980-5095/pos D/DeviceManagement: Thread (175):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.542 4980-5095/pos D/DeviceManagement: Thread (176):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.542 4980-5095/pos D/DeviceManagement: Thread (177):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.543 4980-5095/pos D/DeviceManagement: Thread (178):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.543 4980-5095/pos D/DeviceManagement: Thread (179):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.543 4980-5095/pos D/DeviceManagement: Thread (180):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.543 4980-5095/pos D/DeviceManagement: Thread (181):Thread[OkHttp ConnectionPool,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.544 4980-5095/pos D/DeviceManagement: Thread (182):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.544 4980-5095/pos D/DeviceManagement: Thread (183):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.544 4980-5095/pos D/DeviceManagement: Thread (184):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.545 4980-5095/pos D/DeviceManagement: Thread (185):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.545 4980-5095/pos D/DeviceManagement: Thread (186):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.545 4980-5095/pos D/DeviceManagement: Thread (187):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.545 4980-5095/pos D/DeviceManagement: Thread (188):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.546 4980-5095/pos D/DeviceManagement: Thread (189):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.546 4980-5095/pos D/DeviceManagement: Thread (190):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.546 4980-5095/pos D/DeviceManagement: Thread (191):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.547 4980-5095/pos D/DeviceManagement: Thread (192):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.547 4980-5095/pos D/DeviceManagement: Thread (193):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.547 4980-5095/pos D/DeviceManagement: Thread (194):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.547 4980-5095/pos D/DeviceManagement: Thread (195):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.548 4980-5095/pos D/DeviceManagement: Thread (196):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.548 4980-5095/pos D/DeviceManagement: Thread (197):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.548 4980-5095/pos D/DeviceManagement: Thread (198):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.548 4980-5095/pos D/DeviceManagement: Thread (199):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.548 4980-5095/pos D/DeviceManagement: Thread (200):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.549 4980-5095/pos D/DeviceManagement: Thread (201):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.549 4980-5095/pos D/DeviceManagement: Thread (202):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.549 4980-5095/pos D/DeviceManagement: Thread (203):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.549 4980-5095/pos D/DeviceManagement: Thread (204):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.549 4980-5095/pos D/DeviceManagement: Thread (205):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.550 4980-5095/pos D/DeviceManagement: Thread (206):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.550 4980-5095/pos D/DeviceManagement: Thread (207):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.550 4980-5095/pos D/DeviceManagement: Thread (208):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.550 4980-5095/pos D/DeviceManagement: Thread (209):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.550 4980-5095/pos D/DeviceManagement: Thread (210):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.551 4980-5095/pos D/DeviceManagement: Thread (211):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.551 4980-5095/pos D/DeviceManagement: Thread (212):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.551 4980-5095/pos D/DeviceManagement: Thread (213):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.551 4980-5095/pos D/DeviceManagement: Thread (214):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.551 4980-5095/pos D/DeviceManagement: Thread (215):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.552 4980-5095/pos D/DeviceManagement: Thread (216):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.552 4980-5095/pos D/DeviceManagement: Thread (217):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.552 4980-5095/pos D/DeviceManagement: Thread (218):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.552 4980-5095/pos D/DeviceManagement: Thread (219):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.552 4980-5095/pos D/DeviceManagement: Thread (220):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.553 4980-5095/pos D/DeviceManagement: Thread (221):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.553 4980-5095/pos D/DeviceManagement: Thread (222):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.553 4980-5095/pos D/DeviceManagement: Thread (223):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.553 4980-5095/pos D/DeviceManagement: Thread (224):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.554 4980-5095/pos D/DeviceManagement: Thread (225):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.554 4980-5095/pos D/DeviceManagement: Thread (226):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.554 4980-5095/pos D/DeviceManagement: Thread (227):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.554 4980-5095/pos D/DeviceManagement: Thread (228):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.554 4980-5095/pos D/DeviceManagement: Thread (229):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.555 4980-5095/pos D/DeviceManagement: Thread (230):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.555 4980-5095/pos D/DeviceManagement: Thread (231):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.555 4980-5095/pos D/DeviceManagement: Thread (232):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.555 4980-5095/pos D/DeviceManagement: Thread (233):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.555 4980-5095/pos D/DeviceManagement: Thread (234):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.556 4980-5095/pos D/DeviceManagement: Thread (235):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.556 4980-5095/pos D/DeviceManagement: Thread (236):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.556 4980-5095/pos D/DeviceManagement: Thread (237):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.556 4980-5095/pos D/DeviceManagement: Thread (238):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.557 4980-5095/pos D/DeviceManagement: Thread (239):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.557 4980-5095/pos D/DeviceManagement: Thread (240):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.557 4980-5095/pos D/DeviceManagement: Thread (241):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.557 4980-5095/pos D/DeviceManagement: Thread (242):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.557 4980-5095/pos D/DeviceManagement: Thread (243):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.558 4980-5095/pos D/DeviceManagement: Thread (244):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.558 4980-5095/pos D/DeviceManagement: Thread (245):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.558 4980-5095/pos D/DeviceManagement: Thread (246):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.558 4980-5095/pos D/DeviceManagement: Thread (247):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.558 4980-5095/pos D/DeviceManagement: Thread (248):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.559 4980-5095/pos D/DeviceManagement: Thread (249):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.559 4980-5095/pos D/DeviceManagement: Thread (250):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.559 4980-5095/pos D/DeviceManagement: Thread (251):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.559 4980-5095/pos D/DeviceManagement: Thread (252):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.559 4980-5095/pos D/DeviceManagement: Thread (253):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.560 4980-5095/pos D/DeviceManagement: Thread (254):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.560 4980-5095/pos D/DeviceManagement: Thread (255):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.560 4980-5095/pos D/DeviceManagement: Thread (256):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.560 4980-5095/pos D/DeviceManagement: Thread (257):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.560 4980-5095/pos D/DeviceManagement: Thread (258):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.561 4980-5095/pos D/DeviceManagement: Thread (259):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.561 4980-5095/pos D/DeviceManagement: Thread (260):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.561 4980-5095/pos D/DeviceManagement: Thread (261):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.561 4980-5095/pos D/DeviceManagement: Thread (262):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.562 4980-5095/pos D/DeviceManagement: Thread (263):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.562 4980-5095/pos D/DeviceManagement: Thread (264):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.562 4980-5095/pos D/DeviceManagement: Thread (265):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.562 4980-5095/pos D/DeviceManagement: Thread (266):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.562 4980-5095/pos D/DeviceManagement: Thread (267):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.563 4980-5095/pos D/DeviceManagement: Thread (268):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.563 4980-5095/pos D/DeviceManagement: Thread (269):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.563 4980-5095/pos D/DeviceManagement: Thread (270):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.563 4980-5095/pos D/DeviceManagement: Thread (271):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.563 4980-5095/pos D/DeviceManagement: Thread (272):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.564 4980-5095/pos D/DeviceManagement: Thread (273):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.564 4980-5095/pos D/DeviceManagement: Thread (274):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.564 4980-5095/pos D/DeviceManagement: Thread (275):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.564 4980-5095/pos D/DeviceManagement: Thread (276):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.564 4980-5095/pos D/DeviceManagement: Thread (277):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.565 4980-5095/pos D/DeviceManagement: Thread (278):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.565 4980-5095/pos D/DeviceManagement: Thread (279):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.565 4980-5095/pos D/DeviceManagement: Thread (280):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.565 4980-5095/pos D/DeviceManagement: Thread (281):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.565 4980-5095/pos D/DeviceManagement: Thread (282):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.566 4980-5095/pos D/DeviceManagement: Thread (283):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.566 4980-5095/pos D/DeviceManagement: Thread (284):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.566 4980-5095/pos D/DeviceManagement: Thread (285):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.566 4980-5095/pos D/DeviceManagement: Thread (286):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.567 4980-5095/pos D/DeviceManagement: Thread (287):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.567 4980-5095/pos D/DeviceManagement: Thread (288):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.567 4980-5095/pos D/DeviceManagement: Thread (289):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.567 4980-5095/pos D/DeviceManagement: Thread (290):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.568 4980-5095/pos D/DeviceManagement: Thread (291):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.568 4980-5095/pos D/DeviceManagement: Thread (292):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.568 4980-5095/pos D/DeviceManagement: Thread (293):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.568 4980-5095/pos D/DeviceManagement: Thread (294):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.568 4980-5095/pos D/DeviceManagement: Thread (295):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.569 4980-5095/pos D/DeviceManagement: Thread (296):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.569 4980-5095/pos D/DeviceManagement: Thread (297):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.569 4980-5095/pos D/DeviceManagement: Thread (298):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.569 4980-5095/pos D/DeviceManagement: Thread (299):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.569 4980-5095/pos D/DeviceManagement: Thread (300):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.570 4980-5095/pos D/DeviceManagement: Thread (301):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.570 4980-5095/pos D/DeviceManagement: Thread (302):Thread[AsyncTask #32,5,main]:state:TIMED_WAITING 2019-03-30 11:15:21.570 4980-5095/pos D/DeviceManagement: Thread (303):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.570 4980-5095/pos D/DeviceManagement: Thread (304):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.570 4980-5095/pos D/DeviceManagement: Thread (305):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.571 4980-5095/pos D/DeviceManagement: Thread (306):Thread[OkHttp Dispatcher,4,main]:state:TIMED_WAITING 2019-03-30 11:15:21.571 4980-5095/pos D/DeviceManagement: Thread (307):Thread[ReplicatorListenerThread,5,main]:state:WAITING 2019-03-30 11:15:21.571 4980-5095/pos D/DeviceManagement: Thread (308):Thread[OkHttp http://…,4,main]:state:RUNNABLE 2019-03-30 11:15:21.571 4980-5095/pos D/DeviceManagement: Thread (309):Thread[OkHttp7 WebSocket http://…,4,main]:state:WAITING 2019-03-30 11:15:21.572 4980-5095/pos D/DeviceManagement: Thread pool size:309

Please let me know if you need a more detailed senario or specific logs.

bmeike commented 5 years ago

This issue is also tracked in https://issues.couchbase.com/browse/CBL-15

bmeike commented 5 years ago

This issue has been resolved. The fix is in couchbase-lite-java:f020addb3aeeec67b98f32be and was released with CBL 2.6.x