diff --git a/core/task/handler/runner.go b/core/task/handler/runner.go index 702579a6..f45b7bf3 100644 --- a/core/task/handler/runner.go +++ b/core/task/handler/runner.go @@ -907,14 +907,16 @@ func (r *Runner) handleIPCInsertDataMessage(ipcMsg IPCMessage) { // newTaskRunner creates a new task runner instance with the specified task ID // It initializes all necessary components and establishes required connections -func newTaskRunner(id primitive.ObjectID, svc *Service) (r2 *Runner, err error) { +func newTaskRunner(id primitive.ObjectID, svc *Service) (r *Runner, err error) { // validate options if id.IsZero() { - return nil, constants.ErrInvalidOptions + err = fmt.Errorf("invalid task id: %s", id.Hex()) + log.Errorf("error creating task runner: %v", err) + return nil, err } // runner - r := &Runner{ + r = &Runner{ subscribeTimeout: 30 * time.Second, bufferSize: 1024 * 1024, svc: svc, @@ -947,6 +949,7 @@ func newTaskRunner(id primitive.ObjectID, svc *Service) (r2 *Runner, err error) // initialize task runner if err := r.Init(); err != nil { + log.Errorf("error initializing task runner: %v", err) return r, err } diff --git a/core/task/handler/runner_test.go b/core/task/handler/runner_test.go index 613a8bd7..28ea374e 100644 --- a/core/task/handler/runner_test.go +++ b/core/task/handler/runner_test.go @@ -42,6 +42,7 @@ func setupTest(t *testing.T) *Runner { // Create a test runner svc := newTaskHandlerService() runner, _ := newTaskRunner(task.Id, svc) + require.NotNil(t, runner) err = runner.updateTask("", nil) require.Nil(t, err) _ = runner.Init() @@ -128,13 +129,3 @@ func TestRunner_Cancel(t *testing.T) { err = process.Signal(syscall.Signal(0)) assert.Error(t, err) // Process should not exist } - -// Helper function to create a temporary workspace for testing -func createTestWorkspace(t *testing.T) string { - dir, err := os.MkdirTemp("", "crawlab-test-*") - assert.NoError(t, err) - t.Cleanup(func() { - os.RemoveAll(dir) - }) - return dir -} diff --git a/core/task/handler/service.go b/core/task/handler/service.go index f979834f..ac1d3008 100644 --- a/core/task/handler/service.go +++ b/core/task/handler/service.go @@ -172,6 +172,7 @@ func (svc *Service) GetTaskById(id primitive.ObjectID) (t *models.Task, err erro t, err = client.NewModelService[models.Task]().GetById(id) } if err != nil { + log.Errorf("failed to get task by id: %v", err) return nil, err } @@ -198,6 +199,7 @@ func (svc *Service) GetSpiderById(id primitive.ObjectID) (s *models.Spider, err s, err = client.NewModelService[models.Spider]().GetById(id) } if err != nil { + log.Errorf("failed to get spider by id: %v", err) return nil, err }