diff options
4 files changed, 28 insertions, 3 deletions
diff --git a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs index a9e2780..9813756 100644 --- a/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs +++ b/OpenSim/Framework/Communications/Cache/UserProfileCacheService.cs | |||
@@ -86,7 +86,30 @@ namespace OpenSim.Framework.Communications.Cache | |||
86 | } | 86 | } |
87 | } | 87 | } |
88 | } | 88 | } |
89 | } | 89 | } |
90 | |||
91 | /// <summary> | ||
92 | /// Remove this user's profile cache. | ||
93 | /// </summary> | ||
94 | /// <param name="userID"></param> | ||
95 | /// <returns>true if the user was successfully removed, false otherwise</returns> | ||
96 | public bool RemoveUser(LLUUID userID) | ||
97 | { | ||
98 | lock (m_userProfiles) | ||
99 | { | ||
100 | if (m_userProfiles.ContainsKey(userID)) | ||
101 | { | ||
102 | m_userProfiles.Remove(userID); | ||
103 | return true; | ||
104 | } | ||
105 | else | ||
106 | { | ||
107 | m_log.WarnFormat("[USER CACHE]: Tried to remove the profile of user {0}, but this was not in the scene", userID); | ||
108 | } | ||
109 | } | ||
110 | |||
111 | return false; | ||
112 | } | ||
90 | 113 | ||
91 | /// <summary> | 114 | /// <summary> |
92 | /// Request the inventory data for the given user. This will occur asynchronously if running on a grid | 115 | /// Request the inventory data for the given user. This will occur asynchronously if running on a grid |
diff --git a/OpenSim/Framework/Communications/LoginResponse.cs b/OpenSim/Framework/Communications/LoginResponse.cs index 9636d16..1b88d10 100644 --- a/OpenSim/Framework/Communications/LoginResponse.cs +++ b/OpenSim/Framework/Communications/LoginResponse.cs | |||
@@ -247,7 +247,7 @@ namespace OpenSim.Framework.UserManagement | |||
247 | { | 247 | { |
248 | return GenerateFailureResponse( | 248 | return GenerateFailureResponse( |
249 | "key", | 249 | "key", |
250 | "The agent inventory service is not responding. Please notify your region operator.", | 250 | "The agent inventory service is not responding. Please notify your login region operator.", |
251 | "false"); | 251 | "false"); |
252 | } | 252 | } |
253 | 253 | ||
diff --git a/OpenSim/Grid/InventoryServer/GridInventoryService.cs b/OpenSim/Grid/InventoryServer/GridInventoryService.cs index 8a45bad..f7c9828 100644 --- a/OpenSim/Grid/InventoryServer/GridInventoryService.cs +++ b/OpenSim/Grid/InventoryServer/GridInventoryService.cs | |||
@@ -110,7 +110,7 @@ namespace OpenSim.Grid.InventoryServer | |||
110 | public InventoryCollection GetUserInventory(Guid rawUserID) | 110 | public InventoryCollection GetUserInventory(Guid rawUserID) |
111 | { | 111 | { |
112 | // uncomment me to simulate an overloaded inventory server | 112 | // uncomment me to simulate an overloaded inventory server |
113 | //Thread.Sleep(40000); | 113 | //Thread.Sleep(25000); |
114 | 114 | ||
115 | LLUUID userID = new LLUUID(rawUserID); | 115 | LLUUID userID = new LLUUID(rawUserID); |
116 | 116 | ||
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index c5ed958..a3f6948 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -1696,6 +1696,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
1696 | m_sceneGridService.SendCloseChildAgentConnections(agentID, childknownRegions); | 1696 | m_sceneGridService.SendCloseChildAgentConnections(agentID, childknownRegions); |
1697 | 1697 | ||
1698 | RemoveCapsHandler(agentID); | 1698 | RemoveCapsHandler(agentID); |
1699 | |||
1700 | CommsManager.UserProfileCacheService.RemoveUser(agentID); | ||
1699 | } | 1701 | } |
1700 | 1702 | ||
1701 | m_eventManager.TriggerClientClosed(agentID); | 1703 | m_eventManager.TriggerClientClosed(agentID); |