Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    WARN:Log:Unexpected global binding found for ID isc_ResultSet_2 in SC::releaseID;

    I am getting the following development mode console warning when calling destroy on a subclass of com.smartgwt.client.widgets.Window. Is this anything to be concerned about?

    Thanks

    SmartClient Version: v9.1p_2014-06-04/Pro Deployment (built 2014-06-04)

    Code:
    22:53:30.379 [ERROR] [xxxxx] 22:53:30.373:XRP8:WARN:Log:Unexpected global binding found for ID isc_ResultSet_2 in SC::releaseID; unable to release it for use by a new SC JS object.
    
    com.smartgwt.client.core.JsObject$SGWT_WARN: 22:53:30.373:XRP8:WARN:Log:Unexpected global binding found for ID isc_ResultSet_2 in SC::releaseID; unable to release it for use by a new SC JS object.
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:105)
        at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
        at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
        at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
        at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
        at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:576)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:304)
        at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
        at com.smartgwt.client.util.SC.logWarn(SC.java)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
        at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
        at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
        at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
        at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
        at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:576)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:304)
        at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
        at com.smartgwt.client.util.SC.releaseID(SC.java)
        at com.smartgwt.client.util.IDManager.unregisterID(IDManager.java:151)
        at com.smartgwt.client.core.BaseClass.clearID(BaseClass.java:244)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
        at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
        at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
        at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
        at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
        at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:576)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:304)
        at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
        at com.smartgwt.client.core.BaseClass.destroy(BaseClass.java)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
        at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
        at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
        at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
        at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
        at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:576)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNativeVoid(ModuleSpace.java:304)
        at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107)
        at com.smartgwt.client.widgets.BaseWidget.destroy(BaseWidget.java)
        at com.xxxxx.xxxxx.client.component.form.XXXXX$13$1$1.handleResponse(XXXXX.java:483)
        at com.xxxxx.xxxxx.client.rpc.commands.AbstractClientRpc$2.execute(AbstractClientRpc.java:74)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
        at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
        at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
        at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:338)
        at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:219)
        at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:576)
        at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:284)
        at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91)
        at com.google.gwt.core.client.impl.Impl.apply(Impl.java)
        at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:347)
        at sun.reflect.GeneratedMethodAccessor40.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103)
        at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
        at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
        at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:293)
        at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:547)
        at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
        at java.lang.Thread.run(Thread.java:744)
    SmartClient Version: v9.1p_2014-06-04/Pro Deployment (built 2014-06-04)

    #2
    That's not expected behavior. Can you tell us how to reproduce it?

    Comment


      #3
      I will try to isolate and provide steps to reproduce; it currently isn't clear to me what exactly is causing this.

      Comment


        #4
        v9.1p_2014-06-11
        Testing with FF
        I'm getting the same warning in dev mode.
        Found it whilst tracking down what maybe a related issue.
        The warning seems to be raised when a fetchData callback calls getResultSet(). I think the ResultSet is getting bound to the callback

        Code:
        public class TestMem implements EntryPoint {
        	ListGrid grid;
        	DataSource ds;
        	int count;
        
        	@Override
        	public void onModuleLoad() {
        		
        		VLayout appLayout = new VLayout();
        		appLayout.setWidth100();
        		appLayout.setHeight100();
        
        		buildDataSource();
        		buildGrid("id");
        		grid.setDataSource(ds, grid.getAllFields());
        		
        		IButton btnLoad = new IButton("Load");
        		btnLoad.addClickHandler(new ClickHandler() {
        
        			@Override
        			public void onClick(ClickEvent event) {
        				showData();					
        			}
        		});
        		
        		appLayout.addMembers(btnLoad, grid);
        		
        		appLayout.draw();
        	}
        	
        	private void showData() {
        
        		count +=1;
        		
        		ListGridRecord[] cacheData =  new ListGridRecord[3];
        		cacheData[0] = new ListGridRecord();
        		cacheData[0].setAttribute("fld1", "val 1");
        		cacheData[0].setAttribute("fld2", 1 + (count * 10));
        		cacheData[0].setAttribute("fld3", new Date());
        		cacheData[1] = new ListGridRecord();
        		cacheData[1].setAttribute("fld1", "val 2");
        		cacheData[1].setAttribute("fld2", 2 + (count * 10));
        		cacheData[1].setAttribute("fld3", new Date());
        		cacheData[2] = new ListGridRecord();
        		cacheData[2].setAttribute("fld1", "val 3");
        		cacheData[2].setAttribute("fld2", 3 + (count * 10));
        		cacheData[2].setAttribute("fld3", new Date());
        
        		ds.setCacheData(cacheData);
        		grid.setData(new ListGridRecord[] {});  //force the fetchData to execute it's callback
        		grid.fetchData(null, new DSCallback() {
        			
        			@Override
        			public void execute(DSResponse dsResponse, Object data, DSRequest dsRequest) {
        				Record[] selectRecords = new Record[1];
        				selectRecords[0] = grid.getResultSet().first();
        				//this seems to bind the result set to the callback which is not getting released
        			}
        		});
        
        	}
        
        	private void buildGrid(String id) {
        		grid = new ListGrid();
        		grid.setID("listGrid_" + id);
        		grid.setAutoDraw(false);
        		grid.setShowAllRecords(true);
        		grid.setShowHeaderContextMenu(true);
        		grid.setSelectionType(SelectionStyle.SINGLE);
        		grid.setCanSort(true);
        		grid.setUseAllDataSourceFields(false);
        		grid.setWidth100();
        		grid.setHeight100();
        		
        		ListGridField gfld1 = new ListGridField("fld1", "Field 1");
        		ListGridField gfld2 = new ListGridField("fld2", "Field 2");
        		ListGridField gfld3 = new ListGridField("fld3", "Field 3");
        
        		grid.setFields(gfld1, gfld2, gfld3);
        	}
        
        	private void buildDataSource() {
        		ds = new DataSource();
        		ds.setClientOnly(true);
        		ds.setDataFormat(DSDataFormat.JSON);
        		DataSourceField fldId = new DataSourceField("fldId", FieldType.INTEGER); fldId.setPrimaryKey(true);
        		DataSourceField fld1 = new DataSourceField("fld1", FieldType.TEXT);
        		DataSourceField fld2 = new DataSourceField("fld2", FieldType.INTEGER);
        		DataSourceField fld3 = new DataSourceField("fld3", FieldType.DATE);
        		ds.setFields(fldId, fld1, fld2, fld3);		
        	}
        
        }

        Comment


          #5
          Thank you Fluid01 for providing an example.

          Isomorphic,
          Was the example Fluid01 provided sufficient?

          Thanks

          Comment


            #6
            This should be fixed now (check today's builds).

            Comment


              #7
              Thank you very much.

              Comment


                #8
                Thank you very much

                Comment

                Working...
                X