Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-6074] Android: V8 - Release Java proxy object references when running on emulator device.

GitHub Issuen/a
TypeBug
PriorityHigh
StatusClosed
ResolutionFixed
Resolution Date2011-11-09T14:04:58.000+0000
Affected Version/sRelease 1.8.0.1
Fix Version/sRelease 1.8.0.1
ComponentsAndroid
Labelsbranch-v8
ReporterJosh Roesslein
AssigneeJosh Roesslein
Created2011-11-08T10:49:50.000+0000
Updated2014-06-19T12:44:18.000+0000

Description

+Expected Behavior+ Running applications on emulator should not crash from ReferenceTableOverflow errors. +Actual Behavior+ Certain conditions cause the application to run out of references when running on the emulator. +Test case+ Running the Drillbit Buffer or Database suites causes a ReferenceTableOverflow error and crash. +Community Discussion+ N/A

Comments

  1. Josh Roesslein 2011-11-08

    Sent [pull request #648](https://github.com/appcelerator/titanium_mobile/pull/648).
  2. Josh Roesslein 2011-11-08

    Here is a couple test cases which should cause the bug:
       var buffers = [];
       for (var i = 0; i < 1000; i++) {
       	var b = Ti.createBuffer({value:"Hello!"});
       	b.clear();
       	buffers.push(b);
       }
       
       var db = Ti.Database.open("test");
       db.execute("drop table if exists Test");
       db.execute("create table if not exists Test(row text)");
       
       for (var i = 0; i < 1000; i++) {
       	db.execute("insert into Test(row) values(?)", "My TestRow");
       }
       
       var rs = db.execute("select * from Test");
       
    These two should be tested separately. After the fix is applied neither should crash the app.
  3. Natalie Huynh 2011-12-09

    Tested with 1.8.0.1.v20111209011840 on Nexus One (2.2.2) - v8 Droid (2.2) - rhino Emulator (2.2) - v8

JSON Source