Closed konstantinbe closed 10 months ago
Hi @konstantinbe and thank you very much for the detailed information. Unfortunately, I was unable to open your project with XCode 14.3.1. It is possible that the file is broken. Could you please fix it or maybe rebuild the project, so I can test it on my side?
@MikhailSuendukov thank you for trying it out. There are two things at play here:
git lfs
, you have to call git lfs install
separately. Here is what brew
says: If I leave this part out, I get exactly the error as you previously posted.
CrashReporterFreeze
is apparently git-lfs-ed. The migration script didn't work as I expected it to. Only the large binary files (DittoObjC
) should be lfs-ed.I've fixed the repo, please try again and make sure to run git lfs install
first. Please let me know if you still have problems and I'll be happy to assist further.
It's very strange, but I still get this error. I use these commands to clone your repository:
git lfs install
git clone https://github.com/getditto/CrashReporterFreeze.git
After that I try to open the project file and the same error appears.
Strange, sorry for the trouble. I've uploaded a non-LFS version of the repo to S3:
https://konstantinbe.s3-eu-central-1.amazonaws.com/Shared/CrashReporterFreezeNoLFS.zip
Could you try that?
Hello @konstantinbe, I was able to reproduce your issue. Investigating, will update this thread once get results.
Thank you for taking a look!
@konstantinbe I've spent a lot of time on digging into this issue and it's really hard to identify a root cause. It mainly happens due to integration of DittoObjC library which is built with a particular Rust version. Probably you should ask about your case in the Rust repository as well. For now, this issue has low priority and I'm closing it as won't fix.
Also, we always welcome any contributions.
@AnatolyPristensky thank you for taking the time to dig into this. 💚 We'll try to raise this with the Rust folks and take it from there.
Description
We are experiencing hangs when hitting a crash in an iOS app, if used together with our Ditto SDK. The core of our SDK is built with Rust. The problem surfaces when we build our Core with Rust starting with version >= 1.65 and only on arm64 devices (Mac & iOS).
To demonstrate the issue, we’ve prepared a minimal Mac app: CrashReporterFreeze. Complete the following steps to reproduce the unresponsive behavior:
Repro Steps
Trigger a crash within an app by doing the following steps:
PLCrashReporter
.Although most of the time the crash processing eventually completes, sometimes it seems to hang indefinitely.
If you want to test the exact same version of the Ditto SDK built with different versions of Rust, repeat the previous steps on any of the following commits in the CrashReporterFreeze repo:
Debugging
While there may be alternative approaches to debugging the issue, the following approach is the method that has proven most effective for us.
In this approach, we combine the use of the Console.app and manually attach the Xcode debugger following the crash by doing the following:
Details
master
of the PLCrashReporter repo.