change event pool timeout handling
parent
43fdbf87d4
commit
50b81258a9
|
@ -148,6 +148,10 @@ namespace OpenSim.Framework.Servers.HttpServer
|
|||
if (responsedata.ContainsKey("keepalive"))
|
||||
response.KeepAlive = (bool)responsedata["keepalive"];
|
||||
|
||||
if (responsedata.ContainsKey("keepaliveTimeout"))
|
||||
response.KeepAliveTimeout = (int)responsedata["keepaliveTimeout"];
|
||||
|
||||
|
||||
if (responsedata.ContainsKey("prio"))
|
||||
response.Priority = (int)responsedata["prio"];
|
||||
|
||||
|
|
|
@ -65,13 +65,6 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
/// </value>
|
||||
public int DebugLevel { get; set; }
|
||||
|
||||
// Viewer post requests timeout in 60 secs
|
||||
// https://bitbucket.org/lindenlab/viewer-release/src/421c20423df93d650cc305dc115922bb30040999/indra/llmessage/llhttpclient.cpp?at=default#cl-44
|
||||
//
|
||||
private const int VIEWER_TIMEOUT = 60 * 1000;
|
||||
// Just to be safe, we work on a 10 sec shorter cycle
|
||||
private const int SERVER_EQ_TIME_NO_EVENTS = VIEWER_TIMEOUT - (10 * 1000);
|
||||
|
||||
protected Scene m_scene;
|
||||
|
||||
private Dictionary<UUID, int> m_ids = new Dictionary<UUID, int>();
|
||||
|
@ -363,7 +356,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
|
||||
caps.RegisterPollHandler(
|
||||
"EventQueueGet",
|
||||
new PollServiceEventArgs(null, GenerateEqgCapPath(eventQueueGetUUID), HasEvents, GetEvents, NoEvents, Drop, agentID, SERVER_EQ_TIME_NO_EVENTS));
|
||||
new PollServiceEventArgs(null, GenerateEqgCapPath(eventQueueGetUUID), HasEvents, GetEvents, NoEvents, Drop, agentID, int.MaxValue));
|
||||
}
|
||||
|
||||
public bool HasEvents(UUID requestID, UUID agentID)
|
||||
|
@ -396,7 +389,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
}
|
||||
public void Drop(UUID requestID, UUID pAgentId)
|
||||
{
|
||||
// do nothing for now, hope client close will do it
|
||||
// do nothing, in last case http server will do it
|
||||
}
|
||||
|
||||
public Hashtable GetEvents(UUID requestID, UUID pAgentId)
|
||||
|
@ -464,7 +457,7 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
responsedata["content_type"] = "application/xml";
|
||||
//string tt = OSDParser.SerializeLLSDXmlString(events);
|
||||
responsedata["bin_response_data"] = Encoding.UTF8.GetBytes(OSDParser.SerializeLLSDXmlString(events));
|
||||
|
||||
responsedata["keepaliveTimeout"] = 60;
|
||||
//m_log.DebugFormat("[EVENTQUEUE]: sending response for {0} in region {1}: {2}", pAgentId, m_scene.RegionInfo.RegionName, responsedata["str_response_string"]);
|
||||
return responsedata;
|
||||
}
|
||||
|
@ -476,7 +469,6 @@ namespace OpenSim.Region.ClientStack.Linden
|
|||
responsedata["content_type"] = "text/plain";
|
||||
responsedata["str_response_string"] = "<llsd></llsd>";
|
||||
responsedata["error_status_text"] = "<llsd></llsd>";
|
||||
responsedata["http_protocol_version"] = "HTTP/1.0";
|
||||
responsedata["keepalive"] = false;
|
||||
return responsedata;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue