INNER CODE UNIT · TypeScript
createIndexesAndMigrationsWithLock
modelence/modelence · packages/modelence/src/app/index.ts:245
async function createIndexesAndMigrationsWithLock(
effectiveStores: Store<ModelSchema, never>[],
migrations: MigrationScript[]
) {
const hasLock = await acquireLock(MIGRATIONS_LOCK_RESOURCE, {
lockDuration: time.seconds(30),
heartbeat: true,
});
if (!hasLock) {
return;
}
let blockingStores: Store<ModelSchema, never>[];
let backgroundStores: Store<ModelSchema, never>[];
try {
blockingStores = effectiveStores.filter((store) => store.getIndexCreationMode() === 'blocking');
backgroundStores = effectiveStores.filter(