Well my code made the impression it worked.

But I believe you if you say so. If the buffered grid plugin works I am really happy. The big issue for me was the large dom tree the grid produced.

I used buffered scrolling with a memory store wich I loaded from a second 'json/ajax' store. After retrieving records from the server I loaded all the rawData in the buffered store like this
reloadBufferedStore: function(grid, rawData, model, response) {

            var data = rawData;

            if ((response != undefined) && (rawData == undefined)) {                
                var resp = Ext.decode(response.responseText);
                data = resp.data;
            var newStore = Ext.create('as.bufferedstore', {
                buffered: true,
                model: model,
                data: data,
                pageSize: data.length,
                remoteSort: false,
                proxy: {
                    type: 'memory'

            if (data.length > 40) {
                newStore.guaranteeRange(0, 40);

The buffered store contained as much records as serverside, but it created now only 40 table rows in the gridview while scrolling.

When the record was in range by guaranteeRange it was possible to retrieve it by getById. But I think the solution of the grid buffered plugin would be so much better then this reconfigure thing.