У нас есть сборка Azure DevOps Pipeline для наших проектов SSDT DACPAC, настроенная на непрерывную интеграцию. Он работал в течение нескольких лет, и мы периодически и случайно видели следующую ошибку, приводящую к сбою сборки:
Microsoft.Isam.Esent.Interop.EsentVersionStoreOutOfMemoryException: Version store out of memory (cleanup already attempted)
at Microsoft.Isam.Esent.Interop.Api.Check(Int32 err)
at Microsoft.Isam.Esent.Interop.Api.JetUpdate(JET_SESID sesid, JET_TABLEID tableid, Byte[] bookmark, Int32 bookmarkSize, Int32& actualBookmarkSize)
at Microsoft.Isam.Esent.Interop.Update.Save(Byte[] bookmark, Int32 bookmarkSize, Int32& actualBookmarkSize)
...
Наше исправление до сих пор заключалось в том, чтобы просто поставить новую очередь в очередь. 99% времени, которое решило бы проблему. До сегодняшнего дня. Теперь я ставил в очередь новую сборку CI 3 раза подряд, и каждый раз она терпела неудачу с одним и тем же исключением. Проект создается локально, поэтому возникли некоторые проблемы с процессом сборки Pipeline.
Есть ли какое-то исправление, которое мы можем добавить в процесс сборки MSBuild Pipeline, чтобы устранить эту ошибку?