Added logging in places where regions are searched for by their location

This commit also fixes the log message "Region already exists in coordinates <{0},{1}>": it was actually showing the *requested* coordinates, instead of the coordinates of the previously-existing link.
This commit is contained in:
Oren Hurvitz
2015-07-22 20:13:53 +03:00
parent 31a216af70
commit 3a2d4c8b05
5 changed files with 60 additions and 20 deletions

View File

@@ -539,13 +539,24 @@ namespace OpenSim.Services.GridService
// multiples of the legacy region size (256).
public GridRegion GetRegionByPosition(UUID scopeID, int x, int y)
{
int snapX = (int)(x / Constants.RegionSize) * (int)Constants.RegionSize;
int snapY = (int)(y / Constants.RegionSize) * (int)Constants.RegionSize;
uint regionX = Util.WorldToRegionLoc((uint)x);
uint regionY = Util.WorldToRegionLoc((uint)y);
int snapX = (int)Util.RegionToWorldLoc(regionX);
int snapY = (int)Util.RegionToWorldLoc(regionY);
RegionData rdata = m_Database.Get(snapX, snapY, scopeID);
if (rdata != null)
{
m_log.DebugFormat("{0} GetRegionByPosition. Found region {1} in database. Pos=<{2},{3}>",
LogHeader, rdata.RegionName, regionX, regionY);
return RegionData2RegionInfo(rdata);
return null;
}
else
{
m_log.DebugFormat("{0} GetRegionByPosition. Did not find region in database. Pos=<{1},{2}>",
LogHeader, regionX, regionY);
return null;
}
}
public GridRegion GetRegionByName(UUID scopeID, string name)