Просмотр исходного кода

fix: temproarily disable transitions to empty overpopulated queues

Karol Sójko 1 год назад
Родитель
Сommit
cd893b41d7

+ 1 - 0
packages/revisions/src/Bootstrap/Container.ts

@@ -472,6 +472,7 @@ export class ContainerConfigLoader {
       .bind<TransitionRequestedEventHandler>(TYPES.Revisions_TransitionRequestedEventHandler)
       .toConstantValue(
         new TransitionRequestedEventHandler(
+          true,
           container.get<TransitionRevisionsFromPrimaryToSecondaryDatabaseForUser>(
             TYPES.Revisions_TransitionRevisionsFromPrimaryToSecondaryDatabaseForUser,
           ),

+ 5 - 0
packages/revisions/src/Domain/Handler/TransitionRequestedEventHandler.ts

@@ -4,11 +4,16 @@ import { TransitionRevisionsFromPrimaryToSecondaryDatabaseForUser } from '../Use
 
 export class TransitionRequestedEventHandler implements DomainEventHandlerInterface {
   constructor(
+    private disabled: boolean,
     private transitionRevisionsFromPrimaryToSecondaryDatabaseForUser: TransitionRevisionsFromPrimaryToSecondaryDatabaseForUser,
     private logger: Logger,
   ) {}
 
   async handle(event: TransitionRequestedEvent): Promise<void> {
+    if (this.disabled) {
+      return
+    }
+
     if (event.payload.type !== 'revisions') {
       return
     }

+ 1 - 0
packages/syncing-server/src/Bootstrap/Container.ts

@@ -1051,6 +1051,7 @@ export class ContainerConfigLoader {
       .bind<TransitionRequestedEventHandler>(TYPES.Sync_TransitionRequestedEventHandler)
       .toConstantValue(
         new TransitionRequestedEventHandler(
+          true,
           container.get<TransitionItemsFromPrimaryToSecondaryDatabaseForUser>(
             TYPES.Sync_TransitionItemsFromPrimaryToSecondaryDatabaseForUser,
           ),

+ 5 - 0
packages/syncing-server/src/Domain/Handler/TransitionRequestedEventHandler.ts

@@ -5,11 +5,16 @@ import { TransitionItemsFromPrimaryToSecondaryDatabaseForUser } from '../UseCase
 
 export class TransitionRequestedEventHandler implements DomainEventHandlerInterface {
   constructor(
+    private disabled: boolean,
     private transitionItemsFromPrimaryToSecondaryDatabaseForUser: TransitionItemsFromPrimaryToSecondaryDatabaseForUser,
     private logger: Logger,
   ) {}
 
   async handle(event: TransitionRequestedEvent): Promise<void> {
+    if (this.disabled) {
+      return
+    }
+
     if (event.payload.type !== 'items') {
       return
     }