Думаю, что ORDER BY определяет только сортировку результатов, а оптимизатор запросов может определить совсем другой порядок обработки строк.Тут нужно пробовать блокировать таблицы целиком (http://www.postgresql.org/docs/9.1/static/sql-lock.html):
pgsql-ru-general by date:
Соглашаюсь с условиями обработки персональных данных