Skip to content

Particular realm database trips on assertion #8079

@bdach

Description

@bdach

SDK and version

SDK : .NET
Version: 20.1.0

Observations

  • How frequent do the crash occur? Every time
  • Does it happen in production or during dev/test? Both
  • Can the crash be reproduced by you? Yes
  • Can you provide instructions for how we can reproduce it? Yes

Crash log / stacktrace

/Users/runner/work/realm-dotnet/realm-dotnet/wrappers/realm-core/src/realm/index_string.cpp:1641: [realm-core-20.1.2] Assertion failed: int64_t(ref >> 1) == obj_key.value
0   librealm-wrappers.dylib             0x000000012c3da798 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 396
1   librealm-wrappers.dylib             0x000000012c3da60c _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 0
2   librealm-wrappers.dylib             0x000000012c2f1ad0 _ZN5realm11StringIndex9do_deleteENS_6ObjKeyENS_10StringDataEm + 2056
3   librealm-wrappers.dylib             0x000000012c2f14e0 _ZN5realm11StringIndex9do_deleteENS_6ObjKeyENS_10StringDataEm + 536
4   librealm-wrappers.dylib             0x000000012c2ef5e8 _ZN5realm11StringIndex12erase_stringENS_6ObjKeyENS_10StringDataE + 32
5   librealm-wrappers.dylib             0x000000012c2ef340 _ZN5realm11StringIndex5eraseENS_6ObjKeyE + 644
6   librealm-wrappers.dylib             0x000000012c2b13cc _ZN5realm11ClusterTree5eraseENS_6ObjKeyERNS_12CascadeStateE + 604
7   librealm-wrappers.dylib             0x000000012c3b26e0 _ZN5realm5Table13remove_objectENS_6ObjKeyE + 284
8   librealm-wrappers.dylib             0x000000012c11d978 object_remove + 236
9   ???                                 0x0000000304364ea4 0x0 + 12955569828
10  ???                                 0x0000000304364d98 0x0 + 12955569560
11  ???                                 0x0000000304364c3c 0x0 + 12955569212
12  ???                                 0x0000000304360658 0x0 + 12955551320
13  ???                                 0x00000003043602a4 0x0 + 12955550372
14  ???                                 0x000000030435ff98 0x0 + 12955549592
15  ???                                 0x000000030435fc54 0x0 + 12955548756
16  ???                                 0x00000003043544ac 0x0 + 12955501740
17  ???                                 0x0000000304335974 0x0 + 12955375988
18  ???                                 0x000000030432cf08 0x0 + 12955340552
19  libcoreclr.dylib                    0x000000010158cc44 CallDescrWorkerInternal + 132
20  libcoreclr.dylib                    0x000000010140a764 _Z26CallDescrWorkerWithHandlerP13CallDescrDatai + 108
21  libcoreclr.dylib                    0x00000001014a7b7c _ZN19RuntimeMethodHandle12InvokeMethodEP6ObjectPPvP15SignatureNativeb + 1684
22  ???                                 0x000000030041c9fc 0x0 + 12889213436
23  ???                                 0x000000030041c680 0x0 + 12889212544
24  ???                                 0x000000030432b688 0x0 + 12955334280
25  ???                                 0x0000000304310004 0x0 + 12955222020
26  ???                                 0x000000030430ff50 0x0 + 12955221840
27  ???                                 0x000000030430ff50 0x0 + 12955221840
28  ???                                 0x000000030430fe40 0x0 + 12955221568
29  ???                                 0x000000030430fd6c 0x0 + 12955221356
30  ???                                 0x000000030430fcd4 0x0 + 12955221204
31  ???                                 0x000000030430b87c 0x0 + 12955203708
32  ???                                 0x000000030430946c 0x0 + 12955194476
33  ???                                 0x000000030430910c 0x0 + 12955193612
34  ???                                 0x00000003043110e0 0x0 + 12955226336
35  ???                                 0x0000000304310f0c 0x0 + 12955225868
36  ???                                 0x00000003043109e8 0x0 + 12955224552
37  ???                                 0x0000000304310004 0x0 + 12955222020
38  ???                                 0x000000030430ff50 0x0 + 12955221840
39  ???                                 0x000000030430ff50 0x0 + 12955221840
40  ???                                 0x000000030430fe40 0x0 + 12955221568
41  ???                                 0x000000030430fd6c 0x0 + 12955221356
42  ???                                 0x000000030430fcd4 0x0 + 12955221204
43  ???                                 0x000000030430b87c 0x0 + 12955203708
44  ???                                 0x000000030430946c 0x0 + 12955194476
45  ???                                 0x000000030430910c 0x0 + 12955193612
46  ???                                 0x00000003043110e0 0x0 + 12955226336
47  ???                                 0x0000000304310f0c 0x0 + 12955225868
48  ???                                 0x00000003043109e8 0x0 + 12955224552
49  ???                                 0x0000000304310004 0x0 + 12955222020
50  ???                                 0x000000030430ff50 0x0 + 12955221840
51  ???                                 0x000000030430ff50 0x0 + 12955221840
52  ???                                 0x000000030430ff50 0x0 + 12955221840
53  ???                                 0x000000030430ff50 0x0 + 12955221840
54  ???                                 0x000000030430ff50 0x0 + 12955221840
55  ???                                 0x000000030430fe40 0x0 + 12955221568
56  ???                                 0x000000030430fd6c 0x0 + 12955221356
57  ???                                 0x000000030430fcd4 0x0 + 12955221204
58  ???                                 0x000000030430b87c 0x0 + 12955203708
59  ???                                 0x000000030430946c 0x0 + 12955194476
60  ???                                 0x000000030430910c 0x0 + 12955193612
61  ???                                 0x00000003043110e0 0x0 + 12955226336
62  ???                                 0x0000000304310f0c 0x0 + 12955225868
63  ???                                 0x00000003043109e8 0x0 + 12955224552
64  ???                                 0x0000000304310004 0x0 + 12955222020
65  ???                                 0x000000030430ff50 0x0 + 12955221840
66  ???                                 0x000000030430ff50 0x0 + 12955221840
67  ???                                 0x000000030430ff50 0x0 + 12955221840
68  ???                                 0x000000030430ff50 0x0 + 12955221840
69  ???                                 0x000000030430ff50 0x0 + 12955221840
70  ???                                 0x000000030430fe40 0x0 + 12955221568
71  ???                                 0x000000030430fd6c 0x0 + 12955221356
72  ???                                 0x000000030430fcd4 0x0 + 12955221204
73  ???                                 0x000000030430b87c 0x0 + 12955203708
74  ???                                 0x000000030430946c 0x0 + 12955194476
75  ???                                 0x000000030430910c 0x0 + 12955193612
76  ???                                 0x00000003043110e0 0x0 + 12955226336
77  ???                                 0x0000000304310f0c 0x0 + 12955225868
78  ???                                 0x00000003043109e8 0x0 + 12955224552
79  ???                                 0x0000000304310004 0x0 + 12955222020
80  ???                                 0x000000030430ff50 0x0 + 12955221840
81  ???                                 0x000000030430ff50 0x0 + 12955221840
82  ???                                 0x000000030430ff50 0x0 + 12955221840
83  ???                                 0x000000030430ff50 0x0 + 12955221840
84  ???                                 0x000000030430ff50 0x0 + 12955221840
85  ???                                 0x000000030430ff50 0x0 + 12955221840
86  ???                                 0x000000030430ff50 0x0 + 12955221840
87  ???                                 0x000000030430fe40 0x0 + 12955221568
88  ???                                 0x000000030430fd6c 0x0 + 12955221356
89  ???                                 0x000000030430fcd4 0x0 + 12955221204
90  ???                                 0x000000030430b87c 0x0 + 12955203708
91  ???                                 0x000000030430946c 0x0 + 12955194476
92  ???                                 0x000000030430910c 0x0 + 12955193612
93  ???                                 0x0000000303f983a8 0x0 + 12951585704
94  ???                                 0x00000003010230dc 0x0 + 12901822684
95  ???                                 0x0000000300ffbae4 0x0 + 12901661412
96  libcoreclr.dylib                    0x000000010158cc44 CallDescrWorkerInternal + 132
97  libcoreclr.dylib                    0x000000010140ade4 _ZN18MethodDescCallSite16CallTargetWorkerEPKyPyi + 836
98  libcoreclr.dylib                    0x0000000101311458 _Z7RunMainP10MethodDescsPiPP8PtrArray + 624
99  libcoreclr.dylib                    0x00000001013117a8 _ZN8Assembly17ExecuteMainMethodEPP8PtrArrayi + 264
100 libcoreclr.dylib                    0x00000001013393bc _ZN8CorHost215ExecuteAssemblyEjPKDsiPS1_Pj + 640
101 libcoreclr.dylib                    0x00000001012ff770 coreclr_execute_assembly + 232
102 libhostpolicy.dylib                 0x0000000100bae878 _Z19run_app_for_contextRK20hostpolicy_context_tiPPKc + 1500
103 libhostpolicy.dylib                 0x0000000100baf668 corehost_main + 320
104 libhostfxr.dylib                    0x0000000100ad22ac _ZN10fx_muxer_t24handle_exec_host_commandERKNSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEERK19host_startup_info_tS8_RKNS0_13unordered_mapI13known_optionsNS0_6vectorIS6_NS4_IS6_EEEE18known_options_hashNS0_8equal_toISD_EENS4_INS0_4pairIKSD_SG_EEEEEEiPPKci11host_mode_tbPciPi + 1144
105 libhostfxr.dylib                    0x0000000100ad1618 _ZN10fx_muxer_t7executeENSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiPPKcRK19host_startup_info_tPciPi + 872
106 libhostfxr.dylib                    0x0000000100ace564 hostfxr_main_startupinfo + 128
107 osu!                                0x00000001009e988c _Z9exe_startiPPKc + 1372
108 osu!                                0x00000001009e9b58 main + 184
109 dyld                                0x0000000183fa4274 start + 2840
!!! IMPORTANT: Please report this at https://github.com/realm/realm-core/issues/new/choose

Steps & Code to Reproduce

This was a reported by a user of a game I work on (https://github.com/ppy/osu).

I am able to reproduce using a database they provided: client.realm.zip

Steps to reproduce using the game:

  • Clone https://github.com/ppy/osu
  • Launch the game once (dotnet run --project osu.Desktop)
  • Press Ctrl-O, search for "Open osu! folder", click button to open game folder, close game
  • Delete all *.realm files from opened folder and paste in the database provided above
  • Run the game again and get the crash

Weirdly the database opens fine via realm studio 20.0.0. I've tried re-exporting the database from within realm studio to see if it magically fixes it but unfortunately it does not.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions