You may also try to set dynamicSortFilter: true, but only if you do not modify contents of model through proxy model.
invalidate() calls are expensive and you should only do it when you know what you are doing.
If you modify contents of your model through proxy model and/or you need to filter and sort on demand, invalidateFilter() and sort() is what you are looking for.