Closed ifabijanovic closed 2 years ago
hi @ifabijanovic , thanks for bringing it up. So you don't have this issue in v2.8.2
?
hi @ifabijanovic , from your crash log, it seems you have stored some Objective-C class type into the dictionary, is that the case? This will help us narrow down the issue.
hi @ifabijanovic , thanks for bringing it up. So you don't have this issue in
v2.8.2
?
I am not sure yet, we're rolling back the SDK version as a hot fix and I can report back afterwards. Since the issue started happening in the version of the app where we updated the SDK that is my prime suspect.
hi @ifabijanovic , from your crash log, it seems you have stored some Objective-C class type into the dictionary, is that the case? This will help us narrow down the issue.
It is possible, but if that is the case it seems this worked in v2.8.2
. I will add additional logging to try and pinpoint the offending type
I am unable to reproduce the crash by sending an ObjC instance as part of properties. Something like:
["foo": SomeObjcType()]
is caught by the above pruning code and not even sent to Mixpanel SDK. I could bypass the above pruning code by using a different key type:
[
"foo": [
1: SomeObjcType(),
SomeObjcType(): 2
]
]
But that didn't cause the crash either, it went into the "enforcing string on object" default case in JSONHandler
hi @ifabijanovic , yeah, it's super weird. Looking forward to your result on the old version. Do you use any super properties?
hi @ifabijanovic , 3.1.4 has been released and it has several fixes for race conditions. I have a good level of confidence this will address the crash. I will close this one and merge this ticket to #495. Feel free to update anything you've got to there.
Hello! We've recently updated the Mixpanel SDK from version
2.8.2
to3.1.2
and are encountering crashes as we started to roll out the new app version. There are two new crashes which I believe represent the same underlying issue.The first is very brief without much info:
The main thread for these crashes is shown in various different stages, which is expected since the crash happens in an async block. The second one does contain more info:
It looks as if the event properties contain a dictionary of dictionaries of... something? that crashes. I've checked our git logs and was unable to find any recently added events that would log such a structure. We additionally prune the properties before even calling
MixpanelInstance.track(event:properties:)
which should prevent any invalid values from making it to the SDK code:Can you provide any assistance? Is this a known issue already, maybe related to the new persistence layer?