1
0
mirror of https://github.com/facebookincubator/mvfst.git synced 2025-11-10 21:22:20 +03:00

move setTransportStats before setTransportSettings

Summary: This change is needed so that `conn.transportStats` is defined when a new congestion controller is created (so we can update cc_type counters).

Reviewed By: lnicco

Differential Revision: D27156542

fbshipit-source-id: 8dd7613c4ea1f0e70aefc4a135a8c7f1d102fee2
This commit is contained in:
Frank Cangialosi
2021-03-22 20:53:09 -07:00
committed by Facebook GitHub Bot
parent b2615e8cf3
commit b801447eb8
3 changed files with 5 additions and 5 deletions

View File

@@ -257,12 +257,12 @@ class QuicClientTransportIntegrationTest : public TestWithParam<TestingParams> {
})); }));
transportSettings.zeroRttSourceTokenMatchingPolicy = transportSettings.zeroRttSourceTokenMatchingPolicy =
ZeroRttSourceTokenMatchingPolicy::LIMIT_IF_NO_EXACT_MATCH; ZeroRttSourceTokenMatchingPolicy::LIMIT_IF_NO_EXACT_MATCH;
server->setTransportStatsCallbackFactory(std::move(statsFactory));
server->setTransportSettings(transportSettings); server->setTransportSettings(transportSettings);
server->setQuicServerTransportFactory( server->setQuicServerTransportFactory(
std::make_unique<EchoServerTransportFactory>()); std::make_unique<EchoServerTransportFactory>());
server->setQuicUDPSocketFactory( server->setQuicUDPSocketFactory(
std::make_unique<QuicSharedUDPSocketFactory>()); std::make_unique<QuicSharedUDPSocketFactory>());
server->setTransportStatsCallbackFactory(std::move(statsFactory));
server->setFizzContext(serverCtx); server->setFizzContext(serverCtx);
server->setSupportedVersion({getVersion(), MVFST1}); server->setSupportedVersion({getVersion(), MVFST1});
folly::SocketAddress addr("::1", 0); folly::SocketAddress addr("::1", 0);

View File

@@ -639,6 +639,9 @@ void QuicServerWorker::dispatchPacketData(
trans->setCcpDatapath(getCcpReader()->getDatapath()); trans->setCcpDatapath(getCcpReader()->getDatapath());
#endif #endif
trans->setCongestionControllerFactory(ccFactory_); trans->setCongestionControllerFactory(ccFactory_);
if (statsCallback_) {
trans->setTransportStatsCallback(statsCallback_.get());
}
if (transportSettingsOverrideFn_) { if (transportSettingsOverrideFn_) {
folly::Optional<TransportSettings> overridenTransportSettings = folly::Optional<TransportSettings> overridenTransportSettings =
transportSettingsOverrideFn_( transportSettingsOverrideFn_(
@@ -674,9 +677,6 @@ void QuicServerWorker::dispatchPacketData(
static_cast<uint8_t>(processId_), static_cast<uint8_t>(processId_),
workerId_); workerId_);
trans->setServerConnectionIdParams(std::move(serverConnIdParams)); trans->setServerConnectionIdParams(std::move(serverConnIdParams));
if (statsCallback_) {
trans->setTransportStatsCallback(statsCallback_.get());
}
trans->accept(); trans->accept();
auto result = sourceAddressMap_.emplace(std::make_pair( auto result = sourceAddressMap_.emplace(std::make_pair(
std::make_pair(client, routingData.destinationConnId), trans)); std::make_pair(client, routingData.destinationConnId), trans));

View File

@@ -153,12 +153,12 @@ class QuicServerWorkerTest : public Test {
settings.statelessResetTokenSecret = getRandSecret(); settings.statelessResetTokenSecret = getRandSecret();
retryTokenSecret_ = getRandSecret(); retryTokenSecret_ = getRandSecret();
settings.retryTokenSecret = retryTokenSecret_; settings.retryTokenSecret = retryTokenSecret_;
worker_->setTransportStatsCallback(std::move(transportInfoCb));
worker_->setTransportSettings(settings); worker_->setTransportSettings(settings);
worker_->setSocket(std::move(sock)); worker_->setSocket(std::move(sock));
worker_->setWorkerId(42); worker_->setWorkerId(42);
worker_->setProcessId(ProcessId::ONE); worker_->setProcessId(ProcessId::ONE);
worker_->setHostId(hostId_); worker_->setHostId(hostId_);
worker_->setTransportStatsCallback(std::move(transportInfoCb));
worker_->setConnectionIdAlgo(std::make_unique<DefaultConnectionIdAlgo>()); worker_->setConnectionIdAlgo(std::make_unique<DefaultConnectionIdAlgo>());
worker_->setCongestionControllerFactory( worker_->setCongestionControllerFactory(
std::make_shared<ServerCongestionControllerFactory>()); std::make_shared<ServerCongestionControllerFactory>());