diff --git a/src/datablocks/schemas/datablock.schema.spec.ts b/src/datablocks/schemas/datablock.schema.spec.ts new file mode 100644 index 000000000..29fdf9502 --- /dev/null +++ b/src/datablocks/schemas/datablock.schema.spec.ts @@ -0,0 +1,8 @@ +import { DatablockSchema } from "./datablock.schema"; + +describe("DatablockSchema", () => { + it("should have an index on datasetId", () => { + const indexFields = DatablockSchema.indexes().map(([fields]) => fields); + expect(indexFields).toContainEqual({ datasetId: 1 }); + }); +}); diff --git a/src/datablocks/schemas/datablock.schema.ts b/src/datablocks/schemas/datablock.schema.ts index abf68757a..58ec1982b 100644 --- a/src/datablocks/schemas/datablock.schema.ts +++ b/src/datablocks/schemas/datablock.schema.ts @@ -109,3 +109,5 @@ export class Datablock extends OwnableClass { } export const DatablockSchema = SchemaFactory.createForClass(Datablock); + +DatablockSchema.index({ datasetId: 1 }); diff --git a/src/origdatablocks/schemas/origdatablock.schema.spec.ts b/src/origdatablocks/schemas/origdatablock.schema.spec.ts new file mode 100644 index 000000000..18c5b2077 --- /dev/null +++ b/src/origdatablocks/schemas/origdatablock.schema.spec.ts @@ -0,0 +1,8 @@ +import { OrigDatablockSchema } from "./origdatablock.schema"; + +describe("OrigDatablockSchema", () => { + it("should have an index on datasetId", () => { + const indexFields = OrigDatablockSchema.indexes().map(([fields]) => fields); + expect(indexFields).toContainEqual({ datasetId: 1 }); + }); +}); diff --git a/src/origdatablocks/schemas/origdatablock.schema.ts b/src/origdatablocks/schemas/origdatablock.schema.ts index 3ed0e33a5..f127a8648 100644 --- a/src/origdatablocks/schemas/origdatablock.schema.ts +++ b/src/origdatablocks/schemas/origdatablock.schema.ts @@ -74,3 +74,4 @@ export class OrigDatablock extends OwnableClass { export const OrigDatablockSchema = SchemaFactory.createForClass(OrigDatablock); OrigDatablockSchema.index({ "$**": "text" }); +OrigDatablockSchema.index({ datasetId: 1 });