mirror of
https://github.com/facebookincubator/mvfst.git
synced 2025-07-30 14:43:05 +03:00
Revert D56496459: Use CircularDeque in streams and datagram state.
Differential Revision: D56496459 Original commit changeset: ec4049614939 Original Phabricator Diff: D56496459 fbshipit-source-id: 5b1ee6dcfe59ae2e62a6d818f5839d95d26d4431
This commit is contained in:
committed by
Facebook GitHub Bot
parent
1603c88b3c
commit
3570f0122f
@ -757,7 +757,7 @@ class QuicSocket {
|
||||
* };
|
||||
*/
|
||||
|
||||
using PeekIterator = CircularDeque<StreamBuffer>::const_iterator;
|
||||
using PeekIterator = std::deque<StreamBuffer>::const_iterator;
|
||||
class PeekCallback {
|
||||
public:
|
||||
virtual ~PeekCallback() = default;
|
||||
|
@ -457,7 +457,7 @@ void handleRetransmissionWritten(
|
||||
uint64_t frameOffset,
|
||||
uint64_t frameLen,
|
||||
bool frameFin,
|
||||
CircularDeque<StreamBuffer>::iterator lossBufferIter) {
|
||||
std::deque<StreamBuffer>::iterator lossBufferIter) {
|
||||
auto bufferLen = lossBufferIter->data.chainLength();
|
||||
Buf bufWritten;
|
||||
if (frameLen == bufferLen && frameFin == lossBufferIter->eof) {
|
||||
|
@ -171,7 +171,7 @@ void handleRetransmissionWritten(
|
||||
uint64_t frameOffset,
|
||||
uint64_t frameLen,
|
||||
bool frameFin,
|
||||
CircularDeque<StreamBuffer>::iterator lossBufferIter);
|
||||
std::deque<StreamBuffer>::iterator lossBufferIter);
|
||||
|
||||
/**
|
||||
* Update the connection and stream state after stream data is written and deal
|
||||
|
@ -7,7 +7,6 @@
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <quic/common/CircularDeque.h>
|
||||
#include <quic/fizz/handshake/FizzCryptoFactory.h>
|
||||
#include <quic/server/handshake/ServerHandshake.h>
|
||||
|
||||
@ -49,7 +48,7 @@ class FizzServerHandshake : public ServerHandshake {
|
||||
void writeNewSessionTicketToCrypto(const AppToken& appToken) override;
|
||||
|
||||
using PendingEvent = fizz::WriteNewSessionTicket;
|
||||
CircularDeque<PendingEvent> pendingEvents_;
|
||||
std::deque<PendingEvent> pendingEvents_;
|
||||
|
||||
std::unique_ptr<FizzCryptoFactory> cryptoFactory_;
|
||||
|
||||
|
@ -151,8 +151,8 @@ void appendDataToReadBufferCommon(
|
||||
// Start overlap will point to the first buffer that overlaps with the
|
||||
// current buffer and End overlap will point to the last buffer that overlaps.
|
||||
// They must always be set together.
|
||||
folly::Optional<decltype(stream.readBuffer)::iterator> startOverlap;
|
||||
folly::Optional<decltype(stream.readBuffer)::iterator> endOverlap;
|
||||
folly::Optional<std::deque<StreamBuffer>::iterator> startOverlap;
|
||||
folly::Optional<std::deque<StreamBuffer>::iterator> endOverlap;
|
||||
|
||||
StreamBuffer* current = &buffer;
|
||||
bool currentAlreadyInserted = false;
|
||||
|
@ -73,7 +73,7 @@ Buf readDataFromCryptoStream(QuicCryptoStream& stream, uint64_t amount = 0);
|
||||
* Invokes provided callback on the existing data.
|
||||
* Does not affect stream state (as opposed to read).
|
||||
*/
|
||||
using PeekIterator = CircularDeque<StreamBuffer>::const_iterator;
|
||||
using PeekIterator = std::deque<StreamBuffer>::const_iterator;
|
||||
void peekDataFromQuicStream(
|
||||
QuicStreamState& state,
|
||||
const folly::Function<void(StreamId id, const folly::Range<PeekIterator>&)
|
||||
|
@ -13,7 +13,6 @@
|
||||
#include <quic/codec/QuicWriteCodec.h>
|
||||
#include <quic/codec/Types.h>
|
||||
#include <quic/common/BufAccessor.h>
|
||||
#include <quic/common/CircularDeque.h>
|
||||
#include <quic/congestion_control/CongestionController.h>
|
||||
#include <quic/congestion_control/PacketProcessor.h>
|
||||
#include <quic/congestion_control/ThrottlingSignalProvider.h>
|
||||
@ -659,9 +658,9 @@ struct QuicConnectionStateBase : public folly::DelayedDestruction {
|
||||
uint32_t maxReadBufferSize{kDefaultMaxDatagramsBuffered};
|
||||
uint32_t maxWriteBufferSize{kDefaultMaxDatagramsBuffered};
|
||||
// Buffers Incoming Datagrams
|
||||
CircularDeque<ReadDatagram> readBuffer;
|
||||
std::deque<ReadDatagram> readBuffer;
|
||||
// Buffers Outgoing Datagrams
|
||||
CircularDeque<BufQueue> writeBuffer;
|
||||
std::deque<BufQueue> writeBuffer;
|
||||
};
|
||||
|
||||
DatagramState datagramState;
|
||||
|
@ -102,7 +102,7 @@ struct QuicStreamLike {
|
||||
|
||||
// List of bytes that have been read and buffered. We need to buffer
|
||||
// bytes in case we get bytes out of order.
|
||||
CircularDeque<StreamBuffer> readBuffer;
|
||||
std::deque<StreamBuffer> readBuffer;
|
||||
|
||||
// List of bytes that have been written to the QUIC layer.
|
||||
BufQueue writeBuffer{};
|
||||
@ -125,7 +125,7 @@ struct QuicStreamLike {
|
||||
|
||||
// Stores a list of buffers which have been marked as loss by loss detector.
|
||||
// Each one represents one StreamFrame that was written.
|
||||
CircularDeque<StreamBuffer> lossBuffer;
|
||||
std::deque<StreamBuffer> lossBuffer;
|
||||
|
||||
// Current offset of the start bytes in the write buffer.
|
||||
// This changes when we pop stuff off the writeBuffer.
|
||||
@ -485,7 +485,7 @@ struct QuicStreamState : public QuicStreamLike {
|
||||
folly::F14FastMap<uint64_t, WriteBufferMeta> retransmissionBufMetas;
|
||||
|
||||
// WriteBufferMetas that's already marked lost. They will be retransmitted.
|
||||
CircularDeque<WriteBufferMeta> lossBufMetas;
|
||||
std::deque<WriteBufferMeta> lossBufMetas;
|
||||
|
||||
uint64_t streamLossCount{0};
|
||||
|
||||
|
@ -26,7 +26,7 @@ namespace test {
|
||||
|
||||
constexpr uint8_t kStreamIncrement = 0x04;
|
||||
|
||||
using PeekIterator = CircularDeque<StreamBuffer>::const_iterator;
|
||||
using PeekIterator = std::deque<StreamBuffer>::const_iterator;
|
||||
|
||||
class QuicStreamFunctionsTest : public Test {
|
||||
public:
|
||||
|
Reference in New Issue
Block a user