mirror of https://gitee.com/bigwinds/arangodb
added assert and only compact if no request is in flight
This commit is contained in:
parent
7659519606
commit
a25932293b
|
@ -700,6 +700,10 @@ std::unique_ptr<GeneralResponse> HttpCommTask::createResponse(
|
||||||
}
|
}
|
||||||
|
|
||||||
void HttpCommTask::compactify() {
|
void HttpCommTask::compactify() {
|
||||||
|
if (! _newRequest) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
bool compact = false;
|
bool compact = false;
|
||||||
|
|
||||||
if (_sinceCompactification > RunCompactEvery) {
|
if (_sinceCompactification > RunCompactEvery) {
|
||||||
|
@ -718,8 +722,15 @@ void HttpCommTask::compactify() {
|
||||||
if (compact) {
|
if (compact) {
|
||||||
_sinceCompactification = 0;
|
_sinceCompactification = 0;
|
||||||
|
|
||||||
|
TRI_ASSERT(_startPosition >= _readPosition);
|
||||||
|
|
||||||
_startPosition -= _readPosition;
|
_startPosition -= _readPosition;
|
||||||
|
|
||||||
|
if (_bodyPosition > 0) {
|
||||||
|
TRI_ASSERT(_bodyPosition >= _readPosition);
|
||||||
_bodyPosition -= _readPosition;
|
_bodyPosition -= _readPosition;
|
||||||
|
}
|
||||||
|
|
||||||
_readPosition = 0;
|
_readPosition = 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue