У меня есть таблица ресторанов с колонкой "имя". Я определил следующий индекс:
indexes "REPLACE(UPPER(restaurants.name), 'THE ', '')", :as => :restaurant_name, :sortable => true
... потому что я хочу отсортировать названия ресторанов без учета префикса "The".
Моя проблема в том, что всякий раз, когда одна из этих записей обновляется (каким-либо образом), новая запись переходит в начало порядка сортировки. Если обновляется другая запись, она также опережает остальные. Я получаю два списка: список ресторанов, которые были обновлены с момента последнего повторного индексирования, и список тех, которые еще не обновились. Каждый соответствующий список находится в алфавитном порядке, но я не понимаю, почему весь список разделяется таким образом. У меня настроен отложенный дельта-индекс, и я предполагаю, что проблема связана с этим.