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

macOS: realm corrupt after moving game data to an exFAT volume #25930

Open
ILW8 opened this issue Dec 20, 2023 · 6 comments
Open

macOS: realm corrupt after moving game data to an exFAT volume #25930

ILW8 opened this issue Dec 20, 2023 · 6 comments
Assignees
Labels
realm deals with local realm database

Comments

@ILW8
Copy link
Contributor

ILW8 commented Dec 20, 2023

Type

Crash to desktop

Bug description

Similar to #19948, I'm not entirely sure whether to report here or to realm/realm-core

After moving osu! data to an exFAT volume, quitting and restarting the game causes it to crash due to an assertion failure in realm. Sometimes, the game will keep crashing until the data directory is deleted while at other times the next attempt at starting the game succeeds and creates a new realm file.
Although moving osu! data directory to an exFAT volume is the most reliable way to reproduce a realm crash, there is a chance to trigger a realm crash after finishing a map.

I marked affected version as 2023.1220.0 but it has been happening for at least a few days or weeks. I'm unsure whether this started happening after an OS update or not, currently running macOS 14.1.2 (23B92)

Screenshots or videos

No response

Version

2023.1220.0

Logs

1703045609.database.log
1703045609.input.log
1703045609.network.log
1703045609.performance.log
1703045609.runtime.log
1703045656.input.log
1703045656.runtime.log

Realm crash stack trace:

/Users/runner/work/realm-dotnet/realm-dotnet/wrappers/realm-core/src/realm/array.hpp:760: [realm-core-13.15.0] Assertion failed: has_refs()
0   librealm-wrappers.dylib             0x0000000137442be4 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 400
1   librealm-wrappers.dylib             0x0000000137442a54 _ZN5realm4util19terminate_with_infoEPKcS2_lS2_OSt16initializer_listINS0_9PrintableEE + 0
2   librealm-wrappers.dylib             0x00000001373011cc _ZN5realm7Cluster4initENS_6MemRefE + 396
3   librealm-wrappers.dylib             0x0000000137310a44 _ZNK5realm16ClusterNodeInner8traverseENS_4util11FunctionRefIFNS_15IteratorControlEPKNS_7ClusterEEEEx + 656
4   librealm-wrappers.dylib             0x00000001373a48d4 _ZNK5realm5Query11do_find_allERNS_9TableViewEm + 1196
5   librealm-wrappers.dylib             0x000000013741b220 _ZN5realm9TableView7do_syncEv + 388
6   librealm-wrappers.dylib             0x00000001373a4338 _ZNK5realm5Query8find_allEm + 160
7   librealm-wrappers.dylib             0x00000001373a53f8 _ZNK5realm5Query8find_allERKNS_18DescriptorOrderingE + 240
8   librealm-wrappers.dylib             0x0000000137102238 _ZN5realm7Results17ensure_up_to_dateENS0_12EvaluateModeE + 532
9   librealm-wrappers.dylib             0x0000000137109660 _ZNO5realm7Results8snapshotEv + 204
10  librealm-wrappers.dylib             0x00000001370649e0 results_snapshot + 76
11  ???                                 0x0000000283c099e8 0x0 + 10800372200
12  ???                                 0x0000000283c0f514 0x0 + 10800395540
13  ???                                 0x0000000283c0f494 0x0 + 10800395412
14  ???                                 0x0000000283c05908 0x0 + 10800355592
15  ???                                 0x0000000283c11cb0 0x0 + 10800405680
16  ???                                 0x0000000280700b9c 0x0 + 10744761244
17  ???                                 0x0000000280f23a10 0x0 + 10753292816
18  ???                                 0x0000000283c118b0 0x0 + 10800404656
19  ???                                 0x0000000283c11268 0x0 + 10800403048
20  ???                                 0x0000000283c10f78 0x0 + 10800402296
21  ???                                 0x0000000283c10ca0 0x0 + 10800401568
22  ???                                 0x0000000283bff630 0x0 + 10800330288
23  ???                                 0x0000000283bc4f18 0x0 + 10800090904
24  ???                                 0x0000000283bb2d58 0x0 + 10800016728
25  libcoreclr.dylib                    0x0000000103012408 CallDescrWorkerInternal + 132
26  libcoreclr.dylib                    0x0000000102e83384 _Z26CallDescrWorkerWithHandlerP13CallDescrDatai + 116
27  libcoreclr.dylib                    0x0000000102f2f440 _Z32CallDescrWorkerReflectionWrapperP13CallDescrDataP5Frame + 112
28  libcoreclr.dylib                    0x0000000102f30028 _ZN19RuntimeMethodHandle12InvokeMethodEP6ObjectP4SpanIS1_EP15SignatureNativebb + 2320
29  ???                                 0x000000028050efb0 0x0 + 10742722480
30  ???                                 0x0000000283bac72c 0x0 + 10799990572
31  ???                                 0x0000000283b86438 0x0 + 10799834168
32  ???                                 0x0000000283b8640c 0x0 + 10799834124
33  ???                                 0x0000000283b8640c 0x0 + 10799834124
34  ???                                 0x0000000283b86370 0x0 + 10799833968
35  ???                                 0x0000000283b862bc 0x0 + 10799833788
36  ???                                 0x0000000283b85e2c 0x0 + 10799832620
37  ???                                 0x0000000283b81f9c 0x0 + 10799816604
38  ???                                 0x0000000283b7f478 0x0 + 10799805560
39  ???                                 0x0000000283b7f1b8 0x0 + 10799804856
40  ???                                 0x0000000283b87078 0x0 + 10799837304
41  ???                                 0x0000000283b86f6c 0x0 + 10799837036
42  ???                                 0x0000000283b86c04 0x0 + 10799836164
43  ???                                 0x0000000283b86438 0x0 + 10799834168
44  ???                                 0x0000000283b8640c 0x0 + 10799834124
45  ???                                 0x0000000283b8640c 0x0 + 10799834124
46  ???                                 0x0000000283b86370 0x0 + 10799833968
47  ???                                 0x0000000283b862bc 0x0 + 10799833788
48  ???                                 0x0000000283b85e2c 0x0 + 10799832620
49  ???                                 0x0000000283b81f9c 0x0 + 10799816604
50  ???                                 0x0000000283b7f478 0x0 + 10799805560
51  ???                                 0x0000000283b7f1b8 0x0 + 10799804856
52  ???                                 0x0000000283b87078 0x0 + 10799837304
53  ???                                 0x0000000283b86f6c 0x0 + 10799837036
54  ???                                 0x0000000283b86c04 0x0 + 10799836164
55  ???                                 0x0000000283b86438 0x0 + 10799834168
56  ???                                 0x0000000283b8640c 0x0 + 10799834124
57  ???                                 0x0000000283b8640c 0x0 + 10799834124
58  ???                                 0x0000000283b8640c 0x0 + 10799834124
59  ???                                 0x0000000283b8640c 0x0 + 10799834124
60  ???                                 0x0000000283b8640c 0x0 + 10799834124
61  ???                                 0x0000000283b86370 0x0 + 10799833968
62  ???                                 0x0000000283b862bc 0x0 + 10799833788
63  ???                                 0x0000000283b85e2c 0x0 + 10799832620
64  ???                                 0x0000000283b81f9c 0x0 + 10799816604
65  ???                                 0x0000000283b7f478 0x0 + 10799805560
66  ???                                 0x0000000283b7f1b8 0x0 + 10799804856
67  ???                                 0x0000000283b87078 0x0 + 10799837304
68  ???                                 0x0000000283b86f6c 0x0 + 10799837036
69  ???                                 0x0000000283b86c04 0x0 + 10799836164
70  ???                                 0x0000000283b86438 0x0 + 10799834168
71  ???                                 0x0000000283b8640c 0x0 + 10799834124
72  ???                                 0x0000000283b8640c 0x0 + 10799834124
73  ???                                 0x0000000283b8640c 0x0 + 10799834124
74  ???                                 0x0000000283b8640c 0x0 + 10799834124
75  ???                                 0x0000000283b8640c 0x0 + 10799834124
76  ???                                 0x0000000283b86370 0x0 + 10799833968
77  ???                                 0x0000000283b862bc 0x0 + 10799833788
78  ???                                 0x0000000283b85e2c 0x0 + 10799832620
79  ???                                 0x0000000283b81f9c 0x0 + 10799816604
80  ???                                 0x0000000283b7f478 0x0 + 10799805560
81  ???                                 0x0000000283b7f1b8 0x0 + 10799804856
82  ???                                 0x0000000283b87078 0x0 + 10799837304
83  ???                                 0x0000000283b86f6c 0x0 + 10799837036
84  ???                                 0x0000000283b86c04 0x0 + 10799836164
85  ???                                 0x0000000283b86438 0x0 + 10799834168
86  ???                                 0x0000000283b8640c 0x0 + 10799834124
87  ???                                 0x0000000283b8640c 0x0 + 10799834124
88  ???                                 0x0000000283b8640c 0x0 + 10799834124
89  ???                                 0x0000000283b8640c 0x0 + 10799834124
90  ???                                 0x0000000283b8640c 0x0 + 10799834124
91  ???                                 0x0000000283b8640c 0x0 + 10799834124
92  ???                                 0x0000000283b8640c 0x0 + 10799834124
93  ???                                 0x0000000283b86370 0x0 + 10799833968
94  ???                                 0x0000000283b862bc 0x0 + 10799833788
95  ???                                 0x0000000283b85e2c 0x0 + 10799832620
96  ???                                 0x0000000283b81f9c 0x0 + 10799816604
97  ???                                 0x0000000283b7f478 0x0 + 10799805560
98  ???                                 0x0000000283b7f1b8 0x0 + 10799804856
99  ???                                 0x00000002839a98a0 0x0 + 10797881504
100 ???                                 0x0000000281cecc1c 0x0 + 10767748124
101 ???                                 0x00000002817ca9b0 0x0 + 10762365360
102 libcoreclr.dylib                    0x0000000103012408 CallDescrWorkerInternal + 132
103 libcoreclr.dylib                    0x0000000102e83a98 _ZN18MethodDescCallSite16CallTargetWorkerEPKmPmi + 852
104 libcoreclr.dylib                    0x0000000102d7c578 _Z7RunMainP10MethodDescsPiPP8PtrArray + 640
105 libcoreclr.dylib                    0x0000000102d7c87c _ZN8Assembly17ExecuteMainMethodEPP8PtrArrayi + 380
106 libcoreclr.dylib                    0x0000000102daac78 _ZN8CorHost215ExecuteAssemblyEjPKDsiPS1_Pj + 472
107 libcoreclr.dylib                    0x0000000102d67534 coreclr_execute_assembly + 192
108 libhostpolicy.dylib                 0x000000010234a38c _Z19run_app_for_contextRK20hostpolicy_context_tiPPKc + 1072
109 libhostpolicy.dylib                 0x000000010234b0f0 corehost_main + 240
110 libhostfxr.dylib                    0x000000010227a898 _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 + 1172
111 libhostfxr.dylib                    0x0000000102279b18 _ZN10fx_muxer_t7executeENSt3__112basic_stringIcNS0_11char_traitsIcEENS0_9allocatorIcEEEEiPPKcRK19host_startup_info_tPciPi + 860
112 libhostfxr.dylib                    0x00000001022766bc hostfxr_main_startupinfo + 128
113 osu!                                0x00000001021f1418 _Z9exe_startiPPKc + 1540
114 osu!                                0x00000001021f1610 main + 160
115 dyld                                0x000000018d4190e0 start + 2360
!!! IMPORTANT: Please report this at https://github.com/realm/realm-core/issues/new/choose
@peppy
Copy link
Member

peppy commented Dec 20, 2023

Do you have a copy of the database before corruption? It sounds like the file copy didn't complete correctly.

@peppy peppy added the realm deals with local realm database label Dec 20, 2023
@ILW8
Copy link
Contributor Author

ILW8 commented Dec 20, 2023

Yes, here are the files before and after:
client_realm_files.zip

@peppy
Copy link
Member

peppy commented Dec 20, 2023

Did this issue arise when using the in-game change folder location? Could you try a second time if so and see if the same thing happens?

Could you also try a manual copy of the file while osu! is running and see if the same thing happens or not?

@peppy peppy self-assigned this Dec 20, 2023
@ILW8
Copy link
Contributor Author

ILW8 commented Dec 20, 2023

Yes this happened after using the in-game change folder button.
A manual copy of the game data directory while the game is still running then using the in-game button to change location works fine and does not cause the crash to happen.

I'm not sure what you mean by trying a second time. Do you mean attempting to move data folder from local to exFAT volume again after deleting the corrupt folder from the exFAT volume first? In which case this crash happens every time.

@peppy
Copy link
Member

peppy commented Dec 20, 2023

Right, so this is 100% reproducible every time you attempt to change folder in-game? That's very super crazy odd. I'll see if I can reproduce locally.

@ILW8
Copy link
Contributor Author

ILW8 commented Dec 20, 2023

Yes, reproducible every time given the database has at least a few maps in it; I tried reproducing it after deleting both source and destination directories and that didn't cause the crash.

I've attached a video of the steps for a minimal reproducible example

2023-12-20_06-40-22.mp4.reenc.mp4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
realm deals with local realm database
Projects
None yet
Development

No branches or pull requests

2 participants