{ "id": "63640", "key": "TIMOB-3008", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [ { "id": "11241", "name": "Release 1.6.0 M08", "archived": true, "released": true, "releaseDate": "2011-02-07" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2011-04-17T02:00:40.000+0000", "created": "2011-04-15T03:34:39.000+0000", "priority": { "name": "Medium", "id": "3" }, "labels": [ "deadlock", "ios", "network", "regression", "release-1.6.0", "reported-1.6.0" ], "versions": [], "issuelinks": [], "assignee": { "name": "blainhamon", "key": "blainhamon", "displayName": "Blain Hamon", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2011-04-17T02:00:40.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10206", "name": "iOS", "description": "iOS Platform" } ], "description": "{html}

Seen on a 4gt ipod running 4.1 only, not repro on same device,\nnor on others checked. logging in case crash log helps dev.

\n

ipod touch 4GT (4.1) [INFO] Titanium SDK version: 1.6.0\n(01/31/11 08:03 f9036ef).

\n

1.Platform > network
\n2.Background app
\n3.settings > airplane mode turn it on
\n4.home button, tap app icon

\n

resultds: deadlock occurred (as per the crash log, attached if\nLH lets me today).

{html}", "attachment": [], "flagged": false, "summary": "iOS: saw deadlock while toggling network - intermittent and not repro", "creator": { "name": "thomashuelbert", "key": "thomashuelbert", "displayName": "Thomas Huelbert", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "thomashuelbert", "key": "thomashuelbert", "displayName": "Thomas Huelbert", "active": true, "timeZone": "America/Los_Angeles" }, "environment": null, "comment": { "comments": [ { "id": "129861", "author": { "name": "thomashuelbert", "key": "thomashuelbert", "displayName": "Thomas Huelbert", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

okay no attachments today either... sigh, emailed to Blain and\nStephen

{html}", "updateAuthor": { "name": "thomashuelbert", "key": "thomashuelbert", "displayName": "Thomas Huelbert", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:34:40.000+0000", "updated": "2011-04-15T03:34:40.000+0000" }, { "id": "129862", "author": { "name": "jhaynie", "key": "jhaynie", "displayName": "Jeff Haynie", "active": false, "timeZone": "America/Los_Angeles" }, "body": "{html}

(from [09db865ff9e57aa9a24854919b9670aa645923c4])\n[#3008 state:fixed-in-qa] Try to accquire a lock\ninstead of outright claiming it. We need to be much more careful\nabout that with analytics in resume/suspend operations. \nhttps://github.com/appcelerator/titanium_mobile/commit/09db865ff9e5...

{html}", "updateAuthor": { "name": "jhaynie", "key": "jhaynie", "displayName": "Jeff Haynie", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:34:40.000+0000", "updated": "2011-04-15T03:34:40.000+0000" }, { "id": "129863", "author": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

REPO STEPS (based on crash log):

\n

This one is going to be very tricky to duplicate. What happened\nwas that while one of the suspend/shutdown/resume analytics events\nwas occurring, a SECOND analytics event was then sent in the middle\nof the analytics request. So, this has to be timed just right:

\n\n

This time period is probably measured in tenths (or less) of a\nsecond. One possible way to do this is to force an analytics event\non the 'resume' notification sent by the app while on a slow\nnetwork.

{html}", "updateAuthor": { "name": "stephentramer", "key": "stephentramer", "displayName": "Stephen Tramer", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:34:40.000+0000", "updated": "2011-04-15T03:34:40.000+0000" }, { "id": "129864", "author": { "name": "thomashuelbert", "key": "thomashuelbert", "displayName": "Thomas Huelbert", "active": true, "timeZone": "America/Los_Angeles" }, "body": "{html}

not seeing it, closing against [INFO] Titanium SDK version: 1.6.0 (02/02/11\n07:59 a632082) need a better test case at some point.

{html}", "updateAuthor": { "name": "thomashuelbert", "key": "thomashuelbert", "displayName": "Thomas Huelbert", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2011-04-15T03:34:41.000+0000", "updated": "2011-04-15T03:34:41.000+0000" } ], "maxResults": 4, "total": 4, "startAt": 0 } } }