Причина, по которой вы получаете одинаковые топовые n
записи для всех ваших тем, заключается в том, что I в ACID (атомарность, согласованность, изоляция, долговечность) принципы транзакций.Изоляция означает, что другие операции не могут получить доступ к данным, которые были изменены во время транзакции, которая еще не завершена.Таким образом, пока ваши потоки не передадут свои транзакции, другие потоки не смогут увидеть, что они сделали.
Можно изменить Уровень изоляции в большинстве баз данных на одну изследующее:
- Сериализуемое
- Повторное чтение
- READ COMMITTED
- READ UNCOMMITTED
В вашем случае вы вероятнохочу READ UNCOMMITTED, так как позволяет одной транзакции видеть незафиксированные изменения, сделанные другой транзакцией.
Примечание. Это почти наверняка неправильный уровень изоляции для большинства приложений, и он может привести к повреждению данных. Если другое приложение, кроме описанного здесь, обращается к той же базе данных, вы, вероятно,не хочу менять уровень изоляции, так как эти приложения могут начать видеть неожиданное и неправильное поведение.