Crash at 'realm::Transaction::Transaction' when app will terminate

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

XMLWordPrintableJSON

      How frequently does the bug occur?

      Sometimes

      Description

      Hi, there are some Relam codes as follows:

      Unable to find source-code formatter for language: objective. Available languages are: actionscript, ada, applescript, bash, c, c#, c++, cpp, css, erlang, go, groovy, haskell, html, java, javascript, js, json, lua, none, nyan, objc, perl, php, python, r, rainbow, ruby, scala, sh, sql, swift, visualbasic, xml, yaml
      + (instancetype)appIMRealmWithFilePath:(NSString *)filePath {
          RLMRealm *realm;
          @try {
              NSError *error;
              realm = [RLMRealm realmWithConfiguration:[self imrealmConfigurationWithFilePath:filePath] error:&error];
              if (error) {
                  [NSException raise:@"realm open error" format:@""];
              }
              return realm;
          } @catch (NSException *e) {
              NSLog(@"realm exception %@ --> %@", filePath, e);
          }
      
          return [self getAllNewIMRealm];
      }
      
      + (RLMRealmConfiguration *)imrealmConfigurationWithFilePath:(NSString *)filePath {
          RLMRealmConfiguration *configuration = [RLMRealmConfiguration defaultConfiguration];
          configuration.schemaVersion = (uint64_t)[self getCurrentIMDBVersion];
          configuration.fileURL = [NSURL fileURLWithPath:filePath];
          configuration.migrationBlock = ^(RLMMigration *migration, uint64_t oldSchemaVersion) {
              // Nothing to do!
              // Realm will automatically detect new properties and removed properties
              // And will update the schema on disk automatically
          };
          return configuration;
      }
      

      A crash occurs when the app enter background and will terminate, but hard to reproduce.

      Stacktrace & log output

      Unable to find source-code formatter for language: shell. Available languages are: actionscript, ada, applescript, bash, c, c#, c++, cpp, css, erlang, go, groovy, haskell, html, java, javascript, js, json, lua, none, nyan, objc, perl, php, python, r, rainbow, ruby, scala, sh, sql, swift, visualbasic, xml, yaml
      Exception Type:  SIGSEGV
      Exception Codes: SEGV_MAPERR at 0x8f29c76b8620
      Crashed Thread:  2
      
      Thread 2 Crashed:
      0   App                                 0x000000010b5fd9e0 realm::Transaction::Transaction(std::__1::shared_ptr<realm::DB>, realm::SlabAlloc*, realm::DB::ReadLockInfo&, realm::DB::TransactStage) + 272
      1   App                                 0x000000010b4ec014 std::__1::shared_ptr<realm::Transaction> (anonymous namespace)::make_transaction_ref<std::__1::shared_ptr<realm::DB>, realm::SlabAlloc*, realm::DB::ReadLockInfo&, realm::DB::TransactStage>(std::__1::shared_ptr<realm::DB>&&, realm::SlabAlloc*&&, realm::DB::ReadLockInfo&&&, realm::DB::TransactStage&&) + 84
      2   App                                 0x000000010b4e68f0 realm::DB::start_read(realm::VersionID) + 268
      3   App                                 0x000000010b775584 realm::Realm::begin_read(realm::VersionID) + 48
      4   App                                 0x000000010b7754f0 realm::Realm::transaction() + 104
      5   App                                 0x000000010b7765c4 realm::Realm::do_refresh() + 416
      6   App                                 0x000000010b77635c realm::Realm::get_full_schema() + 44
      7   App                                 0x000000010b776a1c 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) + 232
      8   App                                 0x000000010a3fe378 +[RLMRealm realmWithConfiguration:confinedTo:error:] (RLMRealm.mm:489)
      9   App                                 0x000000010553c77c +[RLMRealm realmWithConfiguration:error:] (RLMRealm.mm:383)
      10  App                                 0x000000010a28afd8 +[RLMRealm(AppIM) appIMRealmWithFilePath:] (RLMRealm+AppIM.m:88)
      11  App                                 0x0000000107df9ac0 +[RLMRealm(AppIM) appimRealm] (RLMRealm+AppIM.m:189)
      
      
      Thread 0:
      0   App                                 0x00000001061187f4 std::__1::unique_ptr<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, void*>*>* [], std::__1::__bucket_list_deallocator<std::__1::allocator<std::__1::__hash_node_base<std::__1::__hash_node<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, void*>*>*> > >::~unique_ptr() (memory:2522)
      1   App                                 0x0000000107752cd0 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor> > >::~__hash_table() (__hash_table:1545)
      2   App                                 0x0000000107a34868 std::__1::__hash_table<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, std::__1::__unordered_map_hasher<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::__unordered_map_equal<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor>, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, true>, std::__1::allocator<std::__1::__hash_value_type<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor> > >::~__hash_table() (__hash_table:1533)
      3   App                                 0x000000010614fedc std::__1::unordered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, fbsdk::MTensor> > >::~unordered_map() (unordered_map:972)
      4   App                                 0x00000001076b9e30 std::__1::unordered_map<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, fbsdk::MTensor, std::__1::hash<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::equal_to<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >, std::__1::allocator<std::__1::pair<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const, fbsdk::MTensor> > >::~unordered_map() (unordered_map:970)
      5   libsystem_c.dylib                   0x00000001968dd290 __cxa_finalize_ranges + 404
      6   libsystem_c.dylib                   0x00000001968dd5e4 exit + 24
      7   UIKitCore                           0x000000018ff48118 -[UIApplication _terminateWithStatus:] + 500
      8   UIKitCore                           0x000000018f5943c0 -[_UISceneLifecycleMultiplexer _evalTransitionToSettings:fromSettings:forceExit:withTransitionStore:] + 124
      9   UIKitCore                           0x000000018f593ff0 -[_UISceneLifecycleMultiplexer forceExitWithTransitionContext:scene:] + 216
      10  UIKitCore                           0x000000018ff3dbe8 -[UIApplication workspaceShouldExit:withTransitionContext:] + 208
      

      Can you reproduce the bug?

      No

      Reproduction Steps

      No response

      Version

      10.41.1

      What Atlas Services are you using?

      Local Database only

      Are you using encryption?

      No

      Platform OS and version(s)

      iOS 15.3.1, 14.7.1, 14.4, 14.6

      Build environment

      Xcode version: 14.2
      Dependency manager and version: ...

              Assignee:
              Unassigned
              Reporter:
              Unito Sync Bot
              Archiver:
              Marc Greenfield

                Created:
                Updated:
                Archived: