You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-30 19:23:07 +03:00
fix(threadpool): MCOL-5645 errenous threadpool Job ctor implictly sets socket shared_ptr to nullptr causing sigabrt when threadpool returns an error (#3125)
This commit is contained in:
@ -1967,7 +1967,7 @@ struct ReadThread
|
||||
id = fBPPHandler->getUniqueID(sbs, ismHdr->Command);
|
||||
functor.reset(new BPPHandler::Abort(fBPPHandler, sbs));
|
||||
}
|
||||
PriorityThreadPool::Job job(uniqueID, stepID, txnId, functor, weight, priority, id);
|
||||
PriorityThreadPool::Job job(uniqueID, stepID, txnId, functor, outIos, weight, priority, id);
|
||||
OOBProcPool->addJob(job);
|
||||
break;
|
||||
}
|
||||
|
@ -76,19 +76,7 @@ class FairThreadPool
|
||||
, id_(id)
|
||||
{
|
||||
}
|
||||
// sock_ is nullptr here. This is kinda dangerous.
|
||||
Job(const uint32_t uniqueID, const uint32_t stepID, const TransactionIdxT txnIdx,
|
||||
const boost::shared_ptr<Functor>& functor, const uint32_t weight = 1, const uint32_t priority = 0,
|
||||
const uint32_t id = 0)
|
||||
: uniqueID_(uniqueID)
|
||||
, stepID_(stepID)
|
||||
, txnIdx_(txnIdx)
|
||||
, functor_(functor)
|
||||
, weight_(weight)
|
||||
, priority_(priority)
|
||||
, id_(id)
|
||||
{
|
||||
}
|
||||
|
||||
uint32_t uniqueID_;
|
||||
uint32_t stepID_;
|
||||
TransactionIdxT txnIdx_;
|
||||
|
@ -74,19 +74,6 @@ class PriorityThreadPool
|
||||
, sock(sock)
|
||||
{
|
||||
}
|
||||
// sock_ is nullptr here. This is kinda dangerous.
|
||||
Job(const uint32_t uniqueID, const uint32_t stepID, const TransactionIdxT txnIdx,
|
||||
const boost::shared_ptr<Functor>& functor, const uint32_t weight = 1, const uint32_t priority = 0,
|
||||
const uint32_t id = 0)
|
||||
: functor(functor)
|
||||
, weight(weight)
|
||||
, priority(priority)
|
||||
, id(id)
|
||||
, stepID(stepID)
|
||||
, uniqueID(uniqueID)
|
||||
, sock(nullptr)
|
||||
{
|
||||
}
|
||||
|
||||
boost::shared_ptr<Functor> functor;
|
||||
uint32_t weight;
|
||||
|
Reference in New Issue
Block a user