From e128819b20928d6737c7dea44ed9b1fb344d1b01 Mon Sep 17 00:00:00 2001 From: Sean Dague Date: Tue, 11 Mar 2008 00:22:56 +0000 Subject: this fixes up the exponentially growing startup times caused by not deleting the landaccesslist. If this triggers an sqlite error on .NET, we'll need to track that down seperatly. --- OpenSim/Framework/Data.SQLite/SQLiteRegionData.cs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/OpenSim/Framework/Data.SQLite/SQLiteRegionData.cs b/OpenSim/Framework/Data.SQLite/SQLiteRegionData.cs index b724337..e70a971 100644 --- a/OpenSim/Framework/Data.SQLite/SQLiteRegionData.cs +++ b/OpenSim/Framework/Data.SQLite/SQLiteRegionData.cs @@ -49,7 +49,7 @@ namespace OpenSim.Framework.Data.SQLite private const string itemsSelect = "select * from primitems"; private const string terrainSelect = "select * from terrain limit 1"; private const string landSelect = "select * from land"; - private const string landAccessListSelect = "select * from landaccesslist"; + private const string landAccessListSelect = "select distinct * from landaccesslist"; private DataSet ds; private SqliteDataAdapter primDa; @@ -496,14 +496,13 @@ namespace OpenSim.Framework.Data.SQLite { fillLandRow(landRow, parcel.landData, regionUUID); } - //m_conn.Open(); - //using ( - //SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:LandUUID", m_conn)) - //{ - //cmd.Parameters.Add(new SqliteParameter(":LandUUID", Util.ToRawUuidString(parcel.landData.globalID))); - //cmd.ExecuteNonQuery(); - //} - //m_conn.Close(); + + // I know this caused someone issues before, but OpenSim is unusable if we leave this stuff around + using (SqliteCommand cmd = new SqliteCommand("delete from landaccesslist where LandUUID=:LandUUID", m_conn)) + { + cmd.Parameters.Add(new SqliteParameter(":LandUUID", Util.ToRawUuidString(parcel.landData.globalID))); + cmd.ExecuteNonQuery(); + } foreach (ParcelManager.ParcelAccessEntry entry in parcel.landData.parcelAccessList) { -- cgit v1.1