Upgrading from sync beta-6.5 to beta-7.2 and the latest object store breaks a whole bunch of our Cocoa tests. I believe all the failing tests have to do with KVO. See https://github.com/realm/realm-cocoa/pull/4548 for the PR that attempts to upgrade the dependencies.
@bdash @jpsim @tgoyne
This blocks https://github.com/realm/realm-cocoa/pull/4535, and possibly other tickets.
Example test failure: testCancelWriteWithArrayChanges. Backtrace:
* thread #1: tid = 0xb9ef4, 0x0000000105064ce2 Realm`realm::Realm::is_closed() const [inlined] std::__1::unique_ptr<realm::Group, std::__1::default_delete<realm::Group> >::operator bool(this=0x0000000000000108) const + 16 at memory:2710, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x108)
* frame #0: 0x0000000105064ce2 Realm`realm::Realm::is_closed() const [inlined] std::__1::unique_ptr<realm::Group, std::__1::default_delete<realm::Group> >::operator bool(this=0x0000000000000108) const + 16 at memory:2710
frame #1: 0x0000000105064cd2 Realm`realm::Realm::is_closed(this=0x0000000000000000) const + 34 at shared_realm.hpp:230
frame #2: 0x0000000105062ec5 Realm`realm::Realm::verify_open(this=0x0000000000000000) const + 21 at shared_realm.cpp:445
frame #3: 0x0000000105060b19 Realm`realm::Realm::read_group(this=0x0000000000000000) + 25 at shared_realm.cpp:226
frame #4: 0x000000010508c2be Realm`(anonymous namespace)::KVOAdapter::KVOAdapter(this=0x00007fff5fbfa810, observers=size=1, context=0x000060800002d080) + 3262 at transact_log_handler.cpp:72
frame #5: 0x000000010508b5f5 Realm`(anonymous namespace)::KVOAdapter::KVOAdapter(this=0x00007fff5fbfa810, observers=size=1, context=0x000060800002d080) + 37 at transact_log_handler.cpp:60
frame #6: 0x000000010508b56e Realm`(anonymous namespace)::KVOTransactLogObserver::KVOTransactLogObserver(this=0x00007fff5fbfa7f8, observers=size=1, context=0x000060800002d080, notifiers=0x00007fff5fbfa908, sg=0x0000000100817000) + 78 at transact_log_handler.cpp:621
frame #7: 0x0000000105077415 Realm`(anonymous namespace)::KVOTransactLogObserver::KVOTransactLogObserver(this=0x00007fff5fbfa7f8, observers=size=1, context=0x000060800002d080, notifiers=0x00007fff5fbfa908, sg=0x0000000100817000) + 53 at transact_log_handler.cpp:624
frame #8: 0x00000001050772b0 Realm`realm::_impl::transaction::cancel(sg=0x0000000100817000, context=0x000060800002d080) + 416 at transact_log_handler.cpp:723
frame #9: 0x000000010506541f Realm`realm::Realm::cancel_transaction(this=0x0000000100202cf0) + 479 at shared_realm.cpp:507
frame #10: 0x0000000104fd5f6e Realm`::-[RLMRealm cancelWriteTransaction](self=0x00006080000a1860, _cmd="cancelWriteTransaction") + 46 at RLMRealm.mm:491
frame #11: 0x0000000104310f48 Tests`::-[KVOMultipleAccessorsTests testCancelWriteWithArrayChanges](self=0x0000600000044c50, _cmd="testCancelWriteWithArrayChanges") + 552 at KVOTests.mm:1474
frame #12: 0x00007fffcfc9e3ec CoreFoundation`__invoking___ + 140
frame #13: 0x00007fffcfc9e271 CoreFoundation`-[NSInvocation invoke] + 289
frame #14: 0x00000001000c6b7e XCTest`__24-[XCTestCase invokeTest]_block_invoke_2 + 481
frame #15: 0x0000000100100c3c XCTest`-[XCTestContext performInScope:] + 190
frame #16: 0x00000001000c698a XCTest`-[XCTestCase invokeTest] + 255
frame #17: 0x000000010487f673 Tests`-[RLMTestCase invokeTest](self=0x0000600000044c50, _cmd="invokeTest") + 307 at RLMTestCase.m:137
frame #18: 0x00000001000c71a3 XCTest`-[XCTestCase performTest:] + 457
frame #19: 0x00000001000c42ac XCTest`-[XCTestSuite performTest:] + 491
frame #20: 0x00000001000c42ac XCTest`-[XCTestSuite performTest:] + 491
frame #21: 0x00000001000c42ac XCTest`-[XCTestSuite performTest:] + 491
frame #22: 0x00000001000b0cc8 XCTest`__25-[XCTestDriver _runSuite]_block_invoke + 51
frame #23: 0x00000001000d8e7b XCTest`-[XCTestObservationCenter _observeTestExecutionForBlock:] + 602
frame #24: 0x00000001000b0b5d XCTest`-[XCTestDriver _runSuite] + 438
frame #25: 0x00000001000b18b9 XCTest`-[XCTestDriver _checkForTestManager] + 612
frame #26: 0x00000001001020ad XCTest`_XCTestMain + 628
frame #27: 0x00007fffcfcc07dc CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
frame #28: 0x00007fffcfca17e4 CoreFoundation`__CFRunLoopDoBlocks + 356
frame #29: 0x00007fffcfca0f65 CoreFoundation`__CFRunLoopRun + 917
frame #30: 0x00007fffcfca0974 CoreFoundation`CFRunLoopRunSpecific + 420
frame #31: 0x00007fffcf22cacc HIToolbox`RunCurrentEventLoopInMode + 240
frame #32: 0x00007fffcf22c809 HIToolbox`ReceiveNextEventCommon + 184
frame #33: 0x00007fffcf22c736 HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 71
frame #34: 0x00007fffcd7d2ae4 AppKit`_DPSNextEvent + 1120
frame #35: 0x00007fffcdf4d21f AppKit`-[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2789
frame #36: 0x00007fffcd7c7465 AppKit`-[NSApplication run] + 926
frame #37: 0x00007fffcd791d80 AppKit`NSApplicationMain + 1237
frame #38: 0x000000010000157b TestHost`main(argc=5, argv=0x00007fff5fbff2b8) + 43 at main.m:40
frame #39: 0x00007fffe51f9255 libdyld.dylib`start + 1
frame #40: 0x00007fffe51f9255 libdyld.dylib`start + 1
This is fixed by 827b621e9879314308496df5765539036902bb44.
Most helpful comment
This is fixed by 827b621e9879314308496df5765539036902bb44.