mirror of
https://github.com/hatchet-dev/hatchet.git
synced 2025-12-30 13:19:44 -06:00
fix: panic in dispatcher (#1663)
This commit is contained in:
@@ -8,6 +8,7 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"github.com/google/uuid"
|
||||
"github.com/jackc/pgx/v5/pgtype"
|
||||
"github.com/rs/zerolog"
|
||||
"google.golang.org/grpc/codes"
|
||||
@@ -24,6 +25,11 @@ func (d *DispatcherServiceImpl) RegisterDurableEvent(ctx context.Context, req *c
|
||||
tenant := ctx.Value("tenant").(*dbsqlc.Tenant)
|
||||
tenantId := sqlchelpers.UUIDToStr(tenant.ID)
|
||||
|
||||
if _, err := uuid.Parse(req.TaskId); err != nil {
|
||||
d.l.Error().Msgf("task id %s is not a valid uuid", req.TaskId)
|
||||
return nil, status.Error(codes.InvalidArgument, "task id is not a valid uuid")
|
||||
}
|
||||
|
||||
task, err := d.repo.Tasks().GetTaskByExternalId(ctx, tenantId, req.TaskId, false)
|
||||
|
||||
if err != nil {
|
||||
@@ -233,6 +239,11 @@ func (d *DispatcherServiceImpl) ListenForDurableEvent(server contracts.V1Dispatc
|
||||
return
|
||||
}
|
||||
|
||||
if _, err = uuid.Parse(req.TaskId); err != nil {
|
||||
d.l.Warn().Msgf("task id %s is not a valid uuid", req.TaskId)
|
||||
continue
|
||||
}
|
||||
|
||||
// FIXME: buffer/batch this to make it more efficient
|
||||
task, err := d.repo.Tasks().GetTaskByExternalId(ctx, tenantId, req.TaskId, false)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user