From da1889155952700bb4479f2cc5d9705b9a718765 Mon Sep 17 00:00:00 2001 From: Kevin Aleman Date: Tue, 26 Oct 2021 13:43:20 -0600 Subject: [PATCH] Add check to avoid calling routing method before is setup when using on services --- server/modules/listeners/listeners.module.ts | 2 +- server/services/meteor/service.ts | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/server/modules/listeners/listeners.module.ts b/server/modules/listeners/listeners.module.ts index a1c420eb69a12..d5bde611c7737 100644 --- a/server/modules/listeners/listeners.module.ts +++ b/server/modules/listeners/listeners.module.ts @@ -152,7 +152,7 @@ export class ListenersModule { service.onEvent('watch.inquiries', async ({ clientAction, inquiry, diff }): Promise => { const config = await getRoutingManagerConfig(); - if (config.autoAssignAgent) { + if (!config || config.autoAssignAgent) { return; } diff --git a/server/services/meteor/service.ts b/server/services/meteor/service.ts index ae182e3efd57f..6d5290673af3f 100644 --- a/server/services/meteor/service.ts +++ b/server/services/meteor/service.ts @@ -282,6 +282,9 @@ export class MeteorService extends ServiceClass implements IMeteor { } getRoutingManagerConfig(): IRoutingManagerConfig { - return RoutingManager.getConfig(); + // return false if called before routing method is set + // this will cause that oplog events received on early stages of server startup + // won't be fired (at least, inquiry events) + return RoutingManager.isMethodSet() && RoutingManager.getConfig(); } }