Skip to content

Commit 6d90d90

Browse files
authored
[O2-3074] Reduce rcvBufSize of input proxies to 1 (#1358)
It turns out that this setting is per-connection, thus each publisher gets their own buffer of size rcvBufSize. This commit might not be enough to fix the situation at P2, because keeping one message per each of 250 EPNs will still require too much memory. Also, additional messages might hide in system buffers.
1 parent bd11220 commit 6d90d90

1 file changed

Lines changed: 3 additions & 3 deletions

File tree

Framework/src/InfrastructureGenerator.cxx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -385,7 +385,7 @@ void InfrastructureGenerator::generateDataSamplingPolicyRemoteProxyConnect(frame
385385
const std::string& proxyName = channelName; // channel name has to match proxy name
386386

387387
std::string channelConfig = "name=" + channelName + ",type=sub,method=connect,address=tcp://" +
388-
localMachine + ":" + localPort + ",rateLogging=60,transport=zeromq,rcvBufSize=32";
388+
localMachine + ":" + localPort + ",rateLogging=60,transport=zeromq,rcvBufSize=1";
389389

390390
workflow.emplace_back(specifyExternalFairMQDeviceProxy(
391391
proxyName.c_str(),
@@ -428,7 +428,7 @@ void InfrastructureGenerator::generateDataSamplingPolicyRemoteProxyBind(framewor
428428
std::string channelName = policyName;
429429
const std::string& proxyName = channelName; // channel name has to match proxy name
430430

431-
std::string channelConfig = "name=" + channelName + ",type=sub,method=bind,address=tcp://*:" + remotePort + ",rateLogging=60,transport=zeromq,rcvBufSize=32";
431+
std::string channelConfig = "name=" + channelName + ",type=sub,method=bind,address=tcp://*:" + remotePort + ",rateLogging=60,transport=zeromq,rcvBufSize=1";
432432

433433
workflow.emplace_back(specifyExternalFairMQDeviceProxy(
434434
proxyName.c_str(),
@@ -471,7 +471,7 @@ void InfrastructureGenerator::generateLocalTaskRemoteProxy(framework::WorkflowSp
471471
}
472472

473473
std::string channelConfig = "name=" + channelName + ",type=sub,method=bind,address=tcp://*:" + remotePort +
474-
",rateLogging=60,transport=zeromq,rcvBufSize=32";
474+
",rateLogging=60,transport=zeromq,rcvBufSize=1";
475475

476476
workflow.emplace_back(specifyExternalFairMQDeviceProxy(
477477
proxyName.c_str(),

0 commit comments

Comments
 (0)