{ "id": "86830", "key": "TIMOB-7774", "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": "12097", "description": "", "name": "Sprint 2012-05", "archived": true, "released": true, "releaseDate": "2012-03-11" }, { "id": "12593", "name": "Release 2.0.0", "archived": false, "released": true, "releaseDate": "2012-03-30" }, { "id": "13270", "description": "Release 1.8 Service Pack 3 (CI for 1_8_X)", "name": "Release 1.8.3", "archived": true, "released": false } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2012-03-28T16:56:43.000+0000", "created": "2012-02-22T13:50:23.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "qe-and021312", "regression", "release-note-2.0.0" ], "versions": [ { "id": "13070", "description": "Release 1.8 Service Pack 2", "name": "Release 1.8.2", "archived": true, "released": true, "releaseDate": "2012-02-29" } ], "issuelinks": [ { "id": "15414", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "outwardIssue": { "id": "86541", "key": "TIMOB-7676", "fields": { "summary": "Android: ImageViews cause app to unexpectedly crash", "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": "Critical", "id": "1" }, "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false } } } }, { "id": "15432", "type": { "id": "10003", "name": "Relates", "inward": "relates to", "outward": "relates to" }, "inwardIssue": { "id": "87067", "key": "TIMOB-7831", "fields": { "summary": "Android: Master/Detail Application Template: console logs JNI: DeleteGlobalRef(0xdebcce57) failed to find entry warnings", "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": "Critical", "id": "1" }, "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": "2012-04-02T20:02:34.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": "Steps to Reproduce:\r\n1. KS > Base UI > Views > Table Views > Table View (Layout 2)\r\n2. Dismiss the keyboard\r\n3. Scroll up and down and randomly click on different areas of the row\r\n\r\nActual:\r\nThe application eventually crashes\r\n\r\nExpected:\r\nShould not crash\r\n\r\nNote: Does not crash on Nexus S (2.3.6)", "attachment": [ { "id": "25859", "filename": "CrashStack.txt", "author": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-22T13:50:23.000+0000", "size": 8203, "mimeType": "text/plain" }, { "id": "25904", "filename": "CrashStack2.txt", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2012-02-24T15:08:07.000+0000", "size": 7977, "mimeType": "text/plain" } ], "flagged": false, "summary": "Android: TableView - v8 only - 4.0 ICS - Scrolling through tableview and clicking on the rows eventually crashes the application", "creator": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "subtasks": [], "reporter": { "name": "nhuynh", "key": "nhuynh", "displayName": "Natalie Huynh", "active": true, "timeZone": "America/Los_Angeles" }, "environment": "Studio: 1.0.9.201202131024\r\nSDK: 1.8.2.v201202211114636\r\nDevice: Nexus Galaxy 4.0.2\r\n", "comment": { "comments": [ { "id": "184051", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Unable to reproduce on emulator, HTC Desire (2.2), Xoom (4.0.3), and HTC EVO 4g (2.3.3).\r\nThis may only occur on the Galaxy Nexus (4.0.2).", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-23T08:48:43.000+0000", "updated": "2012-02-23T08:48:43.000+0000" }, { "id": "184228", "author": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "body": "I got a similar crash on:\r\n\r\nSDK build: 1.8.2.v20120223174636\r\nRuntime: V8\r\nDevice: LG Slate (3.1) \r\n\r\nSteps to reproduce:\r\n1. Go to KS > Base UI > Vertical Layout > Table View\r\n2. Quickly tap on a block of text\r\n\r\nSee CrashStack2.txt", "updateAuthor": { "name": "wluu", "key": "wluu", "displayName": "Wilson Luu", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2012-02-24T15:07:52.000+0000", "updated": "2012-02-24T15:07:52.000+0000" }, { "id": "184357", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "The fix for TIMOB-7676 appears to be causing this regression.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-27T10:28:06.000+0000", "updated": "2012-02-27T10:28:06.000+0000" }, { "id": "184388", "author": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "body": "So you could re-create? I've been pounding away on my G-Slate like crazy in this KS test, up and down, up and down, really fast, and clicking all over the place until there aren't any rows left to click on. Never crashes. 1_8_X, specifically 59b3a9006 (last commit = Feb 23rd).", "updateAuthor": { "name": "billdawson", "key": "billdawson", "displayName": "Bill Dawson", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-02-27T13:05:52.000+0000", "updated": "2012-02-27T13:05:52.000+0000" }, { "id": "184468", "author": { "name": "jicks83", "key": "jicks83", "displayName": "Jick Steen", "active": true, "timeZone": "Europe/Berlin" }, "body": "I'm also able to reproduce it with \"1.8.2.v20120221114636\" on a Galaxy Nexus.", "updateAuthor": { "name": "jicks83", "key": "jicks83", "displayName": "Jick Steen", "active": true, "timeZone": "Europe/Berlin" }, "created": "2012-02-28T02:49:32.000+0000", "updated": "2012-02-28T02:49:32.000+0000" }, { "id": "184749", "author": { "name": "mkrug", "key": "mkrug", "displayName": "Markus Krug", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Can you guess how long it approx. takes to fix this issue? ", "updateAuthor": { "name": "mkrug", "key": "mkrug", "displayName": "Markus Krug", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-02-29T23:22:52.000+0000", "updated": "2012-02-29T23:22:52.000+0000" }, { "id": "184766", "author": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "body": "We will have this fix available in next few days.", "updateAuthor": { "name": "ngupta", "key": "ngupta", "displayName": "Neeraj Gupta", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-03-01T09:29:52.000+0000", "updated": "2012-03-01T09:29:52.000+0000" }, { "id": "184865", "author": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "body": "[Pull request #1549|https://github.com/appcelerator/titanium_mobile/pull/1549] up for review.", "updateAuthor": { "name": "joshroesslein", "key": "joshroesslein", "displayName": "Josh Roesslein", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-03-01T22:56:27.000+0000", "updated": "2012-03-01T22:56:27.000+0000" }, { "id": "185343", "author": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "body": "I saw another instance of this when testing Ping's fix for TIMOB-7008 (the first test case in this issue).\r\n\r\nIt only happened to me a handful of times, so it doesn't seem as easy to replicate, but long-pressing the red row in this test will sometimes cause this ConcurrentModificationException:\r\n\r\n{code}\r\nE/TiApplication( 2074): (main) [9593,9593] Sending event: exception on thread: main msg:java.util.ConcurrentModificationException; Titanium 2.0.0,2012/03/05 17:42,ef24e78\r\nE/TiApplication( 2074): java.util.ConcurrentModificationException\r\nE/TiApplication( 2074): at java.util.HashMap$HashIterator.nextEntry(HashMap.java:792)\r\nE/TiApplication( 2074): at java.util.HashMap$EntryIterator.next(HashMap.java:829)\r\nE/TiApplication( 2074): at java.util.HashMap$EntryIterator.next(HashMap.java:827)\r\nE/TiApplication( 2074): at java.util.HashMap.constructorPutAll(HashMap.java:205)\r\nE/TiApplication( 2074): at java.util.HashMap.(HashMap.java:196)\r\nE/TiApplication( 2074): at org.appcelerator.kroll.KrollDict.(KrollDict.java:60)\r\nE/TiApplication( 2074): at ti.modules.titanium.ui.TableViewRowProxy.fireEvent(TableViewRowProxy.java:183)\r\nE/TiApplication( 2074): at org.appcelerator.titanium.proxy.TiViewProxy.fireEvent(TiViewProxy.java:735)\r\nE/TiApplication( 2074): at org.appcelerator.titanium.view.TiUIView$5.onLongClick(TiUIView.java:1075)\r\nE/TiApplication( 2074): at android.view.View.performLongClick(View.java:3498)\r\nE/TiApplication( 2074): at android.view.View$CheckForLongPress.run(View.java:13961)\r\nE/TiApplication( 2074): at android.os.Handler.handleCallback(Handler.java:605)\r\nE/TiApplication( 2074): at android.os.Handler.dispatchMessage(Handler.java:92)\r\nE/TiApplication( 2074): at android.os.Looper.loop(Looper.java:137)\r\nE/TiApplication( 2074): at android.app.ActivityThread.main(ActivityThread.java:4340)\r\nE/TiApplication( 2074): at java.lang.reflect.Method.invokeNative(Native Method)\r\nE/TiApplication( 2074): at java.lang.reflect.Method.invoke(Method.java:511)\r\nE/TiApplication( 2074): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)\r\nE/TiApplication( 2074): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)\r\nE/TiApplication( 2074): at dalvik.system.NativeStart.main(Native Method)\r\n{code}\r\n\r\nThe culprit seems to be that we're not copying the KrollDict \r\nfor bubbled events, which rarely causes two threads to iterate the KrollDict at the same time:\r\nhttps://github.com/pingwang2011/titanium_mobile/blob/af9d729e167b8ee223ad021bcd7510947c551e79/android/titanium/src/java/org/appcelerator/titanium/proxy/TiViewProxy.java#L735\r\n", "updateAuthor": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-03-07T08:45:34.000+0000", "updated": "2012-03-07T08:45:57.000+0000" }, { "id": "185536", "author": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "updateAuthor": { "name": "mculpepper", "key": "mculpepper", "displayName": "Marshall Culpepper", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2012-03-08T09:40:59.000+0000", "updated": "2012-03-08T09:40:59.000+0000" } ], "maxResults": 12, "total": 12, "startAt": 0 } } }