Переименовать директорию и исправить пути в БД без race condition
Я уверен, есть простой и правильный сособ сделать это.
Есть директория и в ней файлы. Пути к файлам упоминаются в базе (postgresql, но это неважно). Директорию нужно переименовать, базу поправить и всё это без отказов типа 404 ошибка на полдороги.
Нужно что-то типа такого:
ln -s AAA BBB
psql <<<"UPDATE filename=BBB/...."
mv --no-target-directory --force AAA BBB
Только это на работает
mv: cannot overwrite non-directory 'BBB' with directory 'AAA'
Как ещё можно решить задачу? Интересуют надёжные и красивые методы, ненадёжно и через задницу я и сам могу.
PS mount --o bind не будет разрешён.