<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>Ok, I was to do some research before I replied on this thread, but off the top of my head;<BR>
 <BR>
first of all, we should define what we want the region status data for; the data should guide choice of implementation.<BR>
 <BR>
That said, there is quite a distinct possibility that we can use the _clients_ as our agents for detecting offline region servers.<BR>
 <BR>
Whenever someone tries to teleport off a region, the source region is informed of this, to be able to downgrade avatar presence to child.<BR>
 <BR>
If the teleport fails (the target region is unresponsive) the connection comes back to the region so it should upgrade the avatar presence to root again.<BR>
 <BR>
(Incidentally, I've filed a mantis on this, since we actually don't handle that, and failed teleports results in you coming back to a region, but as a 'child' ie being stuck there and possibly causing all kind of havoc with the ClientView)<BR>
 <BR>
Now, if we handled the failed teleport correctly, this could also notify the grid service that a failed teleport has occurred.<BR>
 <BR>
The grid service could then ping the target region, to check on its state.<BR>
 <BR>
This is an alternative or complement to grid-wide ping sweeps; you probably want both, but could do the sweeps much less frequently.<BR>
 <BR>
Combine this with proper region signon/signoff and I say you got options.<BR>
 <BR>
Best,<BR>
/Stefan<BR>
<BR> <BR>

<HR id=stopSpelling>
<BR>
> From: brianw@terrabox.com<BR>> To: opensim-dev@lists.berlios.de<BR>> Date: Sat, 9 Feb 2008 12:56:10 -0600<BR>> Subject: [Opensim-dev] region status tracking in GridServer<BR>> <BR>> After much IRC discussion I would like to make a couple changes to the<BR>> regions table.<BR>> <BR>> online bool NOT NULL deafult false<BR>> last_seen int(11) NULL<BR>> <BR>> The online column would be updated as a region logs in and out of<BR>> GridServers. This way an external management/status application doesn't<BR>> have to pester the grid server for the full list of regions and their<BR>> status. This would also provide data to regions requesting map blocks as<BR>> to the status of a region (a.ka. LL's Red Regions in the map view).<BR>> <BR>> The last_seen column would be of asistance to these same management apps<BR>> in helping the administrator to determine which regions were long term<BR>> MIA or just plain not wanted anymore by walk away grid members.<BR>> <BR>> My main concern is load placed on the grid server and having to ping<BR>> regions by external applications having to probe every region currently<BR>> to tell if it's still around or not.<BR>> <BR>> To acomplish this i'm workign on a patch to implement region_logout<BR>> XMLRPC that would be called via Region.Communications.DeregisterRegion<BR>> (which is currently empty).<BR>> <BR>> I woudl also add an update of RegionProfileData as each RPC call si made<BR>> by a region to GridManager. Database updates would only happen<BR>> periodicly as regions login and logout.<BR>> <BR>> Are there any objections or reasons not to implement this?<BR>> <BR>> _______________________________________________<BR>> Opensim-dev mailing list<BR>> Opensim-dev@lists.berlios.de<BR>> https://lists.berlios.de/mailman/listinfo/opensim-dev<BR><BR></body>
</html>