{ "id": "97807", "key": "TIMOB-10093", "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": "13870", "description": "", "name": "Sprint 2012-16 API", "archived": true, "released": true, "releaseDate": "2012-08-13" }, { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-08-14T16:01:18.000+0000", "created": "2012-07-23T13:19:17.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "core", "module_xml", "qe-review", "qe-testadded" ], "versions": [ { "id": "13505", "description": "Release 3.0.0", "name": "Release 3.0.0", "archived": true, "released": true, "releaseDate": "2012-12-14" } ], "issuelinks": [ { "id": "31568", "type": { "id": "10122", "name": "Gantt: start-finish", "inward": "is triggered by", "outward": "is triggering" }, "outwardIssue": { "id": "111462", "key": "TIMOB-13138", "fields": { "summary": "Android: Ti.Filesystem.getFile().write() segfaults for large images loaded remotely", "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" } }, "priority": { "name": "Medium", "id": "3" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "19100", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "97652", "key": "TIMOB-10040", "fields": { "summary": "Android: XML: v8- Application crashes with out of memory error.", "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" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "19830", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "99019", "key": "MOD-851", "fields": { "summary": "OData : In the SAPFlight example on Android, pressing toggling between paging and load all causes a runtime error", "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" } }, "priority": { "name": "High", "id": "2" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } } ], "assignee": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "updated": "2013-09-05T17:37:39.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": "10202", "name": "Android", "description": "Android Platform" } ], "description": "It appears the HTTPClient never releases the function callbacks for on*** events (ex: onload).\r\nThis can lead to memory referenced by variables in this function's scope getting leaked.\r\n\r\nCreate an application with the attached app.js script.\r\n\r\n1. Run the application and monitor with DDMS.\r\n2. Click \"Send XHR Request\".\r\n3. Repeat step #2 and see if the heap size continues to grow out of control.\r\n\r\nExpected: Memory referenced by the function callback should eventually get collected.\r\nActual: Memory is never collected causing the heap to grow indefinitely.", "attachment": [ { "id": "29962", "filename": "app.js", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-23T13:19:30.000+0000", "size": 868, "mimeType": "application/x-javascript" } ], "flagged": false, "summary": "Android: HTTPClient leaks function callbacks (ex: onload, ondatastream)", "creator": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Runtime: V8", "comment": { "comments": [ { "id": "208937", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Another cause of the memory leak seen in TIMOB-10040.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-07-23T13:20:02.000+0000", "updated": "2012-07-23T13:20:02.000+0000" }, { "id": "213076", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Created [PR #2687|https://github.com/appcelerator/titanium_mobile/pull/2687] to resolve issue.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-07T00:48:55.000+0000", "updated": "2012-08-07T00:48:55.000+0000" }, { "id": "214470", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Created [PR #2746|https://github.com/appcelerator/titanium_mobile/pull/2746] to back port fix into 2_1_X.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-08-14T16:00:16.000+0000", "updated": "2012-08-14T16:00:16.000+0000" }, { "id": "218147", "author": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The referenced memory gets collected.\r\nVerified on:\r\nTitanium Studio: 2.1.3.201209071738\r\nTitanium SDK: 2.2.0.v20120907162025\r\nAndroid Emulator v2.3\r\nRuntime: v8", "updateAuthor": { "name": "ssekhri", "key": "ssekhri", "displayName": "Satyam Sekhri", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-09-10T05:25:13.000+0000", "updated": "2012-09-10T05:25:13.000+0000" }, { "id": "227115", "author": { "name": "iamyellow", "key": "iamyellow", "displayName": "jordi domenech", "active": true, "timeZone": "Europe/Berlin" }, "body": "In TiHTTPClient.java, method setReadyState, you're calling:\r\n\r\ndispatchCallback(\"onreadystatechanged\", null);\r\n\r\nbut is \"onreadystatechange\" <-- notice there's no -d ", "updateAuthor": { "name": "iamyellow", "key": "iamyellow", "displayName": "jordi domenech", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-11-13T10:12:59.000+0000", "updated": "2012-11-13T10:12:59.000+0000" }, { "id": "227164", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Jordi, you saved the day! Thanks for catching this regression and typo.\nI have opened TIMOB-11751 to resolve this bug.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-11-13T18:58:45.000+0000", "updated": "2012-11-13T18:58:45.000+0000" } ], "maxResults": 6, "total": 6, "startAt": 0 } } }