I'm using the latest 1.1.0 version on .Net 7 and saw a crash that took down my service.
Given the timing (4 minutes after close), I think this happened when the market closed today and the DxLink server disconnected my service. If that's the case, this may have something to do with how the server disconnect is handled in this library.
My service restarted and reconnected 20 seconds later. Is there anything I can do to catch this error?
SP 0x00007f1424dfdde0 IP 0x0DxFeed StateChangeListenerCallback() State: Connecting
I 240119 230356.589 [oioEventLoopGroup-3-1] DxLinkClientWebSocket-Distributor - Disconnected from wss://my-provider-here.dxfeed.com/realtime
I 240119 230356.589 [oioEventLoopGroup-3-1] DxLinkClientWebSocket-Distributor - Starting DxLinkClientWebSocketConnector to wss://my-provider-here.dxfeed.com/realtime
Fatal error: overwriting existing java.lang.Thread
Current timestamp: 1705705436589
Printing Instructions (ip=0x00007f13f52256d0):
0x00007f13f52256b0: 0x00 0x41 0xc7 0x87 0xfc 0x00 0x00 0x00 0xfe 0xfe 0xfe 0x7e 0x48 0x8b 0x7c 0x24
0x00007f13f52256c0: 0x20 0x48 0x8b 0x74 0x24 0x10 0x48 0x8b 0x54 0x24 0x18 0xe8 0x90 0xfc 0xff 0xff
0x00007f13f52256d0: 0x90 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc 0xcc
0x00007f13f52256e0: 0x48 0x83 0xec 0x18 0x49 0x3b 0x67 0x08 0x0f 0x86 0x9f 0x00 0x00 0x00 0x48 0x8b
Top of stack (sp=0x00007f1424dfdda0):
0x00007f1424dfdda0: 0x00007f554b5f8aa8 0xffffffffffffff60
0x00007f1424dfddb0: 0x00007f13f3307de8 0x00007f13f2b00000
0x00007f1424dfddc0: 0x00007f13f5275528 0x00007f13f527fb24
0x00007f1424dfddd0: 0x0000000000000000 0x00007f13f5275528
0x00007f1424dfdde0: 0x0000000000000000 0xffffffffffffff60
0x00007f1424dfddf0: 0x00007f13f090da30 0x00007f13f5275417
0x00007f1424dfde00: 0x0000000000000000 0x00007f13f2b00000
0x00007f1424dfde10: 0x00007f13f39e1b68 0x00007f13f090da30
0x00007f1424dfde20: 0x00000000001f5230 0x00007f13f52778f9
0x00007f1424dfde30: 0x00007f14080c2b80 0x00007f1424dfecdc
0x00007f1424dfde40: 0x00007f13f090da30 0x00007f13f3c73d38
0x00007f1424dfde50: 0x000000000000004b 0x00007f13f52569b7
0x00007f1424dfde60: 0x00007f13f2b00000 0x00000001ffffff60
0x00007f1424dfde70: 0x000000000000004b 0x00007f13f51d5dcf
0x00007f1424dfde80: 0x00007f1424dfecdc 0x00007f1400275530
0x00007f1424dfde90: 0x00007f14001f30d0 0xffffffffffffff58
0x00007f1424dfdea0: 0x00007f14001f5230 0x0000000000000000
0x00007f1424dfdeb0: 0x00007f14245fe000 0x00007f13eb0fe600
0x00007f1424dfdec0: 0x0000000000000000 0xffffffffffffff60
0x00007f1424dfded0: 0x00007f1424dfecdc 0x00007f554b48f6ba
0x00007f1424dfdee0: 0x0000000000000000 0x00007f1424dfe6c0
0x00007f1424dfdef0: 0x00007f554b48f3d0 0x971290752429436f
0x00007f1424dfdf00: 0xffffffffffffff60 0x0000000000000000
0x00007f1424dfdf10: 0x00007f13eb0fe600 0x00007f14245fe000
0x00007f1424dfdf20: 0x693ad9ca99e9436f 0x69b806e4cd09436f
0x00007f1424dfdf30: 0x0000000000000000 0x0000000000000000
0x00007f1424dfdf40: 0x0000000000000000 0x0000000000000000
0x00007f1424dfdf50: 0x0000000000000000 0x92bcb1cb67bbf000
0x00007f1424dfdf60: 0x00007f554b48f3d0 0x0000000000000000
0x00007f1424dfdf70: 0xffffffffffffff60 0x00007f554b51e120
0x00007f1424dfdf80: 0x0000000000000000 0x0000000000000000
0x00007f1424dfdf90: 0x0000000000000000 0x0000000000000000
Top frame info:
TotalFrameSize in CodeInfoTable 48
Threads:
0x00007f140c140040 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "oioEventLoopGroup-12-1" - 0x00007f13eeb018b0, stack(0x00007f13dfb01000,0x00007f13e0300000)
0x00007f14105de900 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "wss://my-provider-here.dxfeed.com/realtime-Writer" - 0x00007f13eeb019a8, daemon, stack(0x00007f13ed501000,0x00007f13edd00000)
0x00007f553c16ab00 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "oioEventLoopGroup-10-1" - 0x00007f13eeb01eb0, stack(0x00007f13deaff000,0x00007f13df2fe000)
0x00007f55401532c0 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "wss://my-provider-here.dxfeed.com/realtime-Writer" - 0x00007f13eeb01fa8, daemon, stack(0x00007f13e34ff000,0x00007f13e3cfe000)
0x00007f1420182440 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "oioEventLoopGroup-8-1" - 0x00007f13eeb024b0, stack(0x00007f13e3d00000,0x00007f13e44ff000)
0x00007f1418012900 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "wss://my-provider-here.dxfeed.com/realtime-Writer" - 0x00007f13eeb025a8, daemon, stack(0x00007f13e4cff000,0x00007f13e54fe000)
0x00007f1420001d40 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "oioEventLoopGroup-6-1" - 0x00007f13eeb02ab0, stack(0x00007f13e20fc000,0x00007f13e28fb000)
0x00007f1418002300 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "wss://my-provider-here.dxfeed.com/realtime-Writer" - 0x00007f13eeb02ba8, daemon, stack(0x00007f13e28fd000,0x00007f13e30fc000)
0x00007f13f8003f40 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "oioEventLoopGroup-3-1" - 0x00007f13eeb030b0, stack(0x00007f13ea901000,0x00007f13eb100000)
0x00007f1400167940 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "DXEndpoint-DXExecutorThread-2" - 0x00007f13eeb03350, daemon, stack(0x00007f13ec901000,0x00007f13ed100000)
0x0000556364ac5f00 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "DXEndpoint-DXExecutorThread-1" - 0x00007f13eeb035d0, daemon, stack(0x00007f13edf01000,0x00007f13ee700000)
0x00007f5544001780 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "MonitoringScheduler" - 0x00007f13eeb03750, daemon, stack(0x00007f13ef101000,0x00007f13ef900000)
0x00007f553c001780 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "CpuMonitor" - 0x00007f13eeb01460, daemon, stack(0x00007f13f0101000,0x00007f13f0900000)
0x00007f5540000f00 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "TimeSyncTrackerReceiver" - 0x00007f13eeb03b40, daemon, stack(0x00007f13f0f01000,0x00007f13f1700000)
0x00007f54c4000f40 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "TimeSyncTrackerSender" - 0x00007f13eeb03c68, daemon, stack(0x00007f13fc1ff000,0x00007f13fc9fe000)
0x00007f54bc000f00 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "clean cache & finalize native" - 0x00007f13eeb03d68, daemon, stack(0x00007f13fd201000,0x00007f13fda00000)
0x00007f54c0001100 STATUS_IN_NATIVE (ALLOW_SAFEPOINT) "Reference Handler" - 0x00007f13f3a764a8, daemon, stack(0x00007f13fca00000,0x00007f13fd1ff000)
0x00007f14080c2b80 STATUS_IN_JAVA (PREVENT_VM_FROM_REACHING_SAFEPOINT) "main" - 0x00007f13f3a763f0, stack(0x00007f1424600000,0x00007f1424dff000)
VM thread locals for the failing thread 0x00007f14080c2b80:
0 (8 bytes): JNIThreadLocalEnvironment.jniFunctions = (bytes)
0x00007f14080c2b80: 0x00007f13f35c0010
8 (8 bytes): StackOverflowCheckImpl.stackBoundaryTL = (Word) 1 (0x0000000000000001)
16 (4 bytes): Safepoint.safepointRequested = (int) 2144413847 (0x7fd12897)
20 (4 bytes): StatusSupport.statusTL = (int) 1 (0x00000001)
24 (32 bytes): ThreadLocalAllocation.regularTLAB = (bytes)
0x00007f14080c2b98: 0x0000000000000000 0x0000000000000000
0x00007f14080c2ba8: 0x0000000000000000 0x0000000000000000
56 (8 bytes): PlatformThreads.currentThread = (Object) java.lang.Thread (0x00007f13f3a763f0)
64 (8 bytes): JavaFrameAnchors.lastAnchor = (Word) 0 (0x0000000000000000)
72 (8 bytes): AccessControlContextStack = (Object) java.util.ArrayDeque (0x00007f13eeb04660)
80 (8 bytes): ExceptionUnwind.currentException = (Object) null
88 (8 bytes): IdentityHashCodeSupport.hashCodeGeneratorTL = (Object) java.util.SplittableRandom (0x00007f13eeb04688)
96 (8 bytes): IsolatedCompileClient.currentClient = (Object) null
104 (8 bytes): IsolatedCompileContext.currentContext = (Object) null
112 (8 bytes): JNIObjectHandles.handles = (Object) com.oracle.svm.core.handles.ThreadLocalHandles (0x00007f13eeb046b0)
120 (8 bytes): JNIThreadLocalPendingException.pendingException = (Object) null
128 (8 bytes): JNIThreadLocalPinnedObjects.pinnedObjectsListHead = (Object) null
136 (8 bytes): JNIThreadOwnedMonitors.ownedMonitors = (Object) null
144 (8 bytes): NoAllocationVerifier.openVerifiers = (Object) null
152 (8 bytes): ThreadingSupportImpl.activeTimer = (Object) null
160 (8 bytes): SubstrateDiagnostics.threadOnlyAttachedForCrashHandler = (bytes)
0x00007f14080c2c20: 0x0000000000000000
168 (8 bytes): ThreadLocalAllocation.allocatedBytes = (Word) 19104920 (0x0000000001238498)
176 (8 bytes): VMThreads.IsolateTL = (Word) 139723652726784 (0x00007f13f2b00000)
184 (8 bytes): VMThreads.OSThreadHandleTL = (Word) 139724494726848 (0x00007f1424dfe6c0)
192 (8 bytes): VMThreads.OSThreadIdTL = (Word) 139724494726848 (0x00007f1424dfe6c0)
200 (8 bytes): VMThreads.StackBase = (Word) 139724494729216 (0x00007f1424dff000)
208 (8 bytes): VMThreads.StackEnd = (Word) 139724486344704 (0x00007f1424600000)
216 (8 bytes): VMThreads.StartedByCurrentIsolate = (bytes)
0x00007f14080c2c58: 0x0000000000000000
224 (8 bytes): VMThreads.nextTL = (Word) 0 (0x0000000000000000)
232 (8 bytes): VMThreads.unalignedIsolateThreadMemoryTL = (Word) 139724011088752 (0x00007f14080c2b70)
240 (4 bytes): ActionOnExitSafepointSupport.actionTL = (int) 0 (0x00000000)
244 (4 bytes): ActionOnTransitionToJavaSupport.actionTL = (int) 0 (0x00000000)
248 (4 bytes): ImplicitExceptions.implicitExceptionsAreFatal = (int) 0 (0x00000000)
252 (4 bytes): StackOverflowCheckImpl.yellowZoneStateTL = (int) 2130640638 (0x7efefefe)
256 (4 bytes): StatusSupport.safepointBehaviorTL = (int) 1 (0x00000001)
260 (4 bytes): ThreadingSupportImpl.currentPauseDepth = (int) 0 (0x00000000)
No VMOperation in progress
The 15 most recent VM operation status changes (oldest first):
1705705434226 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f1420001d40, executingThread: 0x00007f1420001d40, safepointId: 191386)
1705705434561 - Started Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191387)
1705705434562 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191387)
1705705434797 - Started Garbage collection (safepoint: true, queueingThread: 0x00007f1420182440, executingThread: 0x00007f1420182440, safepointId: 191388)
1705705434798 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f1420182440, executingThread: 0x00007f1420182440, safepointId: 191388)
1705705435085 - Started Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191389)
1705705435086 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191389)
1705705435398 - Started Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191390)
1705705435399 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191390)
1705705435716 - Started Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191391)
1705705435718 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191391)
1705705436134 - Started Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191392)
1705705436136 - Finished Garbage collection (safepoint: true, queueingThread: 0x00007f553c001780, executingThread: 0x00007f553c001780, safepointId: 191392)
1705705436382 - Started Garbage collection (safepoint: true, queueingThread: 0x0000556364b3b400, executingThread: 0x0000556364b3b400, safepointId: 191393)
1705705436383 - Finished Garbage collection (safepoint: true, queueingThread: 0x0000556364b3b400, executingThread: 0x0000556364b3b400, safepointId: 191393)
Counters:
Java frame anchors for the failing thread 0x00007f14080c2b80:
No anchors
Stacktrace for the failing thread 0x00007f14080c2b80:
SP 0x00007f1424dfdda0 IP 0x00007f13f52256d0 [image code] com.oracle.svm.core.jdk.VMErrorSubstitutions.shutdown(VMErrorSubstitutions.java:116)
SP 0x00007f1424dfdda0 IP 0x00007f13f52256d0 [image code] com.oracle.svm.core.jdk.VMErrorSubstitutions.shouldNotReachHere(VMErrorSubstitutions.java:109)
SP 0x00007f1424dfddd0 IP 0x00007f13f527fb24 [image code] com.oracle.svm.core.util.VMError.shouldNotReachHere(VMError.java:65)
SP 0x00007f1424dfdde0 IP 0x00007f13f5275528 [image code] com.oracle.svm.core.util.VMError.guarantee(VMError.java:89)
SP 0x00007f1424dfdde0 IP 0x0DxFeed StateChangeListenerCallback() State: Connecting
0007f13f5275528 [image code] com.oracle.svm.core.thread.PlatformThreads.assignCurrent0(PlatformThreads.java:479)
SP 0x00007f1424dfde00 IP 0x00007f13f5275417 [image code] com.oracle.svm.core.thread.PlatformThreads.assignCurrent(I 240119 230356.599 [DXEndpoint-DXExecutorThread-1] DxLinkClientWebSocket-Distributor - Stopping DxLinkClientWebSock>PlatformThreads.java:461)
SP 0x00007f1424dfde30 IP 0x00007f13f52778f9 [image code] com.oracle.svm.core.thread.PlatformThreads.threadStartRoutine(PlatformThreads.java:756)
SP 0x00007f1424dfde60 IP 0x00007f13f52569b7 [image code] com.oracle.svm.core.posix.thread.PosixPlatformThreads.pthreadStartRoutine(PosixPlatformThreads.java:203)
SP 0x00007f1424dfde80 IP 0x00007f13f51d5dcf [image code] com.oracle.svm.core.code.IsolateEnterStub.PosixPlatformThreads_pthreadStartRoutine_cf47bd191b082a3631657d369b9255c828b9a95c(IsolateEnterStub.java:0)
VM mutexes:
mutex "thread" is unlocked.
mutex "mainVMOperationControlWorkQueue" is unlocked.
mutex "referencePendingList" is unlocked.
AOT compiled code is mapped at 0x00007f13f49f0000 - 0x00007f13f6457a0f
Heap settings and statistics:
Supports isolates: true
Heap base: 0x00007f13f2b00000
Object reference size: 8
Aligned chunk size: 1048576
Incremental collections: 191393
Complete collections: 3818
Native image heap boundaries:
ReadOnly Primitives: 0x00007f13f2c01028 - 0x00007f13f3210c00
ReadOnly References: 0x00007f13f3210c00 - 0x00007f13f35bf248
ReadOnly Relocatables: 0x00007f13f35c0000 - 0x00007f13f37f0d80
Writable Primitives: 0x00007f13f37f1000 - 0x00007f13f3924c10
Writable References: 0x00007f13f3924c10 - 0x00007f13f3f5ffa0
Writable Huge: 0x00007f13f4000030 - 0x00007f13f40ad638
ReadOnly Huge: 0x00007f13f40ae030 - 0x00007f13f4738100
Heap:
Young generation:
Eden:
edenSpace:
aligned: 1048576/1 unaligned: 0/0
aligned chunks:
0x00007f13f0b00000 (0x00007f13f0b01028-0x00007f13f0b011e8)
Survivors:
Survivor-1 From:
aligned: 0/0 unaligned: 0/0
Survivor-1 To:
aligned: 0/0 unaligned: 0/0
Survivor-2 From:
aligned: 0/0 unaligned: 0/0
Survivor-2 To:
I 240119 230356.600 [DXEndpoint-DXExecutorThread-1] QD - qdnet-8 with collectors [Ticker, Stream, History]
aligned: 0/0 unaligned: 0/0
Survivor-3 From:
aligned: 0/0 unaligned: 0/0
Survivor-3 To:
aligned: 0/0 unaligned: 0/0
Survivor-4 From:
aligned: 0/0 unaligned: 0/0
Survivor-4 To:
aligned: 0/0 unaligned: 0/0
Survivor-5 From:
aligned: 0/0 unaligned: 0/0
Survivor-5 To:
aligned: 0/0 unaligned: 0/0
Survivor-6 From:
aligned: 0/0 unaligned: 0/0
Survivor-6 To:
aligned: 0/0 unaligned: 0/0
Survivor-7 From:
aligned: 0/0 unaligned: 0/0
Survivor-7 To:
aligned: 0/0 unaligned: 0/0
Survivor-8 From:
aligned: 0/0 unaligned: 0/0
Survivor-8 To:
aligned: 0/0 unaligned: 0/0
Survivor-9 From:
aligned: 0/0 unaligned: 0/0
Survivor-9 To:
aligned: 0/0 unaligned: 0/0
Survivor-10 From:
aligned: 0/0 unaligned: 0/0
Survivor-10 To:
aligned: 0/0 unaligned: 0/0
Survivor-11 From:
aligned: 0/0 unaligned: 0/0
Survivor-11 To:
aligned: 0/0 unaligned: 0/0
Survivor-12 From:
aligned: 0/0 unaligned: 0/0
Survivor-12 To:
aligned: 0/0 unaligned: 0/0
Survivor-13 From:
aligned: 0/0 unaligned: 0/0
Survivor-13 To:
aligned: 0/0 unaligned: 0/0
Survivor-14 From:
aligned: 0/0 unaligned: 0/0
Survivor-14 To:
aligned: 0/0 unaligned: 0/0
Survivor-15 From:
aligned: 0/0 unaligned: 0/0
Survivor-15 To:
aligned: 0/0 unaligned: 0/0
Old generation:
oldFromSpace:
aligned: 13631488/13 unaligned: 16908368/5
aligned chunks:
0x00007f13eeb00000 (0x00007f13eeb01028-0x00007f13eebfff40)
0x00007f13e8f00000 (0x00007f13e8f01028-0x00007f13e8ffffd8)
0x00007f13f1f00000 (0x00007f13f1f01028-0x00007f13f1fffdf8)
0x00007f13ed300000 (0x00007f13ed301028-0x00007f13ed3ffff8)
0x00007f13ed100000 (0x00007f13ed101028-0x00007f13ed1ffe48)
0x00007f13efd00000 (0x00007f13efd01028-0x00007f13efe00000)
0x00007f13e0d00000 (0x00007f13e0d01028-0x00007f13e0dfff68)
0x00007f13f1900000 (0x00007f13f1901028-0x00007f13f19ffe10)
0x00007f13f1700000 (0x00007f13f1701028-0x00007f13f17ffff0)
0x00007f13f2900000 (0x00007f13f2901028-0x00007f13f29ff8c0)
0x00007f13f2100000 (0x00007f13f2101028-0x00007f13f21fffc8)
0x00007f13e9b00000 (0x00007f13e9b01028-0x00007f13e9bfffe8)
0x00007f13e9700000 (0x00007f13e9701028-0x00007f13e97c6380)
unaligned chunks:
0x00007f13e44ff000 (0x00007f13e44ff030-0x00007f13e48ff040)
0x00007f13e30fc000 (0x00007f13e30fc030-0x00007f13e34fc040)
0x00007f13e7afe000 (0x00007f13e7afe030-0x00007f13e7efe040)
0x00007f13ea4fe000 (0x00007f13ea4fe030-0x00007f13ea8fe040)
0x00007f13fff07000 (0x00007f13fff07030-0x00007f13fff27040)
oldToSpace:
aligned: 0/0 unaligned: 0/0
Unused:
aligned: 8388608/8
aligned chunks:
0x00007f54caa00000 (0x00007f54caa01028-0x00007f54caa01028)
0x00007f13f1d00000 (0x00007f13f1d01028-0x00007f13f1d01028)
0x00007f13ea300000 (0x00007f13ea301028-0x00007f13ea301028)
0x00007f13e9500000 (0x00007f13e9501028-0x00007f13e9501028)
0x00007f13e7100000 (0x00007f13e7101028-0x00007f13e7101028)
0x00007f13f2600000 (0x00007f13f2601028-0x00007f13f2601028)
0x00007f13e9900000 (0x00007f13e9901028-0x00007f13e9901028)
0x00007f13efb00000 (0x00007f13efb01028-0x00007f13efb01028)
Fatal error: overwriting existing java.lang.Thread
my.service: Main process exited, code=exited, status=99/n/a
my.service: Failed with result 'exit-code'.