Я знаю, что это очень старый вопрос, но он сначала проявляется в результатах, и jpa сильно изменился со времени вопроса.
Правильный способ сделать это теперь с помощью аннотации @Generated
, Вы можете определить последовательность, установить значение по умолчанию в столбце этой последовательности и затем сопоставить столбец как:
@Generated(GenerationTime.INSERT)
@Column(name = "column_name", insertable = false)
Я предполагаю, что ваши единороги перезапускаются в старом рабочем каталоге, а не в новом рабочем каталоге - другими словами, если ваш рабочий каталог в unicorn.rb имеет значение <capistrano_directory>/current
, вам нужно убедиться, что символическая ссылка происходит прежде чем пытаться перезапустить единорогов.
Это объясняет, почему их остановка и запуск работают вручную: вы делаете это после развертывания, предположительно, что заставляет их запускаться в правильном каталоге.
Когда в процессе развертывания вы перезапускаете единорогов? Вы должны убедиться, что сигнал USR2 отправляется после того, как новый каталог релиза является символической ссылкой как текущий.
Если это не поможет, пожалуйста, укажите ваш unicorn.rb и deploy.rb; это намного облегчит отладку этой проблемы.
Имейте в виду, что: ваш рабочий каталог в unicorn.rb должен быть: / your / cap / directory / current
НЕ be: File.expand_path ("../ ..", ФАЙЛ )
Из-за ошибки разветвления программной ссылки Unicorn и Linux: программная ссылка может работать некорректно.
Например:
cd current #current - это мягкая ссылка на другой каталог
... ...
когда мы получаем наш рабочий каталог, мы получаем абсолютный путь, а не путь в «текущем»