I have a JsonStore with a remoteSort attribute of 'true'. According to the 2.0 documentation:
In my Grid, paging appears to be working fine, unless someone has clicked a column header for sorting first. Rather than going to the server for a fresh data set meeting the sort criteria, it is sorting from the current record cache, then goes to the server on each additional request. This is a major issue, as it throws off the end data being given back to the user (records that may appear twice, depending on which page they began on, etc.)True if sorting is to be handled by requesting the Proxy to provide a refreshed version of the data object in sorted order, as opposed to sorting the Record cache in place (defaults to false).
If remote sorting is specified, then clicking on a column header causes the current page to be requested from the server