emqx / CocoaMQTT

MQTT 5.0 client library for iOS and macOS written in Swift
https://www.emqx.com/en
Other
1.59k stars 418 forks source link

Crashed: com.apple.root.default-qos.overcommit - CocoaMQTTDeliver.redeliver() #418

Closed HimaParmar closed 2 years ago

HimaParmar commented 2 years ago

Crashed: com.apple.root.default-qos.overcommit SIGTRAP 0x0000000101c9e494

I am observing frequent crashes with following crash-logs:

0 <compiler-generated> - Line 2227716
CocoaMQTTDeliver.redeliver() + 2227716
1 <compiler-generated> - Line 2228636
partial apply for closure #2 in CocoaMQTTDeliver.deliver(_:) + 2228636
2 <compiler-generated> - Line 2248780
closure #1 in closure #1 in CocoaMQTTTimer.timer.getter + 2248780
3 <compiler-generated> - Line 4297710204
thunk for @escaping @callee_guaranteed () -> () + 4297710204
4 libdispatch.dylib _dispatch_client_callout + 20
5 libdispatch.dylib _dispatch_continuation_pop + 504
6 libdispatch.dylib _dispatch_source_invoke + 1356
7 libdispatch.dylib _dispatch_root_queue_drain + 396
8 libdispatch.dylib _dispatch_worker_thread2 + 164
9 libsystem_pthread.dylib _pthread_wqthread + 228
10 libsystem_pthread.dylib start_wqthread + 8

We don't have exact steps to reproduce this issue right-now but affecting so many live app users.

Here are some additional details we have from crashlytics logs: Device Model:iPhone XS Orientation: Portrait RAM free: 252.78 MB Disk free: 3.72 GB Operating System Version:15.1.0 Orientation: Portrait Jailbroken:No

leeway1208 commented 2 years ago

hi @HimaParmar Which version of CocoaMQTT do you use? I will check it.

Also, could you share the crash report file so that we can help you symbolicate the console output and get more insights of the issue? You can find the steps for getting the crash report from https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/acquiring_crash_reports_and_diagnostic_logs.

Thanks

HimaParmar commented 2 years ago

version we are using right now in our project: 1.2.5 - already thinking to move to latest version, will that benefit us? attaching file I could get for crash CrashReport-MQTT.zip .

leeway1208 commented 2 years ago

hi @HimaParmar If you use MQTT3.1.1. We highly recommend you to use tag(1.3.0-rc.2).Because version above 2.0.0 is under beta testing. If you still have the same issue, please let us know. We will fix it.

HimaParmar commented 2 years ago

@leeway1208 can you tell me how I should add pod for latest version? i.e if I use just pod 'CocoaMQTT' , then it is installing 1.2.5 (version in podlock ) file. should I write something like this? pod 'CocoaMQTT', '1.3.0-rc.2'

leeway1208 commented 2 years ago

hi @HimaParmar try this

platform :ios,'10.2'

target 'yourProject' do
use_frameworks!
pod 'CocoaMQTT', '~> 1.3.0-rc.2'

end
HimaParmar commented 2 years ago

@leeway1208 thank you for your support, we are updating pod to suggested version for our next big release, it would be great if issue gets resolved or else I will re-open a ticket with crash-logs here again.