Skip to content

Saving PFObject - PFMD5HashFromData Crash #146

@rudywen

Description

@rudywen

My app intermittently gets into a cyclic reference state when the saving an object calls [PFObject isDirty]. This usually happens when we try to save objects after the app detects a network connection is avaliable (i.e. turn off airplane mode). We're using Parse 1.8.2

https://groups.google.com/forum/#!searchin/parse-developers/isDirty$20crash/parse-developers/lzhRkGnvrx0/uVkPvDRf_DQJ

Crashed: com.apple.root.default-qos
EXC_BAD_ACCESS KERN_PROTECTION_FAILURE at 0x00000001033bbfb8

Thread : Crashed: com.apple.root.default-qos
0 libsystem_c.dylib 0x00000001965fdd24 __vfprintf + 36
1 libsystem_c.dylib 0x000000019661b680 __v2printf + 588
2 libsystem_c.dylib 0x000000019661b680 __v2printf + 588
3 libsystem_c.dylib 0x00000001965ae20c _vsnprintf + 304
4 libsystem_c.dylib 0x00000001965aec58 snprintf_l + 24
5 CoreFoundation 0x000000018469f01c __CFStringAppendFormatCore + 11584
6 CoreFoundation 0x000000018469c2a4 _CFStringCreateWithFormatAndArgumentsAux2 + 248
7 Foundation 0x00000001854e2448 -[NSPlaceholderString initWithFormat:locale:arguments:] + 172
8 Foundation 0x00000001854e2308 +[NSString stringWithFormat:] + 76
9 flare 0x000000010014a25c PFMD5HashFromData (PFHash.m:59)
10 flare 0x000000010014ec54 -PFJSONCacheItem initWithObject:
11 flare 0x000000010014edd4 +PFJSONCacheItem cacheFromObject:
12 flare 0x000000010015af70 -PFObject(Private) checkForChangesToMutableContainer:forKey:
13 flare 0x000000010015b28c __55-[PFObject(Private) checkForChangesToMutableContainers]_block_invoke (PFObject.m:805)
14 CoreFoundation 0x00000001846287a4 __65-[__NSDictionaryI enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 88
15 CoreFoundation 0x0000000184615cec -[__NSDictionaryI enumerateKeysAndObjectsWithOptions:usingBlock:] + 240
16 flare 0x000000010015b174 -PFObject(Private) checkForChangesToMutableContainers
17 flare 0x000000010015a8d8 -PFObject(Private) isDirty:
18 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
19 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
20 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
21 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
22 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
23 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
24 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
25 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
26 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
27 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
28 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
29 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
30 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
31 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
32 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
33 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
34 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
35 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
36 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
37 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
38 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
39 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
40 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
41 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
42 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
43 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
44 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
45 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
46 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
47 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
48 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
49 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
50 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)
51 CoreFoundation 0x00000001845bdd40 __65-[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:]_block_invoke + 124
52 CoreFoundation 0x00000001845bdc20 -[__NSDictionaryM enumerateKeysAndObjectsWithOptions:usingBlock:] + 204
53 flare 0x000000010015a9e8 -PFObject(Private) isDirty:
54 flare 0x000000010015aa9c __29-[PFObject(Private) isDirty:]_block_invoke (PFObject.m:740)

Metadata

Metadata

Assignees

No one assigned

    Labels

    type:bugImpaired feature or lacking behavior that is likely assumed

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions