Значение из application.yml не применилось в проде
Разработчик уменьшил размер пачки в src/main/resources/application.yml:
report:
batch-size: 100
Образ пересобран, под в Kubernetes перезапущен. В логах старта видно, что приложение использует 5000. В деплойменте того же сервиса есть блок:
env:
- name: REPORT_BATCH_SIZE
value: "5000"
Что произошло?
- Переменные окружения имеют более высокий приоритет, чем упакованный application.yml, и переопределяют его значение
- Значения из application.yml вшиты в образ при сборке и после первого деплоя вообще не перечитываются
- Spring кэширует конфигурацию во внешнем хранилище, нужен запрос на обновление конфигурации
- Свойства с дефисом в имени не читаются из yml, нужно записать его как reportBatchSize
