есть две сущности, платежи и их хеши для доступа к ним в шардах.
Платежи хранятся во внешней бд (самописные шарды), ссылки на них хранятся в локальной бд, ради привязки к хешам, чтобы можно было по хешу понять какой айди платежа, затем сходить в шарды и достать оттуда платеж.
По коду получается, что я сначала сохраняю платеж в бд, затем создаю хеш со ссылкой на его айдишник и если идет нагрузка в виде создания множества записей одновременно, то может получиться так, что у двух соседних записей переставляется местами хеш (хеш изначально хранил и в сущности платежа и в этой связующей таблице).
Что можно с этим сделать?
Просто обернуть в транзакцию или изначально неудачное решение?
Просто странное поведение, когда я заперсистил и зафлашил уже сущность, а потом выясняется, что у нее другой айди из-за того что другой платеж видимо успел сохраниться раньше
Извините, если немного криво обрисовал проблему
Откуда ты берешь айдишник внешней бд?
Обсуждают сегодня