{ "id": "104444", "key": "AC-1779", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "12217", "key": "AC", "name": "Appcelerator - INBOX", "projectCategory": { "id": "10000", "description": "", "name": "Customer Service" } }, "resolution": { "id": "7", "description": "", "name": "Invalid" }, "resolutiondate": "2013-04-03T22:41:57.000+0000", "created": "2012-11-06T08:58:22.000+0000", "labels": [ "android" ], "versions": [], "issuelinks": [], "assignee": { "name": "mpmiranda", "key": "mpmiranda", "displayName": "Mauro Parra-Miranda", "active": true, "timeZone": "America/Mexico_City" }, "updated": "2016-03-08T07:40: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": "14548", "name": "Titanium SDK & CLI", "description": "Please enter tickets related to the MobileSDK here." } ], "description": "U/I objects that changed visibility after displayed (or in \"postlayout\" event) are not collected with GC.\r\nI attached test code and pictures (object hisotgram in heap analyzed with MAT). \r\n*histogram filterd with \"^ti.*ui.*\".\r\n\r\n1) Start test code and open DDMS, select test code process and click \"Update heap\" button.\r\n2) In Heap tab, click \"Cause GC\" button a few times.\r\n3) Click \"Dump HPROF file\" button, and get object hisotgram with MAT. <- Objects#0 column\r\n4) Click menu button in Android emulator, do \"update!\" command 5 times.\r\n5) In Heap tab, click \"Cause GC\" button a few times.\r\n6) Click \"Dump HPROF file\" button, and get object hisotgram with MAT. <- Objects#1 column\r\n7) Click menu button in Android emulator, do \"update!\" command 5 times.\r\n8) Repeat 10 times above (to Object#9).\r\n\r\npic01.png - attached test code's result.\r\npic02.png - attached test code + \"commented out part\" in \"postlayout\" event handler.\r\n\r\nIn addition, visibility changed with table's click handler, also increased memory allocation.\r\n", "attachment": [ { "id": "33221", "filename": "pic01.png", "author": { "name": "tetsuya", "key": "tetsuya", "displayName": "TETSUYA", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-11-06T08:58:22.000+0000", "size": 327372, "mimeType": "image/png" }, { "id": "33222", "filename": "pic02.png", "author": { "name": "tetsuya", "key": "tetsuya", "displayName": "TETSUYA", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-11-06T08:58:22.000+0000", "size": 331173, "mimeType": "image/png" }, { "id": "33220", "filename": "rowleak_test.js", "author": { "name": "tetsuya", "key": "tetsuya", "displayName": "TETSUYA", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-11-06T08:58:22.000+0000", "size": 2316, "mimeType": "text/javascript" } ], "flagged": false, "summary": "U/I objects not collected with GC. (memory leak?)", "creator": { "name": "tetsuya", "key": "tetsuya", "displayName": "TETSUYA", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "tetsuya", "key": "tetsuya", "displayName": "TETSUYA", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Mac OSX 10.7.5, Titanium SDK 2.1.3/2.1.4RC (2.1.4.v20121030173408)\r\nAndroid 2.2", "comment": { "comments": [ { "id": "245580", "author": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "body": "JavaScript's garbage collection won't be activated unless the reference count reaches zero... so you actually need to be removing objects or setting them to null, not just changing the visibility.", "updateAuthor": { "name": "dsefton", "key": "dsefton", "displayName": "Daniel Sefton", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-04-03T22:41:57.000+0000", "updated": "2013-04-03T22:41:57.000+0000" }, { "id": "280946", "author": { "name": "mpmiranda", "key": "mpmiranda", "displayName": "Mauro Parra-Miranda", "active": true, "timeZone": "America/Mexico_City" }, "body": "Invalid issue. ", "updateAuthor": { "name": "mpmiranda", "key": "mpmiranda", "displayName": "Mauro Parra-Miranda", "active": true, "timeZone": "America/Mexico_City" }, "created": "2013-11-24T22:18:17.000+0000", "updated": "2013-11-24T22:18:17.000+0000" } ], "maxResults": 2, "total": 2, "startAt": 0 } } }