Browse Source

fix(elasticsearch-plugin): Fix inconsistencies in behaviour between DBs

Michael Bromley 6 years ago
parent
commit
35d0008e40

+ 0 - 1
packages/elasticsearch-plugin/e2e/elasticsearch-plugin.e2e-spec.ts

@@ -64,7 +64,6 @@ describe('Elasticsearch plugin', () => {
 
     beforeAll(async () => {
         await server.init({
-            dataDir: path.join(__dirname, '__data__'),
             initialData,
             productsCsvPath: path.join(__dirname, 'fixtures/e2e-products-full.csv'),
             customerCount: 1,

+ 7 - 0
packages/elasticsearch-plugin/src/indexer.controller.ts

@@ -346,6 +346,9 @@ export class ElasticsearchIndexerController implements OnModuleInit, OnModuleDes
 
         const productVariants = await this.connection.getRepository(ProductVariant).findByIds(variantIds, {
             relations: variantRelations,
+            order: {
+                id: 'ASC',
+            },
         });
         updatedVariants = this.hydrateVariants(ctx, productVariants);
 
@@ -481,6 +484,7 @@ export class ElasticsearchIndexerController implements OnModuleInit, OnModuleDes
             .andWhere('variants__product.deletedAt IS NULL')
             .take(batchSize)
             .skip(i * batchSize)
+            .addOrderBy('variants.id', 'ASC')
             .getMany();
 
         return this.hydrateVariants(ctx, variants);
@@ -489,6 +493,9 @@ export class ElasticsearchIndexerController implements OnModuleInit, OnModuleDes
     private async getVariantsByIds(ctx: RequestContext, ids: ID[]) {
         const variants = await this.connection.getRepository(ProductVariant).findByIds(ids, {
             relations: variantRelations,
+            order: {
+                id: 'ASC',
+            },
         });
         return this.hydrateVariants(ctx, variants);
     }