FairMQ: shm region & monitor bugfixes

This commit is contained in:
Alexey Rybalchenko 2017-10-16 21:36:10 +02:00 committed by Mohammad Al-Turany
parent aa8d16ff9a
commit f277db2354
2 changed files with 11 additions and 5 deletions

View File

@ -108,10 +108,16 @@ FairMQMessageSHM::FairMQMessageSHM(FairMQRegionPtr& region, void* data, const si
}
else
{
MetaHeader* metaPtr = new(zmq_msg_data(&fMessage)) MetaHeader();
metaPtr->fSize = size;
metaPtr->fHandle = fHandle;
metaPtr->fRegionId = fRegionId;
MetaHeader header;
header.fSize = size;
header.fHandle = fHandle;
header.fRegionId = fRegionId;
memcpy(zmq_msg_data(&fMessage), &header, sizeof(MetaHeader));
// placement new fails in some environments, TODO: investigate why:
// MetaHeader* metaPtr = new(zmq_msg_data(&fMessage)) MetaHeader();
// metaPtr->fSize = size;
// metaPtr->fHandle = fHandle;
// metaPtr->fRegionId = fRegionId;
fMetaCreated = true;
}

View File

@ -347,7 +347,7 @@ void Monitor::Cleanup(const string& segmentName)
unsigned int regionCount = rc->fCount;
for (unsigned int i = 1; i <= regionCount; ++i)
{
RemoveObject("fairmq_shmem_region_" + to_string(regionCount));
RemoveObject("fairmq_shmem_region_" + to_string(i));
}
}
else