You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi,
unfortunately it's hard to reproduce, but when i dispose this observable sometimes it result in a stackoverflow exception, and the whole process gets killed :(
Here is the setup of the observable :
var start = DateTime.Now.Trim(TimeSpan.TicksPerSecond).AddSeconds(1);
var boundary = Observable.Generate(
0, _ => true, // start condition
i => ++i, // iterate
i => i, // result selector
i => start + TimeSpan.FromSeconds(i));
var merged = boundary.WithLatestFrom(SomeOtherObservable, (a, b) => b) ;
// here i combine it with some other observables via WithLatestFrom
merged.Subscribe(m => { });
Hi,
unfortunately it's hard to reproduce, but when i dispose this observable sometimes it result in a stackoverflow exception, and the whole process gets killed :(
Here is the setup of the observable :
This is the stack trace i got from windbg :
0000007B1A67AC70 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67ACA0 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67ACD0 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AD00 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AD30 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AD60 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AD90 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67ADC0 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67ADF0 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AE20 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AE50 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AE80 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AEB0 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AEE0 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AF10 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AF40 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AF70 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67AFA0 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67AFD0 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67B000 00007ffbf668aeef System.Reactive.Concurrency.LocalScheduler+WorkItem.Dispose() 0000007B1A67B030 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67B060 00007ffbf66ffcbc System.Reactive.Concurrency.UserWorkItem
1[[System.ValueTuple2[[System.__Canon, System.Private.CoreLib],[System.Int32, System.Private.CoreLib]], System.Private.CoreLib]].Dispose() [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Concurrency\UserWorkItem.cs @ 43] 0000007B1A67B090 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67B0C0 00007ffbf66ffc7f System.Reactive.Sink
1[[System.Int32, System.Private.CoreLib]].Dispose(Boolean) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Internal\Sink.cs @ 45]0000007B1A67B0F0 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238]
0000007B1A67B120 00007ffbf6727512 System.Reactive.Linq.ObservableImpl.WithLatestFrom
3+_[[System.Int32, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Dispose(Boolean) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Linq\Observable\WithLatestFrom.cs @ 63] 0000007B1A67B150 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67B180 00007ffbf6696e12 System.Reactive.Linq.ObservableImpl.WithLatestFrom
3+[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Dispose(Boolean) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Linq\Observable\WithLatestFrom.cs @ 63]0000007B1A67B1B0 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238]
0000007B1A67B1E0 00007ffbf6696e12 System.Reactive.Linq.ObservableImpl.WithLatestFrom
3+_[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Dispose(Boolean) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Linq\Observable\WithLatestFrom.cs @ 63] 0000007B1A67B210 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238] 0000007B1A67B240 00007ffbf6696e12 System.Reactive.Linq.ObservableImpl.WithLatestFrom
3+[[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib],[System.__Canon, System.Private.CoreLib]].Dispose(Boolean) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Linq\Observable\WithLatestFrom.cs @ 63]0000007B1A67B270 00007ffbf59d6406 System.Reactive.Disposables.Disposable.TryDispose(System.IDisposable ByRef) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Disposables\Disposable.cs @ 238]
0000007B1A67B2A0 00007ffbf668af1f System.Reactive.Sink
1[[System.__Canon, System.Private.CoreLib]].Dispose(Boolean) [d:\a\1\s\Rx.NET\Source\src\System.Reactive\Internal\Sink.cs @ 45] 0000007B1A67B2D0 00007ffbf6671057 OnRtls.Flotta.Audit.StreamingAuditService.Stop()
The text was updated successfully, but these errors were encountered: