Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incremental backup never closes connection #13

Open
dravenweston opened this issue Nov 6, 2012 · 1 comment
Open

Incremental backup never closes connection #13

dravenweston opened this issue Nov 6, 2012 · 1 comment

Comments

@dravenweston
Copy link

I am attempting to run an incremental backup against a small oplog and the process never completes. A jstack has the following in the output and I noticed that the "Finalizer" and "Reference Handler" are in a waiting state. Can you direct me to what it is waiting on and ultimately how to get it to close?

Full thread dump Java HotSpot(TM) 64-Bit Server VM (20.12-b01-434 mixed mode):

"Attach Listener" daemon prio=9 tid=7fdd211e7000 nid=0x11056c000 waiting on condition [00000000]
java.lang.Thread.State: RUNNABLE

"DestroyJavaVM" prio=5 tid=7fdd212f7800 nid=0x1065c8000 waiting on condition [00000000]
java.lang.Thread.State: RUNNABLE

"Thread-5" prio=5 tid=7fdd212f6800 nid=0x1102ce000 waiting on condition [1102cd000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.wordnik.system.mongodb.StopFileMonitor.run(StopFileMonitor.java:14)

"oplog" prio=5 tid=7fdd212f6000 nid=0x1101cb000 runnable [1101ca000]
java.lang.Thread.State: RUNNABLE
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:258)
at java.io.BufferedInputStream.read(BufferedInputStream.java:317)
- locked <7bc4461c8> (a java.io.BufferedInputStream)
at org.bson.io.Bits.readFully(Bits.java:35)
at org.bson.io.Bits.readFully(Bits.java:28)
at com.mongodb.Response.(Response.java:39)
at com.mongodb.DBPort.go(DBPort.java:128)
- locked <7bc438ad8> (a com.mongodb.DBPort)
at com.mongodb.DBPort.call(DBPort.java:79)
at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:218)
at com.mongodb.DBTCPConnector.call(DBTCPConnector.java:189)
at com.mongodb.DBApiLayer$Result._advance(DBApiLayer.java:452)
at com.mongodb.DBApiLayer$Result.hasNext(DBApiLayer.java:418)
at com.mongodb.DBCursor._hasNext(DBCursor.java:509)
at com.mongodb.DBCursor.hasNext(DBCursor.java:529)
at com.wordnik.system.mongodb.OplogTailThread.run(OplogTailThread.java:143)

"MongoCleaner1234403385" daemon prio=5 tid=7fdd212f3000 nid=0x1100c8000 waiting on condition [1100c7000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.mongodb.Mongo$DBCleanerThread.run(Mongo.java:681)

"ReplicaSetStatus:Updater" daemon prio=5 tid=7fdd212f2800 nid=0x10ffc5000 waiting on condition [10ffc4000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.mongodb.ReplicaSetStatus$Updater.run(ReplicaSetStatus.java:428)

"MongoCleaner1751161119" daemon prio=5 tid=7fdd26069800 nid=0x10fe84000 waiting on condition [10fe83000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.mongodb.Mongo$DBCleanerThread.run(Mongo.java:681)

"Low Memory Detector" daemon prio=5 tid=7fdd2501a800 nid=0x10f9e9000 runnable [00000000]
java.lang.Thread.State: RUNNABLE

"C2 CompilerThread1" daemon prio=9 tid=7fdd25019800 nid=0x10f8e6000 waiting on condition [00000000]
java.lang.Thread.State: RUNNABLE

"C2 CompilerThread0" daemon prio=9 tid=7fdd25019000 nid=0x10f7e3000 waiting on condition [00000000]
java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=9 tid=7fdd25018000 nid=0x10f6e0000 runnable [00000000]
java.lang.Thread.State: RUNNABLE

"Surrogate Locker Thread (Concurrent GC)" daemon prio=5 tid=7fdd25017000 nid=0x10f5dd000 waiting on condition [00000000]
java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=8 tid=7fdd211dd800 nid=0x10f3d3000 in Object.wait() [10f3d2000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <7bb401300> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:118)
- locked <7bb401300> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:134)
at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=7fdd211dc800 nid=0x10f2d0000 in Object.wait() [10f2cf000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <7bb4011d8> (a java.lang.ref.Reference$Lock)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
- locked <7bb4011d8> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=9 tid=7fdd211d8000 nid=0x10f1cd000 runnable

"Gang worker#0 (Parallel GC Threads)" prio=9 tid=7fdd21001800 nid=0x1099cb000 runnable

"Gang worker#1 (Parallel GC Threads)" prio=9 tid=7fdd21002000 nid=0x109ace000 runnable

"Gang worker#2 (Parallel GC Threads)" prio=9 tid=7fdd21002800 nid=0x109bd1000 runnable

"Gang worker#3 (Parallel GC Threads)" prio=9 tid=7fdd21003000 nid=0x109cd4000 runnable

"Gang worker#4 (Parallel GC Threads)" prio=9 tid=7fdd21004000 nid=0x109dd7000 runnable

"Gang worker#5 (Parallel GC Threads)" prio=9 tid=7fdd21004800 nid=0x109eda000 runnable

"Gang worker#6 (Parallel GC Threads)" prio=9 tid=7fdd21005000 nid=0x109fdd000 runnable

"Gang worker#7 (Parallel GC Threads)" prio=9 tid=7fdd21005800 nid=0x10a0e0000 runnable

"Concurrent Mark-Sweep GC Thread" prio=9 tid=7fdd210e3000 nid=0x10ee1f000 runnable
"Gang worker#0 (Parallel CMS Threads)" prio=9 tid=7fdd210e2000 nid=0x10e419000 runnable

"Gang worker#1 (Parallel CMS Threads)" prio=9 tid=7fdd210e2800 nid=0x10e51c000 runnable

"VM Periodic Task Thread" prio=10 tid=7fdd211ef000 nid=0x10faec000 waiting on condition

"Exception Catcher Thread" prio=10 tid=7fdd24001800 nid=0x1067f3000 runnable
JNI global references: 1091

@fehguy
Copy link
Contributor

fehguy commented Nov 7, 2012

Howdy, the incremental backup is waiting for the next event to come over the oplog--it will never complete by design until it finds a stop file (./stop.txt). That is the nature of the incremental backup, it's supposed to continually write records.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants