From 1f402fdf5e8ef53a07f98c4447946805791d26bc Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Tue, 7 Feb 2012 21:40:28 +0000 Subject: [PATCH 1/3] Add url to logging if SynchronousRestFormsRequester.MakRequest() throws an exception in service connectors --- .../Avatar/AvatarServiceConnector.cs | 40 +++++------ .../Friends/FriendsServiceConnector.cs | 22 +++--- .../Connectors/Friends/FriendsSimConnector.cs | 9 ++- .../Connectors/Grid/GridServiceConnector.cs | 72 ++++++++++--------- .../GridUser/GridUserServiceConnector.cs | 15 ++-- .../Hypergrid/HGFriendsServiceConnector.cs | 15 ++-- .../MapImage/MapImageServiceConnector.cs | 5 +- .../Presence/PresenceServiceConnector.cs | 30 ++++---- .../UserAccountServiceConnector.cs | 15 ++-- 9 files changed, 120 insertions(+), 103 deletions(-) diff --git a/OpenSim/Services/Connectors/Avatar/AvatarServiceConnector.cs b/OpenSim/Services/Connectors/Avatar/AvatarServiceConnector.cs index 8fdb4d0b66..ddfca57c81 100644 --- a/OpenSim/Services/Connectors/Avatar/AvatarServiceConnector.cs +++ b/OpenSim/Services/Connectors/Avatar/AvatarServiceConnector.cs @@ -110,12 +110,11 @@ namespace OpenSim.Services.Connectors string reply = string.Empty; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/avatar"; // m_log.DebugFormat("[AVATAR CONNECTOR]: queryString = {0}", reqString); try { - reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/avatar", - reqString); + reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply == null || (reply != null && reply == string.Empty)) { m_log.DebugFormat("[AVATAR CONNECTOR]: GetAgent received null or empty reply"); @@ -124,7 +123,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -159,12 +158,11 @@ namespace OpenSim.Services.Connectors string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/avatar"; //m_log.DebugFormat("[AVATAR CONNECTOR]: queryString = {0}", reqString); try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/avatar", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -177,15 +175,18 @@ namespace OpenSim.Services.Connectors return false; } else + { m_log.DebugFormat("[AVATAR CONNECTOR]: SetAvatar reply data does not contain result field"); - + } } else + { m_log.DebugFormat("[AVATAR CONNECTOR]: SetAvatar received empty reply"); + } } catch (Exception e) { - m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting avatar server: {0}", e.Message); + m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -202,12 +203,11 @@ namespace OpenSim.Services.Connectors sendData["UserID"] = userID.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/avatar"; // m_log.DebugFormat("[AVATAR CONNECTOR]: queryString = {0}", reqString); try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/avatar", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -228,7 +228,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting avatar server: {0}", e.Message); + m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -246,12 +246,11 @@ namespace OpenSim.Services.Connectors sendData["Values"] = new List(values); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/avatar"; // m_log.DebugFormat("[AVATAR CONNECTOR]: queryString = {0}", reqString); try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/avatar", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -272,7 +271,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting avatar server: {0}", e.Message); + m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -290,12 +289,11 @@ namespace OpenSim.Services.Connectors sendData["Names"] = new List(names); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/avatar"; // m_log.DebugFormat("[AVATAR CONNECTOR]: queryString = {0}", reqString); try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/avatar", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -316,7 +314,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting avatar server: {0}", e.Message); + m_log.DebugFormat("[AVATAR CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; diff --git a/OpenSim/Services/Connectors/Friends/FriendsServiceConnector.cs b/OpenSim/Services/Connectors/Friends/FriendsServiceConnector.cs index 41361ab6e4..44138c9fd1 100644 --- a/OpenSim/Services/Connectors/Friends/FriendsServiceConnector.cs +++ b/OpenSim/Services/Connectors/Friends/FriendsServiceConnector.cs @@ -108,12 +108,11 @@ namespace OpenSim.Services.Connectors.Friends protected FriendInfo[] GetFriends(Dictionary sendData, string PrincipalID) { string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/friends"; try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/friends", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -143,7 +142,6 @@ namespace OpenSim.Services.Connectors.Friends // Success return finfos.ToArray(); } - else m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: GetFriends {0} received null response", PrincipalID); @@ -152,7 +150,7 @@ namespace OpenSim.Services.Connectors.Friends } catch (Exception e) { - m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: Exception when contacting friends server: {0}", e.Message); + m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: Exception when contacting friends server at {0}: {1}", uri, e.Message); } return new FriendInfo[0]; @@ -167,15 +165,14 @@ namespace OpenSim.Services.Connectors.Friends sendData["METHOD"] = "storefriend"; string reply = string.Empty; + string uri = m_ServerURI + "/friends"; try { - reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/friends", - ServerUtils.BuildQueryString(sendData)); + reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: Exception when contacting friends server: {0}", e.Message); + m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: Exception when contacting friends server at {0}: {1}", uri, e.Message); return false; } @@ -223,15 +220,14 @@ namespace OpenSim.Services.Connectors.Friends public bool Delete(Dictionary sendData, string PrincipalID, string Friend) { string reply = string.Empty; + string uri = m_ServerURI = "/friends"; try { - reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/friends", - ServerUtils.BuildQueryString(sendData)); + reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: Exception when contacting friends server: {0}", e.Message); + m_log.DebugFormat("[FRIENDS SERVICE CONNECTOR]: Exception when contacting friends server at {0}: {1}", uri, e.Message); return false; } diff --git a/OpenSim/Services/Connectors/Friends/FriendsSimConnector.cs b/OpenSim/Services/Connectors/Friends/FriendsSimConnector.cs index d0a20fc989..eea9853463 100644 --- a/OpenSim/Services/Connectors/Friends/FriendsSimConnector.cs +++ b/OpenSim/Services/Connectors/Friends/FriendsSimConnector.cs @@ -139,12 +139,11 @@ namespace OpenSim.Services.Connectors.Friends return false; m_log.DebugFormat("[FRIENDS SIM CONNECTOR]: region: {0}", region.ExternalHostName + ":" + region.HttpPort); + string uri = "http://" + region.ExternalHostName + ":" + region.HttpPort + "/friends"; + try { - string url = "http://" + region.ExternalHostName + ":" + region.HttpPort; - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - url + "/friends", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -165,7 +164,7 @@ namespace OpenSim.Services.Connectors.Friends } catch (Exception e) { - m_log.DebugFormat("[FRIENDS SIM CONNECTOR]: Exception when contacting remote sim: {0}", e.ToString()); + m_log.DebugFormat("[FRIENDS SIM CONNECTOR]: Exception when contacting remote sim at {0}: {1}", uri, e.Message); } return false; diff --git a/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs b/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs index e57f28b44e..1599a56b1b 100644 --- a/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs +++ b/OpenSim/Services/Connectors/Grid/GridServiceConnector.cs @@ -98,12 +98,11 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "register"; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/grid"; // m_log.DebugFormat("[GRID CONNECTOR]: queryString = {0}", reqString); try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", - reqString); + string reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); if (reply != string.Empty) { Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -133,7 +132,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); } return "Error communicating with grid service"; @@ -147,11 +146,12 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "deregister"; + string uri = m_ServerURI + "/grid"; + try { - string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", - ServerUtils.BuildQueryString(sendData)); + string reply + = SynchronousRestFormsRequester.MakeRequest("POST", uri, ServerUtils.BuildQueryString(sendData)); if (reply != string.Empty) { @@ -165,7 +165,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); } return false; @@ -184,15 +184,15 @@ namespace OpenSim.Services.Connectors string reqString = ServerUtils.BuildQueryString(sendData); string reply = string.Empty; + string uri = m_ServerURI + "/grid"; + try { - reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", - reqString); + reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, reqString); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return rinfos; } @@ -228,15 +228,14 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "get_region_by_uuid"; string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { - reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", - ServerUtils.BuildQueryString(sendData)); + reply = SynchronousRestFormsRequester.MakeRequest("POST", uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return null; } @@ -274,15 +273,16 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "get_region_by_position"; string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return null; } @@ -318,15 +318,16 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "get_region_by_name"; string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return null; } @@ -361,15 +362,16 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "get_regions_by_name"; List rinfos = new List(); string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return rinfos; } @@ -413,17 +415,19 @@ namespace OpenSim.Services.Connectors List rinfos = new List(); string reply = string.Empty; + string uri = m_ServerURI + "/grid"; + try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); //m_log.DebugFormat("[GRID CONNECTOR]: reply was {0}", reply); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return rinfos; } @@ -463,17 +467,18 @@ namespace OpenSim.Services.Connectors List rinfos = new List(); string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); //m_log.DebugFormat("[GRID CONNECTOR]: reply was {0}", reply); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return rinfos; } @@ -515,17 +520,18 @@ namespace OpenSim.Services.Connectors List rinfos = new List(); string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); //m_log.DebugFormat("[GRID CONNECTOR]: reply was {0}", reply); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return rinfos; } @@ -565,17 +571,18 @@ namespace OpenSim.Services.Connectors List rinfos = new List(); string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); //m_log.DebugFormat("[GRID CONNECTOR]: reply was {0}", reply); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return rinfos; } @@ -615,15 +622,16 @@ namespace OpenSim.Services.Connectors sendData["METHOD"] = "get_region_flags"; string reply = string.Empty; + string uri = m_ServerURI + "/grid"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/grid", + uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[GRID CONNECTOR]: Exception when contacting grid server at {0}: {1}", uri, e.Message); return -1; } diff --git a/OpenSim/Services/Connectors/GridUser/GridUserServiceConnector.cs b/OpenSim/Services/Connectors/GridUser/GridUserServiceConnector.cs index aa98b5df49..20d7eaf301 100644 --- a/OpenSim/Services/Connectors/GridUser/GridUserServiceConnector.cs +++ b/OpenSim/Services/Connectors/GridUser/GridUserServiceConnector.cs @@ -156,11 +156,12 @@ namespace OpenSim.Services.Connectors sendData["LookAt"] = lookAt.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/griduser"; // m_log.DebugFormat("[GRID USER CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/griduser", + uri, reqString); if (reply != string.Empty) { @@ -182,7 +183,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[GRID USER CONNECTOR]: Exception when contacting grid user server: {0}", e.Message); + m_log.DebugFormat("[GRID USER CONNECTOR]: Exception when contacting grid user server at {0}: {1}", uri, e.Message); } return false; @@ -191,11 +192,12 @@ namespace OpenSim.Services.Connectors protected GridUserInfo Get(Dictionary sendData) { string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/griduser"; // m_log.DebugFormat("[GRID USER CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/griduser", + uri, reqString); if (reply != string.Empty) { @@ -216,7 +218,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[GRID USER CONNECTOR]: Exception when contacting grid user server: {0}", e.Message); + m_log.DebugFormat("[GRID USER CONNECTOR]: Exception when contacting grid user server at {0}: {1}", uri, e.Message); } return null; @@ -235,11 +237,12 @@ namespace OpenSim.Services.Connectors string reply = string.Empty; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/griduser"; //m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/griduser", + uri, reqString); if (reply == null || (reply != null && reply == string.Empty)) { @@ -249,7 +252,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[GRID USER CONNECTOR]: Exception when contacting grid user server: {0}", e.Message); + m_log.DebugFormat("[GRID USER CONNECTOR]: Exception when contacting grid user server at {0}: {1}", uri, e.Message); } List rinfos = new List(); diff --git a/OpenSim/Services/Connectors/Hypergrid/HGFriendsServiceConnector.cs b/OpenSim/Services/Connectors/Hypergrid/HGFriendsServiceConnector.cs index d699f596a2..af4b0daf9b 100644 --- a/OpenSim/Services/Connectors/Hypergrid/HGFriendsServiceConnector.cs +++ b/OpenSim/Services/Connectors/Hypergrid/HGFriendsServiceConnector.cs @@ -79,11 +79,12 @@ namespace OpenSim.Services.Connectors.Hypergrid sendData["SESSIONID"] = m_SessionID.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/hgfriends"; try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/hgfriends", + uri, reqString); if (reply != string.Empty) { @@ -103,7 +104,7 @@ namespace OpenSim.Services.Connectors.Hypergrid } catch (Exception e) { - m_log.DebugFormat("[HGFRIENDS CONNECTOR]: Exception when contacting friends server: {0}", e.Message); + m_log.DebugFormat("[HGFRIENDS CONNECTOR]: Exception when contacting friends server at {0}: {1}", uri, e.Message); } return 0; @@ -123,15 +124,16 @@ namespace OpenSim.Services.Connectors.Hypergrid sendData["SESSIONID"] = m_SessionID.ToString(); string reply = string.Empty; + string uri = m_ServerURI + "/hgfriends"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/hgfriends", + uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[HGFRIENDS CONNECTOR]: Exception when contacting friends server: {0}", e.Message); + m_log.DebugFormat("[HGFRIENDS CONNECTOR]: Exception when contacting friends server at {0}: {1}", uri, e.Message); return false; } @@ -168,15 +170,16 @@ namespace OpenSim.Services.Connectors.Hypergrid sendData["SECRET"] = secret; string reply = string.Empty; + string uri = m_ServerURI + "/hgfriends"; try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/hgfriends", + uri, ServerUtils.BuildQueryString(sendData)); } catch (Exception e) { - m_log.DebugFormat("[HGFRIENDS CONNECTOR]: Exception when contacting friends server: {0}", e.Message); + m_log.DebugFormat("[HGFRIENDS CONNECTOR]: Exception when contacting friends server at {0}: {1}", uri, e.Message); return false; } diff --git a/OpenSim/Services/Connectors/MapImage/MapImageServiceConnector.cs b/OpenSim/Services/Connectors/MapImage/MapImageServiceConnector.cs index e46714ec53..30bfb70aa9 100644 --- a/OpenSim/Services/Connectors/MapImage/MapImageServiceConnector.cs +++ b/OpenSim/Services/Connectors/MapImage/MapImageServiceConnector.cs @@ -97,11 +97,12 @@ namespace OpenSim.Services.Connectors sendData["DATA"] = Convert.ToBase64String(jpgData); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/map"; try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/map", + uri, reqString); if (reply != string.Empty) { @@ -135,7 +136,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[MAP IMAGE CONNECTOR]: Exception when contacting grid server: {0}", e.Message); + m_log.DebugFormat("[MAP IMAGE CONNECTOR]: Exception when contacting map server at {0}: {1}", uri, e.Message); } finally { diff --git a/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs b/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs index 7238afc613..f7d8c5379c 100644 --- a/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs +++ b/OpenSim/Services/Connectors/Presence/PresenceServiceConnector.cs @@ -98,11 +98,12 @@ namespace OpenSim.Services.Connectors sendData["SecureSessionID"] = secureSessionID.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/presence"; // m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/presence", + uri, reqString); if (reply != string.Empty) { @@ -124,7 +125,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -142,11 +143,12 @@ namespace OpenSim.Services.Connectors sendData["SessionID"] = sessionID.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/presence"; // m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/presence", + uri, reqString); if (reply != string.Empty) { @@ -168,7 +170,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -185,11 +187,12 @@ namespace OpenSim.Services.Connectors sendData["RegionID"] = regionID.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/presence"; // m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/presence", + uri, reqString); if (reply != string.Empty) { @@ -211,7 +214,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -229,11 +232,12 @@ namespace OpenSim.Services.Connectors sendData["RegionID"] = regionID.ToString(); string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/presence"; // m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/presence", + uri, reqString); if (reply != string.Empty) { @@ -255,7 +259,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } return false; @@ -273,11 +277,12 @@ namespace OpenSim.Services.Connectors string reply = string.Empty; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/presence"; // m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/presence", + uri, reqString); if (reply == null || (reply != null && reply == string.Empty)) { @@ -287,7 +292,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -316,11 +321,12 @@ namespace OpenSim.Services.Connectors string reply = string.Empty; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/presence"; //m_log.DebugFormat("[PRESENCE CONNECTOR]: queryString = {0}", reqString); try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/presence", + uri, reqString); if (reply == null || (reply != null && reply == string.Empty)) { @@ -330,7 +336,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server: {0}", e.Message); + m_log.DebugFormat("[PRESENCE CONNECTOR]: Exception when contacting presence server at {0}: {1}", uri, e.Message); } List rinfos = new List(); diff --git a/OpenSim/Services/Connectors/UserAccounts/UserAccountServiceConnector.cs b/OpenSim/Services/Connectors/UserAccounts/UserAccountServiceConnector.cs index f6835b9f2f..609dafefd9 100644 --- a/OpenSim/Services/Connectors/UserAccounts/UserAccountServiceConnector.cs +++ b/OpenSim/Services/Connectors/UserAccounts/UserAccountServiceConnector.cs @@ -138,11 +138,12 @@ namespace OpenSim.Services.Connectors string reply = string.Empty; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/accounts"; // m_log.DebugFormat("[ACCOUNTS CONNECTOR]: queryString = {0}", reqString); try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/accounts", + uri, reqString); if (reply == null || (reply != null && reply == string.Empty)) { @@ -152,7 +153,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[ACCOUNT CONNECTOR]: Exception when contacting accounts server: {0}", e.Message); + m_log.DebugFormat("[ACCOUNT CONNECTOR]: Exception when contacting user accounts server at {0}: {1}", uri, e.Message); } List accounts = new List(); @@ -206,11 +207,12 @@ namespace OpenSim.Services.Connectors { string reply = string.Empty; string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/accounts"; // m_log.DebugFormat("[ACCOUNTS CONNECTOR]: queryString = {0}", reqString); try { reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/accounts", + uri, reqString); if (reply == null || (reply != null && reply == string.Empty)) { @@ -220,7 +222,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[ACCOUNT CONNECTOR]: Exception when contacting user account server: {0}", e.Message); + m_log.DebugFormat("[ACCOUNT CONNECTOR]: Exception when contacting user accounts server at {0}: {1}", uri, e.Message); } Dictionary replyData = ServerUtils.ParseXmlResponse(reply); @@ -241,11 +243,12 @@ namespace OpenSim.Services.Connectors private bool SendAndGetBoolReply(Dictionary sendData) { string reqString = ServerUtils.BuildQueryString(sendData); + string uri = m_ServerURI + "/accounts"; // m_log.DebugFormat("[ACCOUNTS CONNECTOR]: queryString = {0}", reqString); try { string reply = SynchronousRestFormsRequester.MakeRequest("POST", - m_ServerURI + "/accounts", + uri, reqString); if (reply != string.Empty) { @@ -267,7 +270,7 @@ namespace OpenSim.Services.Connectors } catch (Exception e) { - m_log.DebugFormat("[ACCOUNTS CONNECTOR]: Exception when contacting user account server: {0}", e.Message); + m_log.DebugFormat("[ACCOUNT CONNECTOR]: Exception when contacting user accounts server at {0}: {1}", uri, e.Message); } return false; From c87751a822db328145963782f0f10adb23e32d39 Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Tue, 7 Feb 2012 23:03:53 +0000 Subject: [PATCH 2/3] Add start GC memory and end GC memory to object stress test printouts. This illustrates that references to Scene, SOG, etc. are not currently being released when a stress test ends (or at regression test end in general). This means even the current stress tests take much more memory than they need, a problem that will have to be addressed. --- .../Region/Framework/Scenes/SceneObjectGroup.cs | 3 ++- OpenSim/Tests/Common/Mock/TestScene.cs | 5 +++++ OpenSim/Tests/Torture/ObjectTortureTests.cs | 16 +++++++++++++--- OpenSim/Tests/Torture/ScriptTortureTests.cs | 2 ++ 4 files changed, 22 insertions(+), 4 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs index 89393426b4..b724135df5 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectGroup.cs @@ -567,7 +567,8 @@ namespace OpenSim.Region.Framework.Scenes // ~SceneObjectGroup() // { -// m_log.DebugFormat("[SCENE OBJECT GROUP]: Destructor called for {0}, local id {1}", Name, LocalId); +// //m_log.DebugFormat("[SCENE OBJECT GROUP]: Destructor called for {0}, local id {1}", Name, LocalId); +// Console.WriteLine("Destructor called for {0}, local id {1}", Name, LocalId); // } #region Constructors diff --git a/OpenSim/Tests/Common/Mock/TestScene.cs b/OpenSim/Tests/Common/Mock/TestScene.cs index 07bcdce382..328cd2b4e5 100644 --- a/OpenSim/Tests/Common/Mock/TestScene.cs +++ b/OpenSim/Tests/Common/Mock/TestScene.cs @@ -47,6 +47,11 @@ namespace OpenSim.Tests.Common.Mock dumpAssetsToFile, config, simulatorVersion) { } + + ~TestScene() + { + Console.WriteLine("TestScene destructor called for {0}", RegionInfo.RegionName); + } /// /// Temporarily override session authentication for tests (namely teleport). diff --git a/OpenSim/Tests/Torture/ObjectTortureTests.cs b/OpenSim/Tests/Torture/ObjectTortureTests.cs index 444b7ecf35..74b336eeb9 100644 --- a/OpenSim/Tests/Torture/ObjectTortureTests.cs +++ b/OpenSim/Tests/Torture/ObjectTortureTests.cs @@ -131,7 +131,7 @@ namespace OpenSim.Tests.Torture TimeSpan elapsed = DateTime.Now - start; // long processMemoryAlloc = process.PrivateMemorySize64 - startProcessMemory; - long processGcAlloc = GC.GetTotalMemory(false) - startGcMemory; + long endGcMemory = GC.GetTotalMemory(false); for (int i = 1; i <= objectsToAdd; i++) { @@ -141,9 +141,19 @@ namespace OpenSim.Tests.Torture string.Format("Object {0} could not be retrieved", i)); } + // This does not work to fire the SceneObjectGroup destructors - something else is hanging on to them. +// scene.DeleteAllSceneObjects(); + Console.WriteLine( - "Took {0}ms, {1}MB to create {2} objects each containing {3} prim(s)", - Math.Round(elapsed.TotalMilliseconds), processGcAlloc / 1024 / 1024, objectsToAdd, primsInEachObject); + "Took {0}ms, {1}MB ({2} - {3}) to create {4} objects each containing {5} prim(s)", + Math.Round(elapsed.TotalMilliseconds), + (endGcMemory - startGcMemory) / 1024 / 1024, + endGcMemory / 1024 / 1024, + startGcMemory / 1024 / 1024, + objectsToAdd, + primsInEachObject); + + scene = null; } } } \ No newline at end of file diff --git a/OpenSim/Tests/Torture/ScriptTortureTests.cs b/OpenSim/Tests/Torture/ScriptTortureTests.cs index c0239ba5b6..d94bbde680 100644 --- a/OpenSim/Tests/Torture/ScriptTortureTests.cs +++ b/OpenSim/Tests/Torture/ScriptTortureTests.cs @@ -107,6 +107,8 @@ namespace OpenSim.Tests.Torture m_expectedChatMessages = scriptsToCreate; int startingObjectIdTail = 0x100; + GC.Collect(); + for (int idTail = startingObjectIdTail;idTail < startingObjectIdTail + scriptsToCreate; idTail++) { AddObjectAndScript(idTail, userId); From a4367e75d39b3c3ba8aa0481c8bcb11991f7bb54 Mon Sep 17 00:00:00 2001 From: "Justin Clark-Casey (justincc)" Date: Tue, 7 Feb 2012 23:15:23 +0000 Subject: [PATCH 3/3] Set UseMeshiesPhysicsMesh = true in [Mesh] by default This means that uploaded meshes will get a physics (collision) mesh if uploaded with that option via a viewer. --- bin/OpenSimDefaults.ini | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/bin/OpenSimDefaults.ini b/bin/OpenSimDefaults.ini index 01cf7915f1..62fe9d4188 100644 --- a/bin/OpenSimDefaults.ini +++ b/bin/OpenSimDefaults.ini @@ -637,13 +637,12 @@ [Mesh] ; enable / disable Collada mesh support ; default is true - ; AllowMeshUpload = true + AllowMeshUpload = true ; if you use Meshmerizer and want collisions for meshies, setting this to true ; will cause OpenSim to attempt to decode meshies assets, extract the physics - ; mesh, and use it for collisions. This is currently experimental code and enabling - ; it may cause unexpected physics problems. - ;UseMeshiesPhysicsMesh = false + ; mesh, and use it for collisions. + UseMeshiesPhysicsMesh = true [ODEPhysicsSettings]