diff options
author | Tom Grimshaw | 2010-05-29 01:03:59 -0700 |
---|---|---|
committer | Tom Grimshaw | 2010-05-29 01:03:59 -0700 |
commit | 2f409116db570be77fc75df188a4044250dce226 (patch) | |
tree | 424980e50591e1d4b7d89fe88960e457b19c457d /OpenSim/Services/Interfaces | |
parent | Merge branch 'careminster-presence-refactor' of www.3dhosting.de:/var/git/car... (diff) | |
download | opensim-SC-2f409116db570be77fc75df188a4044250dce226.zip opensim-SC-2f409116db570be77fc75df188a4044250dce226.tar.gz opensim-SC-2f409116db570be77fc75df188a4044250dce226.tar.bz2 opensim-SC-2f409116db570be77fc75df188a4044250dce226.tar.xz |
Stop IGridService from throwing a fatal exception when an IPEndPoint cannot be resolved, and add some handlers to deal with this cleanly; a condition was observed on OSGrid where a neighbouring region with an invalid (unresolveable) hostname would prevent a region from starting. This is bad.
Diffstat (limited to 'OpenSim/Services/Interfaces')
-rw-r--r-- | OpenSim/Services/Interfaces/IGridService.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Services/Interfaces/IGridService.cs b/OpenSim/Services/Interfaces/IGridService.cs index e55b633..94cee57 100644 --- a/OpenSim/Services/Interfaces/IGridService.cs +++ b/OpenSim/Services/Interfaces/IGridService.cs | |||
@@ -259,9 +259,13 @@ namespace OpenSim.Services.Interfaces | |||
259 | } | 259 | } |
260 | catch (SocketException e) | 260 | catch (SocketException e) |
261 | { | 261 | { |
262 | throw new Exception( | 262 | /*throw new Exception( |
263 | "Unable to resolve local hostname " + m_externalHostName + " innerException of type '" + | 263 | "Unable to resolve local hostname " + m_externalHostName + " innerException of type '" + |
264 | e + "' attached to this exception", e); | 264 | e + "' attached to this exception", e);*/ |
265 | // Don't throw a fatal exception here, instead, return Null and handle it in the caller. | ||
266 | // Reason is, on systems such as OSgrid it has occured that known hostnames stop | ||
267 | // resolving and thus make surrounding regions crash out with this exception. | ||
268 | return null; | ||
265 | } | 269 | } |
266 | 270 | ||
267 | return new IPEndPoint(ia, m_internalEndPoint.Port); | 271 | return new IPEndPoint(ia, m_internalEndPoint.Port); |