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

Occasional tests "no_sessions" assertion failure in SyncManager #6271

Open
sync-by-unito bot opened this issue Feb 3, 2023 · 4 comments · Fixed by #6344
Open

Occasional tests "no_sessions" assertion failure in SyncManager #6271

sync-by-unito bot opened this issue Feb 3, 2023 · 4 comments · Fixed by #6344
Assignees

Comments

@sync-by-unito
Copy link

sync-by-unito bot commented Feb 3, 2023

There is an occasional failure due to "no sessions" in the "audit integration tests: flexible sync: auditing with a flexible sync user reports a sync error"

This was observed during the build for the prepare-13.4.0 pull request.

Test Run: https://spruce.mongodb.com/task/_macos_release_object_store_tests_patch_476a2ad850aea98600c2430135adea0d27ee20e4_63dd96672a60ed69426589fd_23_02_03_23_19_05/logs?execution=0&sortBy=STATUS&sortDir=ASC

Error:

[2023/02/03 23:35:02.295] 3: /System/Volumes/Data/data/mci/0362610e1cbfa23abc572d0d688093e6/realm-core/src/realm/object-store/sync/sync_manager.cpp:237: [realm-core-13.4.0] Assertion failed: no_sessions
[2023/02/03 23:35:02.295] 3: 0   realm-object-store-tests            0x000000010e4b8b2c _ZN5realm4utilL18terminate_internalERNSt3__118basic_stringstreamIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE + 28
[2023/02/03 23:35:02.295] 3: 1   realm-object-store-tests            0x000000010e4b8a31 _ZN5realm4util9terminateEPKcS2_lOSt16initializer_listINS0_9PrintableEE + 385
[2023/02/03 23:35:02.295] 3: 2   realm-object-store-tests            0x000000010e13b73f _ZN5realm11SyncManager17reset_for_testingEv + 1359
[2023/02/03 23:35:02.295] 3: 3   realm-object-store-tests            0x000000010dfbf09e _ZN14TestAppSessionD2Ev + 46
[2023/02/03 23:35:02.295] 3: 4   realm-object-store-tests            0x000000010c9ff08f _ZL23CATCH2_INTERNAL_TEST_69v + 27839
[2023/02/03 23:35:02.295] 3: 5   realm-object-store-tests            0x000000010dff5ece _ZN5Catch10RunContext14runCurrentTestERNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_ + 414
[2023/02/03 23:35:02.295] 3: 6   realm-object-store-tests            0x000000010dff5949 _ZN5Catch10RunContext7runTestERKNS_14TestCaseHandleE + 457
[2023/02/03 23:35:02.295] 3: 7   realm-object-store-tests            0x000000010dfcc3b8 _ZN5Catch7Session11runInternalEv + 2728
[2023/02/03 23:35:02.295] 3: 8   realm-object-store-tests            0x000000010dfcb8a5 _ZN5Catch7Session3runEv + 69
[2023/02/03 23:35:02.295] 3: 9   realm-object-store-tests            0x000000010cf9facf main + 2815
[2023/02/03 23:35:02.295] 3: 10  libdyld.dylib                       0x00007fff205b3f3d start + 1!!! IMPORTANT: Please report this at https://github.com/realm/realm-core/issues/new/choose
[2023/02/03 23:35:02.295] 3: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[2023/02/03 23:35:02.295] 3: realm-object-store-tests is a Catch2 v3.0.1 host application.
[2023/02/03 23:35:02.295] 3: Run with -? for options
[2023/02/03 23:35:02.295] 3:
[2023/02/03 23:35:02.295] 3: -------------------------------------------------------------------------------
[2023/02/03 23:35:02.295] 3: audit integration tests
[2023/02/03 23:35:02.295] 3:   flexible sync
[2023/02/03 23:35:02.295] 3: -------------------------------------------------------------------------------
[2023/02/03 23:35:02.295] 3: /System/Volumes/Data/data/mci/0362610e1cbfa23abc572d0d688093e6/realm-core/test/object-store/audit.cpp:1768
[2023/02/03 23:35:02.295] 3: ...............................................................................
[2023/02/03 23:35:02.295] 3:
[2023/02/03 23:35:02.295] 3: /System/Volumes/Data/data/mci/0362610e1cbfa23abc572d0d688093e6/realm-core/test/object-store/audit.cpp:1778: FAILED:
[2023/02/03 23:35:02.295] 3:   {Unknown expression after the reported line}
[2023/02/03 23:35:02.295] 3: due to a fatal error condition:
[2023/02/03 23:35:02.295] 3:   SIGABRT - Abort (abnormal termination) signal
[2023/02/03 23:35:02.295] 3:
[2023/02/03 23:35:02.295] 3: Assertion failure: /System/Volumes/Data/data/mci/0362610e1cbfa23abc572d0d688093e6/realm-core/test/object-store/audit.cpp:1778
[2023/02/03 23:35:02.295] 3: 	 from expresion: '{Unknown expression after the reported line}'
[2023/02/03 23:35:02.295] 3: 	 with expansion: '{Unknown expression after the reported line}'
[2023/02/03 23:35:02.295] 3: 	 message: SIGABRT - Abort (abnormal termination) signal
@kiburtse
Copy link
Contributor

kiburtse commented Feb 20, 2023

It's not specific to "flexibel sync" or any particular sub-case test. From log you can see that it actually crashes on cleanup of TestAppSession after the main testcase piece. For me it also fails occasionally localy in different 'audit' tests, from TestSyncManager also:

$ >> ./realm-object-store-tests -b "audit management" -c "ending invalid scopes"
Filters: audit management
Randomness seeded to: 1303553279
/Users/user/r/cpp/realm-core/src/realm/object-store/sync/sync_manager.cpp:237: Assertion failed: no_sessions
0   realm-object-store-tests            0x0000000106cdcb50 _ZN5realm4utilL18terminate_internalERNSt3__118basic_stringstreamIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE + 204
1   realm-object-store-tests            0x0000000106cdc8e0 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 376
2   realm-object-store-tests            0x0000000106cdc768 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 0
3   realm-object-store-tests            0x0000000105fbf428 _ZN5realm11SyncManager17reset_for_testingEv + 1172
4   realm-object-store-tests            0x0000000104e5107c _ZN15TestSyncManagerD2Ev + 116
5   realm-object-store-tests            0x0000000104e511a0 _ZN15TestSyncManagerD1Ev + 12
6   realm-object-store-tests            0x0000000105b2f72c _ZL23CATCH2_INTERNAL_TEST_46v + 65228
7   realm-object-store-tests            0x0000000105c35ef0 _ZNK5Catch21TestInvokerAsFunction6invokeEv + 16
8   realm-object-store-tests            0x0000000105c1fdb0 _ZNK5Catch14TestCaseHandle6invokeEv + 24
9   realm-object-store-tests            0x0000000105c1fd58 _ZN5Catch10RunContext20invokeActiveTestCaseEv + 40
10  realm-object-store-tests            0x0000000105c1ec9c _ZN5Catch10RunContext14runCurrentTestERNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_ + 304
11  realm-object-store-tests            0x0000000105c1e90c _ZN5Catch10RunContext7runTestERKNS_14TestCaseHandleE + 312
12  realm-object-store-tests            0x0000000105c25444 _ZN5Catch12_GLOBAL__N_19TestGroup7executeEv + 188
13  realm-object-store-tests            0x0000000105c24d00 _ZN5Catch7Session11runInternalEv + 532
14  realm-object-store-tests            0x0000000105c24aa8 _ZN5Catch7Session3runEv + 56
15  realm-object-store-tests            0x000000010355df14 _ZN5Catch7Session3runIcEEiiPKPKT_ + 92
16  realm-object-store-tests            0x000000010355d410 main + 1900
17  dyld                                0x00000001b252be50 start + 2544
Realm Core version tag: [realm-core-13.4.2]
!!! IMPORTANT: Please report this at https://github.com/realm/realm-core/issues/new/choose

realm-object-store-tests is a Catch2 v3.0.1 host application.
Run with -? for options

-------------------------------------------------------------------------------
audit management
-------------------------------------------------------------------------------
/Users/user/r/cpp/realm-core/test/object-store/audit.cpp:1081
...............................................................................

/Users/user/r/cpp/realm-core/test/object-store/audit.cpp:1247: FAILED:
  {Unknown expression after the reported line}
due to a fatal error condition:
  SIGABRT - Abort (abnormal termination) signal

===============================================================================
test cases:  1 |  0 passed | 1 failed
assertions: 12 | 11 passed | 1 failed

Abort trap: 6

    frame #7: 0x00000001032c7428 realm-object-store-tests realm::SyncManager::reset_for_testing(this=0x000000010fa03198) at sync_manager.cpp:237:9 [opt]
    frame #8: 0x000000010215907c realm-object-store-tests TestSyncManager::~TestSyncManager(this=0x000000016fdf0110) at test_file.cpp:389:40 [opt]
    frame #9: 0x00000001021591a0 realm-object-store-tests TestSyncManager::~TestSyncManager(this=<unavailable>) at test_file.cpp:385:1 [opt]
  * frame #10: 0x0000000102e3772c realm-object-store-tests CATCH2_INTERNAL_TEST_46() at audit.cpp:1488:1 [opt]

Quite easy to reproduce with ./realm-object-store-tests -b "audit management" -c "ending invalid scopes".
Also still happens with latest 13.4.2 after #6293

@kiburtse kiburtse changed the title Occasional CI failure in flexible sync audit test Occasional tests "no_sessions" assertion failure in SyncManager Feb 20, 2023
@sync-by-unito
Copy link
Author

sync-by-unito bot commented Feb 20, 2023

➤ michael-wb commented:

This error may be caused by a race condition due to the fact that SyncClient::stop() does not wait for the sessions to be fully closed before returning.
A possible fix may be to update SyncClient::stop() to take a bool parameter and either call Client::shutdown() or Client::shutdown_and_wait() based on it's value. Then update the reset_for_testing() to call the stop function so it waits for shutdown.

@sync-by-unito
Copy link
Author

sync-by-unito bot commented Feb 27, 2023

➤ Jonathan Reams commented:

I think this is a race between SyncManager::reset_for_testing() which tries to force-tear-down the sync manager and all its sessions, and the teardown of the audit worker and any sync sessions being used by auditing. Looking at the stack trace below, we see that we're crashing in reset_for_testing() because it was able to find a valid external reference, and that the audit worker thread is blocked trying to acquire the mutex that reset_for_testing() holds.

  * frame #0: 0x0000000199fbe868 libsystem_kernel.dylib`__pthread_kill + 8
    frame #1: 0x0000000199ff5cec libsystem_pthread.dylib`pthread_kill + 288
    frame #2: 0x0000000199f2e2c8 libsystem_c.dylib`abort + 180
    frame #3: 0x0000000102a7e22c realm-object-store-tests`::please_report_this_issue_in_github_realm_realm_core_v_13_5_0() at terminate.cpp:65:1
    frame #4: 0x0000000102a7e5b0 realm-object-store-tests`realm::util::terminate_internal(ss=0x000000016fdf53f8) at terminate.cpp:142:5
    frame #5: 0x0000000102a7e310 realm-object-store-tests`realm::util::terminate(message="Assertion failed: no_sessions", file="/Users/jreams/Documents/git/realm-core/src/realm/object-store/sync/sync_manager.cpp", line=237, values=0x000000016fdf55b0) at terminate.cpp:152:5
    frame #6: 0x000000010203ae1c realm-object-store-tests`realm::SyncManager::reset_for_testing(this=0x000000010a805c88) at sync_manager.cpp:237:9
    frame #7: 0x00000001015e8410 realm-object-store-tests`TestSyncManager::~TestSyncManager(this=0x000000016fdfccd8) at test_file.cpp:400:40
    frame #8: 0x00000001015e8580 realm-object-store-tests`TestSyncManager::~TestSyncManager(this=0x000000016fdfccd8) at test_file.cpp:396:1
    frame #9: 0x0000000101c02ef0 realm-object-store-tests`CATCH2_INTERNAL_TEST_46() at audit.cpp:1497:1
    frame #10: 0x0000000101d63360 realm-object-store-tests`Catch::TestInvokerAsFunction::invoke(this=0x000060000000a810) const at catch_test_case_registry_impl.cpp:149:9
    frame #11: 0x0000000101d3494c realm-object-store-tests`Catch::TestCaseHandle::invoke(this=0x000000010a015740) const at catch_test_case_info.hpp:114:24
    frame #12: 0x0000000101d348bc realm-object-store-tests`Catch::RunContext::invokeActiveTestCase(this=0x000000016fdfe910) at catch_run_context.cpp:503:27
    frame #13: 0x0000000101d330d4 realm-object-store-tests`Catch::RunContext::runCurrentTest(this=0x000000016fdfe910, redirectedCout="", redirectedCerr="") at catch_run_context.cpp:473:17
    frame #14: 0x0000000101d32a30 realm-object-store-tests`Catch::RunContext::runTest(this=0x000000016fdfe910, testCase=0x000000010a015740) at catch_run_context.cpp:238:13
    frame #15: 0x0000000101d3fc04 realm-object-store-tests`Catch::(anonymous namespace)::TestGroup::execute(this=0x000000016fdfe900) at catch_session.cpp:112:45
    frame #16: 0x0000000101d3f02c realm-object-store-tests`Catch::Session::runInternal(this=0x000000016fdfec38) at catch_session.cpp:334:39
    frame #17: 0x0000000101d3eccc realm-object-store-tests`Catch::Session::run(this=0x000000016fdfec38) at catch_session.cpp:265:24
    frame #18: 0x00000001005ac434 realm-object-store-tests`int Catch::Session::run<char>(this=0x000000016fdfec38, argc=2, argv=0x000000016fdff560) at catch_session.hpp:41:30
    frame #19: 0x00000001005abe94 realm-object-store-tests`main(argc=2, argv=0x000000016fdff560) at main.cpp:65:26
    frame #20: 0x0000000199ccbe50 dyld`start + 2544
  thread #5, queue = 'Realm audit worker'
    frame #0: 0x0000000199fb8d04 libsystem_kernel.dylib`__psynch_mutexwait + 8
    frame #1: 0x0000000199ff3144 libsystem_pthread.dylib`_pthread_mutex_firstfit_lock_wait + 84
    frame #2: 0x0000000199ff0a9c libsystem_pthread.dylib`_pthread_mutex_firstfit_lock_slow + 248
    frame #3: 0x0000000199f449e8 libc++.1.dylib`std::__1::mutex::lock() + 16
    frame #4: 0x0000000100dd0c88 realm-object-store-tests`std::__1::unique_lock<std::__1::mutex>::unique_lock(this=0x0000000170029f50, __m=0x000000010a805e90) at __mutex_base:118:61
    frame #5: 0x0000000100dd0c3c realm-object-store-tests`std::__1::unique_lock<std::__1::mutex>::unique_lock(this=0x0000000170029f50, __m=0x000000010a805e90) at __mutex_base:118:54
    frame #6: 0x0000000100dd0c0c realm-object-store-tests`realm::util::CheckedMutex::lock(this=0x000000010a805e90) const at checked_mutex.hpp:166:16
    frame #7: 0x0000000100dd0bd0 realm-object-store-tests`realm::util::CheckedUniqueLock::CheckedUniqueLock<realm::util::CheckedMutex>(this=0x0000000170029f50, m=0x000000010a805e90) at checked_mutex.hpp:75:20
    frame #8: 0x0000000100dd0b28 realm-object-store-tests`realm::util::CheckedUniqueLock::CheckedUniqueLock<realm::util::CheckedMutex>(this=0x0000000170029f50, m=0x000000010a805e90) at checked_mutex.hpp:76:5
    frame #9: 0x000000010203f608 realm-object-store-tests`realm::SyncManager::unregister_session(this=0x000000010a805c88, path="/var/folders/s3/rtk055q91y15yg1hg2c373w40000gp/T/realm_aFJlmpqrZCcrcFZC/realm-audit/app_id/test/audit/63fd0a16e79c149fff836e06.realm") at sync_manager.cpp:702:29
    frame #10: 0x0000000102058f88 realm-object-store-tests`realm::SyncSession::do_become_inactive(this=0x0000000109813c18, lock=CheckedUniqueLock @ 0x000000017002a0e8, status=Status @ 0x000000017002a0e0) at sync_session.cpp:192:25
    frame #11: 0x0000000102058c14 realm-object-store-tests`realm::SyncSession::become_inactive(this=0x0000000109813c18, lock=CheckedUniqueLock @ 0x000000017002a198, status=Status @ 0x000000017002a190) at sync_session.cpp:159:5
    frame #12: 0x000000010205e724 realm-object-store-tests`realm::SyncSession::close(this=0x0000000109813c18, lock=CheckedUniqueLock @ 0x000000017002a1e0) at sync_session.cpp:1050:21
    frame #13: 0x000000010206004c realm-object-store-tests`realm::SyncSession::did_drop_external_reference(this=0x0000000109813c18) at sync_session.cpp:1297:5
    frame #14: 0x0000000102088084 realm-object-store-tests`realm::SyncSession::ExternalReference::~ExternalReference(this=0x0000600000c04378) at sync_session.cpp:1256:20
    frame #15: 0x0000000102088054 realm-object-store-tests`realm::SyncSession::ExternalReference::~ExternalReference(this=0x0000600000c04378) at sync_session.cpp:1255:5
    frame #16: 0x0000000102087e94 realm-object-store-tests`std::__1::__shared_ptr_emplace<realm::SyncSession::ExternalReference, std::__1::allocator<realm::SyncSession::ExternalReference> >::__on_zero_shared(this=0x0000600000c04360) at shared_ptr.h:315:24
    frame #17: 0x00000001021cbc74 realm-object-store-tests`std::__1::__shared_count::__release_shared(this=0x0000600000c04360) at shared_ptr.h:177:9
    frame #18: 0x00000001021cbc18 realm-object-store-tests`std::__1::__shared_weak_count::__release_shared(this=0x0000600000c04360) at shared_ptr.h:219:27
    frame #19: 0x00000001021cf054 realm-object-store-tests`std::__1::shared_ptr<realm::SyncSession>::~shared_ptr(this=0x000000010ae05718) at shared_ptr.h:959:19
    frame #20: 0x00000001021c676c realm-object-store-tests`std::__1::shared_ptr<realm::SyncSession>::~shared_ptr(this=0x000000010ae05718) at shared_ptr.h:957:1
    frame #21: 0x0000000101f761a4 realm-object-store-tests`realm::_impl::RealmCoordinator::~RealmCoordinator(this=0x000000010ae05408) at realm_coordinator.cpp:617:1
    frame #22: 0x0000000101f7669c realm-object-store-tests`realm::_impl::RealmCoordinator::~RealmCoordinator(this=0x000000010ae05408) at realm_coordinator.cpp:595:1
    frame #23: 0x0000000101f9aa54 realm-object-store-tests`std::__1::__shared_ptr_emplace<realm::_impl::RealmCoordinator, std::__1::allocator<realm::_impl::RealmCoordinator> >::__on_zero_shared(this=0x000000010ae053f0) at shared_ptr.h:315:24
    frame #24: 0x00000001004a8e48 realm-object-store-tests`std::__1::__shared_count::__release_shared(this=0x000000010ae053f0) at shared_ptr.h:177:9
    frame #25: 0x00000001004a8dec realm-object-store-tests`std::__1::__shared_weak_count::__release_shared(this=0x000000010ae053f0) at shared_ptr.h:219:27
    frame #26: 0x00000001004b264c realm-object-store-tests`std::__1::shared_ptr<realm::LnkLst>::~shared_ptr(this=0x000000010a904948) at shared_ptr.h:959:19
    frame #27: 0x00000001004ab554 realm-object-store-tests`std::__1::shared_ptr<realm::LnkLst>::~shared_ptr(this=0x000000010a904948) at shared_ptr.h:957:1
    frame #28: 0x0000000101eccfec realm-object-store-tests`realm::Realm::~Realm(this=0x000000010a904938) at shared_realm.cpp:107:1
    frame #29: 0x0000000101ecd300 realm-object-store-tests`realm::Realm::~Realm(this=0x000000010a904938) at shared_realm.cpp:97:1
    frame #30: 0x0000000101ee0c2c realm-object-store-tests`std::__1::__shared_ptr_emplace<realm::Realm, std::__1::allocator<realm::Realm> >::__on_zero_shared(this=0x000000010a904920) at shared_ptr.h:315:24
    frame #31: 0x00000001021a5ad8 realm-object-store-tests`std::__1::__shared_count::__release_shared(this=0x000000010a904920) at shared_ptr.h:177:9
    frame #32: 0x00000001021a5a7c realm-object-store-tests`std::__1::__shared_weak_count::__release_shared(this=0x000000010a904920) at shared_ptr.h:219:27
    frame #33: 0x00000001021a5a4c realm-object-store-tests`std::__1::shared_ptr<realm::Realm>::~shared_ptr(this=0x000000010aa061b8) at shared_ptr.h:959:19
    frame #34: 0x00000001021a2f84 realm-object-store-tests`std::__1::shared_ptr<realm::Realm>::~shared_ptr(this=0x000000010aa061b8) at shared_ptr.h:957:1
    frame #35: 0x000000010212695c realm-object-store-tests`(anonymous namespace)::AuditRealmPool::~AuditRealmPool(this=0x000000010aa06138) at audit.mm:623:7
    frame #36: 0x00000001021268f0 realm-object-store-tests`(anonymous namespace)::AuditRealmPool::~AuditRealmPool(this=0x000000010aa06138) at audit.mm:623:7
    frame #37: 0x00000001021239fc realm-object-store-tests`std::__1::__shared_ptr_emplace<(anonymous namespace)::AuditRealmPool, std::__1::allocator<(anonymous namespace)::AuditRealmPool> >::__on_zero_shared(this=0x000000010aa06120) at shared_ptr.h:315:24
    frame #38: 0x000000010211596c realm-object-store-tests`std::__1::__shared_count::__release_shared(this=0x000000010aa06120) at shared_ptr.h:177:9
    frame #39: 0x0000000102115910 realm-object-store-tests`std::__1::__shared_weak_count::__release_shared(this=0x000000010aa06120) at shared_ptr.h:219:27
    frame #40: 0x00000001021349a4 realm-object-store-tests`std::__1::shared_ptr<(anonymous namespace)::AuditRealmPool>::~shared_ptr(this=0x0000600003d04410) at shared_ptr.h:959:19
    frame #41: 0x000000010211b47c realm-object-store-tests`std::__1::shared_ptr<(anonymous namespace)::AuditRealmPool>::~shared_ptr(this=0x0000600003d04410) at shared_ptr.h:957:1
    frame #42: 0x0000000102135088 realm-object-store-tests`(anonymous namespace)::AuditContext::~AuditContext(this=0x0000600003d043d8) at audit.mm:1035:29
    frame #43: 0x000000010211b540 realm-object-store-tests`(anonymous namespace)::AuditContext::~AuditContext(this=0x0000600003d043d8) at audit.mm:1035:29
    frame #44: 0x0000000102119ef0 realm-object-store-tests`std::__1::__shared_ptr_emplace<(anonymous namespace)::AuditContext, std::__1::allocator<(anonymous namespace)::AuditContext> >::__on_zero_shared(this=0x0000600003d043c0) at shared_ptr.h:315:24
    frame #45: 0x000000010211596c realm-object-store-tests`std::__1::__shared_count::__release_shared(this=0x0000600003d043c0) at shared_ptr.h:177:9
    frame #46: 0x0000000102115910 realm-object-store-tests`std::__1::__shared_weak_count::__release_shared(this=0x0000600003d043c0) at shared_ptr.h:219:27
    frame #47: 0x00000001021158e0 realm-object-store-tests`std::__1::shared_ptr<(anonymous namespace)::AuditContext>::~shared_ptr(this=0x000060000170e720) at shared_ptr.h:959:19
    frame #48: 0x000000010210c170 realm-object-store-tests`std::__1::shared_ptr<(anonymous namespace)::AuditContext>::~shared_ptr(this=0x000060000170e720) at shared_ptr.h:957:1
    frame #49: 0x000000010215dc24 realm-object-store-tests`(anonymous namespace)::AuditContext::trigger_write(this=0x000060000170e720)::AuditContext::Scope>)::$_20::~$_20() at audit.mm:1284:29
    frame #50: 0x00000001021405e8 realm-object-store-tests`(anonymous namespace)::AuditContext::trigger_write(this=0x000060000170e720)::AuditContext::Scope>)::$_20::~$_20() at audit.mm:1284:29
    frame #51: 0x00000001021405c0 realm-object-store-tests`__destroy_helper_block_e8_32c90_ZTSKZN12_GLOBAL__N_112AuditContext13trigger_writeENSt3__110shared_ptrINS0_5ScopeEEEE4$_20((null)=0x000060000170e700) at audit.mm:0
    frame #52: 0x0000000199d53188 libsystem_blocks.dylib`_call_dispose_helpers_excp + 48
    frame #53: 0x0000000199d52f54 libsystem_blocks.dylib`_Block_release + 252
    frame #54: 0x0000000199e6e504 libdispatch.dylib`_dispatch_client_callout + 20
    frame #55: 0x0000000199e75bbc libdispatch.dylib`_dispatch_lane_serial_drain + 672
    frame #56: 0x0000000199e7673c libdispatch.dylib`_dispatch_lane_invoke + 436
    frame #57: 0x0000000199e8134c libdispatch.dylib`_dispatch_workloop_worker_thread + 652
    frame #58: 0x0000000199ff2100 libsystem_pthread.dylib`_pthread_wqthread + 288

@jbreams jbreams linked a pull request Feb 27, 2023 that will close this issue
3 tasks
@kiburtse kiburtse reopened this Aug 29, 2023
@kiburtse
Copy link
Contributor

kiburtse commented Aug 29, 2023

Still happens on recent master, also accompanied tsan warning about data race as described at #6844.

==================
WARNING: ThreadSanitizer: data race (pid=48869)
  Read of size 1 at 0x00010be13442 by thread T7497 (mutexes: write M0):
    #0 realm::sync::SessionWrapper::nonsync_transact_notify(unsigned long long) client.cpp:1332 (realm-object-store-tests:arm64+0x1016e7de0) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #1 realm::sync::Session::nonsync_transact_notify(unsigned long long) client.cpp:2103 (realm-object-store-tests:arm64+0x1016eb8d8) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #2 realm::SyncSession::nonsync_transact_notify(unsigned long long) sync_session.cpp:992 (realm-object-store-tests:arm64+0x1014e9db4) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #3 realm::_impl::RealmCoordinator::commit_write(realm::Realm&, bool) realm_coordinator.cpp:785 (realm-object-store-tests:arm64+0x10149763c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #4 realm::Realm::update_schema(realm::Schema, unsigned long long, std::__1::function<void (std::__1::shared_ptr<realm::Realm>, std::__1::shared_ptr<realm::Realm>, realm::Schema&)>, std::__1::function<void (std::__1::shared_ptr<realm::Realm>)>, bool) shared_realm.cpp:515 (realm-object-store-tests:arm64+0x10146719c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #5 realm::_impl::RealmCoordinator::do_get_realm(realm::RealmConfig&&, std::__1::shared_ptr<realm::Realm>&, std::__1::optional<realm::VersionID>, realm::util::CheckedUniqueLock&) realm_coordinator.cpp:371 (realm-object-store-tests:arm64+0x101493a30) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #6 realm::_impl::RealmCoordinator::get_realm(realm::RealmConfig, std::__1::optional<realm::VersionID>) realm_coordinator.cpp:274 (realm-object-store-tests:arm64+0x101492fbc) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #7 realm::Realm::get_shared_realm(realm::RealmConfig) shared_realm.cpp:161 (realm-object-store-tests:arm64+0x101464d00) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #8 (anonymous namespace)::AuditContext::trigger_write(std::__1::shared_ptr<(anonymous namespace)::AuditContext::Scope>)::$_20::operator()() const audit.mm:1278 (realm-object-store-tests:arm64+0x101539d08) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #9 invocation function for block in (anonymous namespace)::AuditContext::trigger_write(std::__1::shared_ptr<(anonymous namespace)::AuditContext::Scope>) audit.mm:1277 (realm-object-store-tests:arm64+0x101538600) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #10 __tsan::invoke_and_release_block(void*) <null>:174073056 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x8bd7c) (BuildId: 981013a59ee23029b2ed90b76951327532000000200000000100000000000b00)
    #11 _dispatch_client_callout <null>:164698432 (libdispatch.dylib:arm64e+0x43fc) (BuildId: 9897030f75d3374b8787322d3d72e09632000000200000000100000000050d00)

  Previous write of size 1 at 0x00010be13442 by thread T8203:
    #0 realm::sync::SessionWrapper::force_close() client.cpp:1612 (realm-object-store-tests:arm64+0x1016e14b8) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #1 realm::sync::ClientImpl::Session::force_close() client.cpp:662 (realm-object-store-tests:arm64+0x1016e1428) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #2 realm::sync::ClientImpl::Connection::force_close() client_impl_base.cpp:436 (realm-object-store-tests:arm64+0x101686b1c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #3 realm::sync::ClientImpl::drain_connections() client_impl_base.cpp:261 (realm-object-store-tests:arm64+0x101686728) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #4 realm::util::UniqueFunction<void (realm::Status)>::SpecificImpl<realm::sync::ClientImpl::drain_connections_on_loop()::$_3>::call(realm::Status&&) functional.hpp:154 (realm-object-store-tests:arm64+0x1016ed6dc) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #5 realm::util::UniqueFunction<void (realm::Status)>::SpecificImpl<realm::sync::ClientImpl::post(realm::util::UniqueFunction<void (realm::Status)>&&)::$_1>::call(realm::Status&&) functional.hpp:154 (realm-object-store-tests:arm64+0x10169a920) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #6 realm::sync::network::Service::PostOper<realm::util::UniqueFunction<void (realm::Status)>>::recycle_and_execute() network.hpp:2015 (realm-object-store-tests:arm64+0x10125e578) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #7 realm::sync::network::Service::Impl::run_impl(bool) network.cpp:1574 (realm-object-store-tests:arm64+0x10175eed8) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #8 realm::sync::network::Service::run_until_stopped() network.cpp:1776 (realm-object-store-tests:arm64+0x10175aca4) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #9 realm::sync::websocket::DefaultSocketProvider::event_loop() default_socket.cpp:590 (realm-object-store-tests:arm64+0x10174c248) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #10 void* std::__1::__thread_proxy[abi:v15006]<std::__1::tuple<std::__1::unique_ptr<std::__1::__thread_struct, std::__1::default_delete<std::__1::__thread_struct>>, void (realm::sync::websocket::DefaultSocketProvider::*)(), realm::sync::websocket::DefaultSocketProvider*>>(void*) thread:301 (realm-object-store-tests:arm64+0x10174dc4c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)

  Location is heap block of size 712 at 0x00010be13200 allocated by thread T7497:
    #0 operator new(unsigned long) <null>:174073056 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x8fec0) (BuildId: 981013a59ee23029b2ed90b76951327532000000200000000100000000000b00)
    #1 realm::sync::Session::Session(realm::sync::Client&, std::__1::shared_ptr<realm::DB>, std::__1::shared_ptr<realm::sync::SubscriptionStore>, std::__1::shared_ptr<realm::sync::MigrationStore>, realm::sync::Session::Config&&) client.cpp:2067 (realm-object-store-tests:arm64+0x1016eb18c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #2 realm::sync::Session::Session(realm::sync::Client&, std::__1::shared_ptr<realm::DB>, std::__1::shared_ptr<realm::sync::SubscriptionStore>, std::__1::shared_ptr<realm::sync::MigrationStore>, realm::sync::Session::Config&&) client.cpp:2065 (realm-object-store-tests:arm64+0x1016eb3fc) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #3 std::__1::__unique_if<realm::sync::Session>::__unique_single std::__1::make_unique[abi:v15006]<realm::sync::Session, realm::sync::Client&, std::__1::shared_ptr<realm::DB>, std::__1::shared_ptr<realm::sync::SubscriptionStore>, std::__1::shared_ptr<realm::sync::MigrationStore>, realm::sync::Session::Config>(realm::sync::Client&, std::__1::shared_ptr<realm::DB>&&, std::__1::shared_ptr<realm::sync::SubscriptionStore>&&, std::__1::shared_ptr<realm::sync::MigrationStore>&&, realm::sync::Session::Config&&) unique_ptr.h:714 (realm-object-store-tests:arm64+0x1014ef964) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #4 realm::SyncSession::create_sync_session() sync_session.cpp:913 (realm-object-store-tests:arm64+0x1014e1538) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #5 realm::SyncSession::become_active() sync_session.cpp:111 (realm-object-store-tests:arm64+0x1014e04c0) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #6 realm::SyncSession::do_revive(realm::util::CheckedUniqueLock&&) sync_session.cpp:1081 (realm-object-store-tests:arm64+0x1014e9f58) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #7 realm::SyncSession::revive_if_needed() sync_session.cpp:1012 (realm-object-store-tests:arm64+0x1014e7a50) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #8 realm::_impl::RealmCoordinator::do_get_realm(realm::RealmConfig&&, std::__1::shared_ptr<realm::Realm>&, std::__1::optional<realm::VersionID>, realm::util::CheckedUniqueLock&) realm_coordinator.cpp:347 (realm-object-store-tests:arm64+0x101493524) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #9 realm::_impl::RealmCoordinator::get_realm(realm::RealmConfig, std::__1::optional<realm::VersionID>) realm_coordinator.cpp:274 (realm-object-store-tests:arm64+0x101492fbc) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #10 realm::Realm::get_shared_realm(realm::RealmConfig) shared_realm.cpp:161 (realm-object-store-tests:arm64+0x101464d00) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #11 (anonymous namespace)::AuditContext::trigger_write(std::__1::shared_ptr<(anonymous namespace)::AuditContext::Scope>)::$_20::operator()() const audit.mm:1278 (realm-object-store-tests:arm64+0x101539d08) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #12 invocation function for block in (anonymous namespace)::AuditContext::trigger_write(std::__1::shared_ptr<(anonymous namespace)::AuditContext::Scope>) audit.mm:1277 (realm-object-store-tests:arm64+0x101538600) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #13 __tsan::invoke_and_release_block(void*) <null>:174073056 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x8bd7c) (BuildId: 981013a59ee23029b2ed90b76951327532000000200000000100000000000b00)
    #14 _dispatch_client_callout <null>:164658064 (libdispatch.dylib:arm64e+0x43fc) (BuildId: 9897030f75d3374b8787322d3d72e09632000000200000000100000000050d00)

  Mutex M0 (0x00010ca07848) created at:
    #0 pthread_mutex_lock <null>:174073056 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x42dc4) (BuildId: 981013a59ee23029b2ed90b76951327532000000200000000100000000000b00)
    #1 std::__1::mutex::lock() <null>:165675392 (libc++.1.dylib:arm64e+0x14f6c) (BuildId: 3ee924048fc3374ba598d5c9a8cd64b532000000200000000100000000050d00)
    #2 realm::_impl::RealmCoordinator::init_external_helpers() realm_coordinator.cpp:545 (realm-object-store-tests:arm64+0x101494e1c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #3 realm::_impl::RealmCoordinator::open_db() realm_coordinator.cpp:515 (realm-object-store-tests:arm64+0x101492480) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #4 realm::_impl::RealmCoordinator::do_get_realm(realm::RealmConfig&&, std::__1::shared_ptr<realm::Realm>&, std::__1::optional<realm::VersionID>, realm::util::CheckedUniqueLock&) realm_coordinator.cpp:324 (realm-object-store-tests:arm64+0x1014930dc) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #5 realm::_impl::RealmCoordinator::get_realm(realm::RealmConfig, std::__1::optional<realm::VersionID>) realm_coordinator.cpp:274 (realm-object-store-tests:arm64+0x101492fbc) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #6 realm::Realm::get_shared_realm(realm::RealmConfig) shared_realm.cpp:161 (realm-object-store-tests:arm64+0x101464d00) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #7 (anonymous namespace)::AuditContext::trigger_write(std::__1::shared_ptr<(anonymous namespace)::AuditContext::Scope>)::$_20::operator()() const audit.mm:1278 (realm-object-store-tests:arm64+0x101539d08) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #8 invocation function for block in (anonymous namespace)::AuditContext::trigger_write(std::__1::shared_ptr<(anonymous namespace)::AuditContext::Scope>) audit.mm:1277 (realm-object-store-tests:arm64+0x101538600) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #9 __tsan::invoke_and_release_block(void*) <null>:174073056 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x8bd7c) (BuildId: 981013a59ee23029b2ed90b76951327532000000200000000100000000000b00)
    #10 _dispatch_client_callout <null>:164698432 (libdispatch.dylib:arm64e+0x43fc) (BuildId: 9897030f75d3374b8787322d3d72e09632000000200000000100000000050d00)

  Thread T7497 (tid=5340805, running) is a GCD worker thread

  Thread T8203 (tid=5341627, running) created by main thread at:
    #0 pthread_create <null>:174073056 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x2fd88) (BuildId: 981013a59ee23029b2ed90b76951327532000000200000000100000000000b00)
    #1 std::__1::thread::thread<void (realm::sync::websocket::DefaultSocketProvider::*)(), realm::sync::websocket::DefaultSocketProvider*, void>(void (realm::sync::websocket::DefaultSocketProvider::*&&)(), realm::sync::websocket::DefaultSocketProvider*&&) thread:317 (realm-object-store-tests:arm64+0x10174db30) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #2 realm::sync::websocket::DefaultSocketProvider::start() default_socket.cpp:515 (realm-object-store-tests:arm64+0x10174bc80) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #3 realm::sync::websocket::DefaultSocketProvider::DefaultSocketProvider(std::__1::shared_ptr<realm::util::Logger> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<realm::BindingCallbackThreadObserver> const&, realm::util::TaggedBool<realm::sync::websocket::DefaultSocketProvider::AutoStartTag>) default_socket.cpp:486 (realm-object-store-tests:arm64+0x10174ba88) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #4 realm::sync::websocket::DefaultSocketProvider::DefaultSocketProvider(std::__1::shared_ptr<realm::util::Logger> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<realm::BindingCallbackThreadObserver> const&, realm::util::TaggedBool<realm::sync::websocket::DefaultSocketProvider::AutoStartTag>) default_socket.cpp:482 (realm-object-store-tests:arm64+0x10174bdb0) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #5 std::__1::shared_ptr<realm::sync::websocket::DefaultSocketProvider> std::__1::allocate_shared[abi:v15006]<realm::sync::websocket::DefaultSocketProvider, std::__1::allocator<realm::sync::websocket::DefaultSocketProvider>, std::__1::shared_ptr<realm::util::Logger> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>, std::__1::shared_ptr<realm::BindingCallbackThreadObserver> const&, void>(std::__1::allocator<realm::sync::websocket::DefaultSocketProvider> const&, std::__1::shared_ptr<realm::util::Logger> const&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&&, std::__1::shared_ptr<realm::BindingCallbackThreadObserver> const&) shared_ptr.h:953 (realm-object-store-tests:arm64+0x1014dfd04) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #6 realm::_impl::SyncClient::SyncClient(std::__1::shared_ptr<realm::util::Logger> const&, realm::SyncClientConfig const&, std::__1::weak_ptr<realm::SyncManager const>)::'lambda'()::operator()() const sync_client.hpp:55 (realm-object-store-tests:arm64+0x1014df4b8) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #7 realm::_impl::SyncClient::SyncClient(std::__1::shared_ptr<realm::util::Logger> const&, realm::SyncClientConfig const&, std::__1::weak_ptr<realm::SyncManager const>) sync_client.hpp:46 (realm-object-store-tests:arm64+0x1014dee48) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #8 realm::SyncManager::create_sync_client() const sync_manager.cpp:782 (realm-object-store-tests:arm64+0x1014daf2c) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #9 realm::SyncManager::get_sync_client() const sync_manager.cpp:776 (realm-object-store-tests:arm64+0x1014da914) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #10 TestSyncManager::TestSyncManager(TestSyncManager::Config const&, SyncServer::Config const&) test_file.cpp:398 (realm-object-store-tests:arm64+0x100db3a24) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #11 TestSyncManager::TestSyncManager(TestSyncManager::Config const&, SyncServer::Config const&) test_file.cpp:380 (realm-object-store-tests:arm64+0x100db3c78) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #12 CATCH2_INTERNAL_TEST_46() audit.cpp:1084 (realm-object-store-tests:arm64+0x1012eb480) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #13 CATCH2_INTERNAL_TEST_46() audit.cpp:1081 (realm-object-store-tests:arm64+0x1012eb3a4) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #14 Catch::RunContext::runCurrentTest(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&, std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>&) catch_run_context.cpp:501 (realm-object-store-tests:arm64+0x101375758) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #15 Catch::RunContext::runTest(Catch::TestCaseHandle const&) catch_run_context.cpp:232 (realm-object-store-tests:arm64+0x1013750d0) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #16 Catch::(anonymous namespace)::TestGroup::execute() catch_session.cpp:110 (realm-object-store-tests:arm64+0x1013421a0) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #17 Catch::Session::runInternal() catch_session.cpp:332 (realm-object-store-tests:arm64+0x101341484) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #18 Catch::Session::run() catch_session.cpp:263 (realm-object-store-tests:arm64+0x101340c24) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)
    #19 main main.cpp:77 (realm-object-store-tests:arm64+0x1003bd264) (BuildId: a946f63ff97e3161abaa29199ca69f1132000000200000000100000000000d00)

SUMMARY: ThreadSanitizer: data race client.cpp:1332 in realm::sync::SessionWrapper::nonsync_transact_notify(unsigned long long)
==================
/Users/user/rsdk/cpp/realm-core/src/realm/object-store/sync/sync_manager.cpp:254: [realm-core-13.19.0] Assertion failed: no_sessions
0   realm-object-store-tests            0x00000001061acde4 _ZN5realm4utilL18terminate_internalERNSt3__118basic_stringstreamIcNS1_11char_traitsIcEENS1_9allocatorIcEEEE + 36
1   realm-object-store-tests            0x00000001061acd54 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 292
2   realm-object-store-tests            0x00000001061acc30 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 0
3   realm-object-store-tests            0x0000000105c39aa4 _ZN5realm11SyncManager17reset_for_testingEv + 1420
4   realm-object-store-tests            0x0000000105517d28 _ZN15TestSyncManagerD2Ev + 132
5   realm-object-store-tests            0x0000000105517ea8 _ZN15TestSyncManagerD1Ev + 32
6   realm-object-store-tests            0x0000000105a59a0c _ZL23CATCH2_INTERNAL_TEST_46v + 42640
7   realm-object-store-tests            0x0000000105ae1ff0 _ZNK5Catch21TestInvokerAsFunction6invokeEv + 40
8   realm-object-store-tests            0x0000000105ad975c _ZN5Catch10RunContext14runCurrentTestERNSt3__112basic_stringIcNS1_11char_traitsIcEENS1_9allocatorIcEEEES8_ + 596
9   realm-object-store-tests            0x0000000105ad90d4 _ZN5Catch10RunContext7runTestERKNS_14TestCaseHandleE + 616
10  realm-object-store-tests            0x0000000105aa61a4 _ZN5Catch12_GLOBAL__N_19TestGroup7executeEv + 208
11  realm-object-store-tests            0x0000000105aa5488 _ZN5Catch7Session11runInternalEv + 2012
12  realm-object-store-tests            0x0000000105aa4c28 _ZN5Catch7Session3runEv + 84
13  realm-object-store-tests            0x0000000104b21268 main + 4540
14  dyld                                0x00000001888e3f28 start + 2236
!!! IMPORTANT: Please report this at https://github.com/realm/realm-core/issues/new/chooseFilters: ~[baas]
Randomness seeded to: 558659296

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
realm-object-store-tests is a Catch2 v3.3.2 host application.
Run with -? for options

-------------------------------------------------------------------------------
audit management
-------------------------------------------------------------------------------
/Users/user/rsdk/cpp/realm-core/test/object-store/audit.cpp:1081
...............................................................................

/Users/user/rsdk/cpp/realm-core/test/object-store/audit.cpp:1255: FAILED:
  {Unknown expression after the reported line}
due to a fatal error condition:
  SIGABRT - Abort (abnormal termination) signal

===============================================================================
test cases:    411 |    410 passed | 1 failed
assertions: 254772 | 254771 passed | 1 failed

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

Successfully merging a pull request may close this issue.

3 participants