Results 1 to 3 of 3

Thread: [4.1] duplicate ajax requests by store with autoSync on record removal

Threaded View

Previous Post Previous Post   Next Post Next Post
    Thank you for reporting this bug. We will make it our priority to review this report.
  1. #1
    Sencha User
    Join Date
    Sep 2011
    Vote Rating

    Default [4.1] duplicate ajax requests by store with autoSync on record removal


    Ext version tested:
    • Ext 4.1.1
    • Ext 4.1.0
    Browser versions tested against:
    • FF 14 (firebug 1.10.2 installed)
    • Chrome 21
    DOCTYPE tested against:
    • XHTML 1.0 Transitional

    • When removing n rows quickly after each other, (n + n-1 + n-2 + ... + 1) DELETE requests are fired at the REST server.
    Steps to reproduce the problem:
    • Situation: textbook gridpanel and REST store with autoSync enabled
    • Remove 3 rows immediately after eachother
    • This REST server in this case responds with either {success: true, data: [], msg: 'some msg'} or {success: false, data: [], msg: 'error msg'}
    The result that was expected:
    • 3 DELETE XHR requests are fired at the REST server. Concurrently or serially, I don't care.
    The result that occurs instead:
    • 3+2+1 = 6 DELETE XHR requests are fired. 3 for one record, 2 for the second and 1 for the last.
    Test Case:
    PHP Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
    html xmlns="" xml:lang="nl" lang="nl" dir="ltr">
    meta http-equiv="content-type" content="text/html; charset=utf-8" />

    script type="text/javascript" src="../js/extjs-4.1.1/ext-all-debug-w-comments.js"></script>
        <link rel="stylesheet" type="text/css" href="../js/extjs-4.1.1/resources/css/ext-all.css" />
        <script type="text/javascript">
        var teststore, testgrid;
        Ext.onReady(function() {
            Ext.define('part', {
                extend: ''
                ,fields: [
                    {name: 'id', type: 'int'}
                    ,{name: 'title', type: 'string'}
            teststore = Ext.create('', {
                model: 'part',

                autoSync: true
                ,autoLoad: true
                ,remoteFilter: true
                ,proxy: {
                    type: 'rest'
                    ,url: 'someUrl'
                    ,reader: {
                        type: 'json'
                        ,root: 'data'
                    ,writer: {
                        type: 'json'
            testgrid = Ext.create('Ext.grid.Panel', {
                title: 'test'
                ,renderTo: 'testgridcnt'

                ,store: teststore
                ,columns: [
                    {text: 'id', dataIndex: 'id'}
                    ,{text: 'title', dataIndex: 'title'}
    <div id="testgridcnt"></div>
    <a href="#" onclick="teststore.removeAt(1);teststore.removeAt(2);teststore.removeAt(3);return false;">test me!</a>

    • attached
    Debugging already done:
    • none
    Possible fix:
    • This might be similar to EXTJSIV-4335, which is supposed to be fixed in 4.1.1?
    • suspend and resumeAutosync works, but is not an option.
    Additional CSS used:
    • only default ext-all.css
    Operating System:
    • Fedora 16
    Attached Images Attached Images

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts