Do not count long poll connections against CurlConcurrentConnectionsPerService
This is necessary for opensim mega regions that can have up to 16 long poll connections for a single service, while upping the maximum number of connections per service just for that is clearly nonsense. I also changed that long poll connections do not "use" the "Other" capability type (which shows that the debug info in the HTTP debug console for the Other capability type turns grey when it only has event poll connections). As a result additional connections become available for textures, mesh and the inventory (the other capability types) on opensim, which has all types on the same service, because now Other does no longer constantly reserves a full share of the available connections. This makes the actual number of connections used for textures and mesh a lot more like it is on Second Life.
This commit is contained in:
@@ -418,6 +418,7 @@ class BufferedCurlEasyRequest : public CurlEasyRequest {
|
||||
buffer_ptr_t mOutput;
|
||||
LLHTTPClient::ResponderPtr mResponder;
|
||||
AICapabilityType mCapabilityType;
|
||||
bool mIsEventPoll;
|
||||
//U32 mBodyLimit; // From the old LLURLRequestDetail::mBodyLimit, but never used.
|
||||
U32 mStatus; // HTTP status, decoded from the first header line.
|
||||
std::string mReason; // The "reason" from the same header line.
|
||||
@@ -466,6 +467,7 @@ class BufferedCurlEasyRequest : public CurlEasyRequest {
|
||||
|
||||
// Return the capability type of this request.
|
||||
AICapabilityType capability_type(void) const { llassert(mCapabilityType != number_of_capability_types); return mCapabilityType; }
|
||||
bool is_event_poll(void) const { return mIsEventPoll; }
|
||||
|
||||
// Return true if any data was received.
|
||||
bool received_data(void) const { return mTotalRawBytes > 0; }
|
||||
|
||||
Reference in New Issue
Block a user