Changeset c53ae2


Ignore:
Timestamp:
Feb 2, 2023, 1:31:56 PM (3 years ago)
Author:
Frederik Heber <frederik.heber@…>
Branches:
Candidate_v1.7.0, stable
Children:
75a0cb
Parents:
d91a8f
Message:

FIX: WorkerListener tried to get result from new-joined worker.

  • bracket error caused the 'break' to be missed when a newly joined worker was already known. This caused a receive result handle to be started where the actual empty result was handled gracefully.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • ThirdParty/JobMarket/src/JobMarket/FragmentScheduler_WorkerListener.cpp

    rd91a8f rc53ae2  
    117117            boost::bind(&FragmentScheduler::WorkerListener_t::handle_enrolled, this,
    118118            boost::asio::placeholders::error, conn, data));
     119          // mark as idle if a rejoining worker
     120          unmarkBusyWorkerFunction(data->address);
     121          LOG(1, "INFO: There are " << pool.getNoTotalWorkers() << " workers in the queue, "
     122              << pool.getNoIdleWorkers() << " of which are idle.");
    119123        } else {
    120124          // insert as its new worker
     
    124128            boost::bind(&FragmentScheduler::WorkerListener_t::handle_enrolled, this,
    125129            boost::asio::placeholders::error, conn, data));
     130        }
    126131        break;
    127132      }
     
    166171        ELOG(1, "WorkerListener_t::handle_ReadChoice() - called with no valid choice.");
    167172        break;
    168       }
    169173    }
    170174    // restore NoOperation choice such that choice is not read twice
Note: See TracChangeset for help on using the changeset viewer.