From 359f2d28081b3aa8b8b1124b6ffa9c6c2c798ffc Mon Sep 17 00:00:00 2001 From: Pedro Soares Date: Wed, 21 Aug 2024 14:51:00 -0300 Subject: [PATCH] debug(remove): log rooms being removed after sorted --- .../core/operations/rooms/remove/executor.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/internal/core/operations/rooms/remove/executor.go b/internal/core/operations/rooms/remove/executor.go index 586de62a1..98e9719bf 100644 --- a/internal/core/operations/rooms/remove/executor.go +++ b/internal/core/operations/rooms/remove/executor.go @@ -35,6 +35,7 @@ import ( "github.com/topfreegames/maestro/internal/core/ports" porterrors "github.com/topfreegames/maestro/internal/core/ports/errors" "go.uber.org/zap" + "go.uber.org/zap/zapcore" "golang.org/x/sync/errgroup" ) @@ -121,6 +122,8 @@ func (e *Executor) removeRoomsByAmount(ctx context.Context, logger *zap.Logger, } else { var activeVersionRooms []*game_room.GameRoom var mostPrioRoomsToBeRemoved []*game_room.GameRoom + originalRoomsOrder := make([]*game_room.GameRoom, len(rooms)) + copy(originalRoomsOrder, rooms) for _, room := range rooms { if room.Status == game_room.GameStatusOccupied || room.Status == game_room.GameStatusReady || room.Status == game_room.GameStatusPending { if room.Version == activeScheduler.Spec.Version { @@ -133,6 +136,20 @@ func (e *Executor) removeRoomsByAmount(ctx context.Context, logger *zap.Logger, } } rooms = append(mostPrioRoomsToBeRemoved, activeVersionRooms...) + logger.Info("removing rooms by amount sorting by version", + zap.Array("originalRoomsOrder", zapcore.ArrayMarshalerFunc(func(enc zapcore.ArrayEncoder) error { + for _, room := range originalRoomsOrder { + enc.AppendString(fmt.Sprintf("%s-%s-%s", room.ID, room.Version, room.Status.String())) + } + return nil + })), + zap.Array("newRoomsOrder", zapcore.ArrayMarshalerFunc(func(enc zapcore.ArrayEncoder) error { + for _, room := range rooms { + enc.AppendString(fmt.Sprintf("%s-%s-%s", room.ID, room.Version, room.Status.String())) + } + return nil + })), + ) } err = e.deleteRooms(ctx, rooms, op, reason)