mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 08:41:16 +00:00
Add empty msg check for transport compatibility checker
This commit is contained in:
parent
a8bdb91165
commit
4dbb5535c3
|
@ -385,6 +385,7 @@ class FairMQChannel
|
|||
void CheckSendCompatibility(FairMQMessagePtr& msg)
|
||||
{
|
||||
if (fTransportType != msg->GetType()) {
|
||||
if (msg->GetSize() > 0) {
|
||||
FairMQMessagePtr msgWrapper(NewMessage(
|
||||
msg->GetData(),
|
||||
msg->GetSize(),
|
||||
|
@ -393,6 +394,10 @@ class FairMQChannel
|
|||
));
|
||||
msg.release();
|
||||
msg = move(msgWrapper);
|
||||
} else {
|
||||
FairMQMessagePtr newMsg(NewMessage());
|
||||
msg = move(newMsg);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -400,7 +405,7 @@ class FairMQChannel
|
|||
{
|
||||
for (auto& msg : msgVec) {
|
||||
if (fTransportType != msg->GetType()) {
|
||||
|
||||
if (msg->GetSize() > 0) {
|
||||
FairMQMessagePtr msgWrapper(NewMessage(
|
||||
msg->GetData(),
|
||||
msg->GetSize(),
|
||||
|
@ -409,6 +414,10 @@ class FairMQChannel
|
|||
));
|
||||
msg.release();
|
||||
msg = move(msgWrapper);
|
||||
} else {
|
||||
FairMQMessagePtr newMsg(NewMessage());
|
||||
msg = move(newMsg);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -425,7 +434,6 @@ class FairMQChannel
|
|||
{
|
||||
for (auto& msg : msgVec) {
|
||||
if (fTransportType != msg->GetType()) {
|
||||
|
||||
FairMQMessagePtr newMsg(NewMessage());
|
||||
msg = move(newMsg);
|
||||
}
|
||||
|
|
|
@ -27,15 +27,13 @@ class Rep : public FairMQDevice
|
|||
auto Run() -> void override
|
||||
{
|
||||
auto request1 = FairMQMessagePtr{NewMessage()};
|
||||
if (Receive(request1, "data") >= 0)
|
||||
{
|
||||
if (Receive(request1, "data") >= 0) {
|
||||
LOG(info) << "Received request 1";
|
||||
auto reply = FairMQMessagePtr{NewMessage()};
|
||||
Send(reply, "data");
|
||||
}
|
||||
auto request2 = FairMQMessagePtr{NewMessage()};
|
||||
if (Receive(request2, "data") >= 0)
|
||||
{
|
||||
if (Receive(request2, "data") >= 0) {
|
||||
LOG(info) << "Received request 2";
|
||||
auto reply = FairMQMessagePtr{NewMessage()};
|
||||
Send(reply, "data");
|
||||
|
|
|
@ -30,8 +30,7 @@ class Req : public FairMQDevice
|
|||
Send(request, "data");
|
||||
|
||||
auto reply = FairMQMessagePtr{NewMessage()};
|
||||
if (Receive(reply, "data") >= 0)
|
||||
{
|
||||
if (Receive(reply, "data") >= 0) {
|
||||
LOG(info) << "received reply";
|
||||
}
|
||||
};
|
||||
|
|
|
@ -27,24 +27,33 @@ auto RunReqRep(string transport) -> void
|
|||
auto rep = execute_result{"", 0};
|
||||
thread rep_thread([&]() {
|
||||
stringstream cmd;
|
||||
cmd << runTestDevice << " --id rep_" << transport << " --control static "
|
||||
<< "--session " << session << " --color false --mq-config \"" << mqConfig << "\"";
|
||||
cmd << runTestDevice << " --id rep_" << transport
|
||||
<< " --control static"
|
||||
<< " --session " << session
|
||||
<< " --color false"
|
||||
<< " --mq-config \"" << mqConfig << "\"";
|
||||
rep = execute(cmd.str(), "[REP]");
|
||||
});
|
||||
|
||||
auto req1 = execute_result{"", 0};
|
||||
thread req1_thread([&]() {
|
||||
stringstream cmd;
|
||||
cmd << runTestDevice << " --id req_1" << transport << " --control static "
|
||||
<< "--session " << session << " --color false --mq-config \"" << mqConfig << "\"";
|
||||
cmd << runTestDevice << " --id req_1" << transport
|
||||
<< " --control static"
|
||||
<< " --session " << session
|
||||
<< " --color false"
|
||||
<< " --mq-config \"" << mqConfig << "\"";
|
||||
req1 = execute(cmd.str(), "[REQ1]");
|
||||
});
|
||||
|
||||
auto req2 = execute_result{"", 0};
|
||||
thread req2_thread([&]() {
|
||||
stringstream cmd;
|
||||
cmd << runTestDevice << " --id req_2" << transport << " --control static "
|
||||
<< "--session " << session << " --color false --mq-config \"" << mqConfig << "\"";
|
||||
cmd << runTestDevice << " --id req_2" << transport
|
||||
<< " --control static"
|
||||
<< " --session " << session
|
||||
<< " --color false"
|
||||
<< " --mq-config \"" << mqConfig << "\"";
|
||||
req2 = execute(cmd.str(), "[REQ2]");
|
||||
});
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user