Ensure no UUID.Zero region ID is ever written to presence. Add a Migration

to add a LastSeen field of type "Timestamp" to Presence for MySQL
avinationmerge
Melanie Thielker 2010-06-21 17:06:05 +02:00
parent 13a0b65a80
commit 973537f819
2 changed files with 11 additions and 1 deletions

View File

@ -78,6 +78,9 @@ namespace OpenSim.Data.MySQL
if (pd.Length == 0) if (pd.Length == 0)
return false; return false;
if (regionID == UUID.Zero)
return;
MySqlCommand cmd = new MySqlCommand(); MySqlCommand cmd = new MySqlCommand();
cmd.CommandText = String.Format("update {0} set RegionID=?RegionID where `SessionID`=?SessionID", m_Realm); cmd.CommandText = String.Format("update {0} set RegionID=?RegionID where `SessionID`=?SessionID", m_Realm);
@ -90,6 +93,5 @@ namespace OpenSim.Data.MySQL
return true; return true;
} }
} }
} }

View File

@ -13,3 +13,11 @@ CREATE UNIQUE INDEX SessionID ON Presence(SessionID);
CREATE INDEX UserID ON Presence(UserID); CREATE INDEX UserID ON Presence(UserID);
COMMIT; COMMIT;
:VERSION 1 # --------------------------
BEGIN;
ALTER TABLE `Presence` ADD COLUMN LastSeen timestamp;
COMMIT;