diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Data/MySQL/MySQLRegionData.cs | 119 |
1 files changed, 59 insertions, 60 deletions
diff --git a/OpenSim/Data/MySQL/MySQLRegionData.cs b/OpenSim/Data/MySQL/MySQLRegionData.cs index 70b6d3c..85af5df 100644 --- a/OpenSim/Data/MySQL/MySQLRegionData.cs +++ b/OpenSim/Data/MySQL/MySQLRegionData.cs | |||
@@ -53,27 +53,27 @@ namespace OpenSim.Data.MySQL | |||
53 | private const string m_terrainSelect = "select * from terrain limit 1"; | 53 | private const string m_terrainSelect = "select * from terrain limit 1"; |
54 | private const string m_landSelect = "select * from land"; | 54 | private const string m_landSelect = "select * from land"; |
55 | private const string m_landAccessListSelect = "select * from landaccesslist"; | 55 | private const string m_landAccessListSelect = "select * from landaccesslist"; |
56 | private const string m_regionSettingsSelect = "select * from regionsettings"; | 56 | private const string m_regionSettingsSelect = "select * from regionsettings"; |
57 | private const string m_waitTimeoutSelect = "select @@wait_timeout"; | 57 | private const string m_waitTimeoutSelect = "select @@wait_timeout"; |
58 | 58 | ||
59 | private MySqlConnection m_connection; | 59 | private MySqlConnection m_connection; |
60 | private string m_connectionString; | 60 | private string m_connectionString; |
61 | 61 | ||
62 | /// <summary> | 62 | /// <summary> |
63 | /// Wait timeout for our connection in ticks. | 63 | /// Wait timeout for our connection in ticks. |
64 | /// </summary> | 64 | /// </summary> |
65 | private long m_waitTimeout; | 65 | private long m_waitTimeout; |
66 | 66 | ||
67 | /// <summary> | 67 | /// <summary> |
68 | /// Make our storage of the timeout this amount smaller than it actually is, to give us a margin on long | 68 | /// Make our storage of the timeout this amount smaller than it actually is, to give us a margin on long |
69 | /// running database operations. | 69 | /// running database operations. |
70 | /// </summary> | 70 | /// </summary> |
71 | private long m_waitTimeoutLeeway = 60 * TimeSpan.TicksPerSecond; | 71 | private long m_waitTimeoutLeeway = 60 * TimeSpan.TicksPerSecond; |
72 | 72 | ||
73 | /// <summary> | 73 | /// <summary> |
74 | /// Holds the last tick time that the connection was used. | 74 | /// Holds the last tick time that the connection was used. |
75 | /// </summary> | 75 | /// </summary> |
76 | private long m_lastConnectionUse; | 76 | private long m_lastConnectionUse; |
77 | 77 | ||
78 | private DataSet m_dataSet; | 78 | private DataSet m_dataSet; |
79 | private MySqlDataAdapter m_primDataAdapter; | 79 | private MySqlDataAdapter m_primDataAdapter; |
@@ -105,7 +105,7 @@ namespace OpenSim.Data.MySQL | |||
105 | public void Initialise(string connectionString) | 105 | public void Initialise(string connectionString) |
106 | { | 106 | { |
107 | m_connectionString = connectionString; | 107 | m_connectionString = connectionString; |
108 | 108 | ||
109 | m_dataSet = new DataSet(); | 109 | m_dataSet = new DataSet(); |
110 | 110 | ||
111 | int passPosition = 0; | 111 | int passPosition = 0; |
@@ -132,8 +132,8 @@ namespace OpenSim.Data.MySQL | |||
132 | m_log.Info("[REGION DB]: MySql - connecting: " + displayConnectionString); | 132 | m_log.Info("[REGION DB]: MySql - connecting: " + displayConnectionString); |
133 | m_connection = new MySqlConnection(m_connectionString); | 133 | m_connection = new MySqlConnection(m_connectionString); |
134 | m_connection.Open(); | 134 | m_connection.Open(); |
135 | 135 | ||
136 | GetWaitTimeout(); | 136 | GetWaitTimeout(); |
137 | 137 | ||
138 | // This actually does the roll forward assembly stuff | 138 | // This actually does the roll forward assembly stuff |
139 | Assembly assem = GetType().Assembly; | 139 | Assembly assem = GetType().Assembly; |
@@ -177,12 +177,11 @@ namespace OpenSim.Data.MySQL | |||
177 | m_dataSet.Tables.Add(m_shapeTable); | 177 | m_dataSet.Tables.Add(m_shapeTable); |
178 | SetupShapeCommands(m_shapeDataAdapter, m_connection); | 178 | SetupShapeCommands(m_shapeDataAdapter, m_connection); |
179 | m_shapeDataAdapter.Fill(m_shapeTable); | 179 | m_shapeDataAdapter.Fill(m_shapeTable); |
180 | |||
181 | 180 | ||
182 | m_itemsTable = createItemsTable(); | 181 | m_itemsTable = createItemsTable(); |
183 | m_dataSet.Tables.Add(m_itemsTable); | 182 | m_dataSet.Tables.Add(m_itemsTable); |
184 | SetupItemsCommands(m_itemsDataAdapter, m_connection); | 183 | SetupItemsCommands(m_itemsDataAdapter, m_connection); |
185 | m_itemsDataAdapter.Fill(m_itemsTable); | 184 | m_itemsDataAdapter.Fill(m_itemsTable); |
186 | 185 | ||
187 | m_terrainTable = createTerrainTable(); | 186 | m_terrainTable = createTerrainTable(); |
188 | m_dataSet.Tables.Add(m_terrainTable); | 187 | m_dataSet.Tables.Add(m_terrainTable); |
@@ -205,58 +204,58 @@ namespace OpenSim.Data.MySQL | |||
205 | m_regionSettingsDataAdapter.Fill(m_regionSettingsTable); | 204 | m_regionSettingsDataAdapter.Fill(m_regionSettingsTable); |
206 | } | 205 | } |
207 | } | 206 | } |
208 | 207 | ||
209 | /// <summary> | 208 | /// <summary> |
210 | /// Get the wait_timeout value for our connection | 209 | /// Get the wait_timeout value for our connection |
211 | /// </summary> | 210 | /// </summary> |
212 | protected void GetWaitTimeout() | 211 | protected void GetWaitTimeout() |
213 | { | 212 | { |
214 | MySqlCommand cmd = new MySqlCommand(m_waitTimeoutSelect, m_connection); | 213 | MySqlCommand cmd = new MySqlCommand(m_waitTimeoutSelect, m_connection); |
215 | 214 | ||
216 | using (MySqlDataReader dbReader = cmd.ExecuteReader(CommandBehavior.SingleRow)) | 215 | using (MySqlDataReader dbReader = cmd.ExecuteReader(CommandBehavior.SingleRow)) |
217 | { | 216 | { |
218 | if (dbReader.Read()) | 217 | if (dbReader.Read()) |
219 | { | 218 | { |
220 | m_waitTimeout | 219 | m_waitTimeout |
221 | = Convert.ToInt32(dbReader["@@wait_timeout"]) * TimeSpan.TicksPerSecond + m_waitTimeoutLeeway; | 220 | = Convert.ToInt32(dbReader["@@wait_timeout"]) * TimeSpan.TicksPerSecond + m_waitTimeoutLeeway; |
222 | } | 221 | } |
223 | 222 | ||
224 | dbReader.Close(); | 223 | dbReader.Close(); |
225 | cmd.Dispose(); | 224 | cmd.Dispose(); |
226 | } | 225 | } |
227 | 226 | ||
228 | m_lastConnectionUse = System.DateTime.Now.Ticks; | 227 | m_lastConnectionUse = System.DateTime.Now.Ticks; |
229 | 228 | ||
230 | m_log.DebugFormat( | 229 | m_log.DebugFormat( |
231 | "[REGION DB]: Connection wait timeout {0} seconds", m_waitTimeout / TimeSpan.TicksPerSecond); | 230 | "[REGION DB]: Connection wait timeout {0} seconds", m_waitTimeout / TimeSpan.TicksPerSecond); |
232 | } | 231 | } |
233 | 232 | ||
234 | /// <summary> | 233 | /// <summary> |
235 | /// Should be called before any db operation. This checks to see if the connection has not timed out | 234 | /// Should be called before any db operation. This checks to see if the connection has not timed out |
236 | /// </summary> | 235 | /// </summary> |
237 | protected void CheckConnection() | 236 | protected void CheckConnection() |
238 | { | 237 | { |
239 | //m_log.Debug("[REGION DB]: Checking connection"); | 238 | //m_log.Debug("[REGION DB]: Checking connection"); |
240 | 239 | ||
241 | long timeNow = System.DateTime.Now.Ticks; | 240 | long timeNow = System.DateTime.Now.Ticks; |
242 | if (timeNow - m_lastConnectionUse > m_waitTimeout || m_connection.State != ConnectionState.Open) | 241 | if (timeNow - m_lastConnectionUse > m_waitTimeout || m_connection.State != ConnectionState.Open) |
243 | { | 242 | { |
244 | m_log.DebugFormat("[REGION DB]: Database connection has gone away - reconnecting"); | 243 | m_log.DebugFormat("[REGION DB]: Database connection has gone away - reconnecting"); |
245 | 244 | ||
246 | lock (m_connection) | 245 | lock (m_connection) |
247 | { | 246 | { |
248 | m_connection.Close(); | 247 | m_connection.Close(); |
249 | m_connection = new MySqlConnection(m_connectionString); | 248 | m_connection = new MySqlConnection(m_connectionString); |
250 | m_connection.Open(); | 249 | m_connection.Open(); |
251 | } | 250 | } |
252 | } | 251 | } |
253 | 252 | ||
254 | // Strictly, we should set this after the actual db operation. But it's more convenient to set here rather | 253 | // Strictly, we should set this after the actual db operation. But it's more convenient to set here rather |
255 | // than require the code to call another method - the timeout leeway should be large enough to cover the | 254 | // than require the code to call another method - the timeout leeway should be large enough to cover the |
256 | // inaccuracy. | 255 | // inaccuracy. |
257 | m_lastConnectionUse = timeNow; | 256 | m_lastConnectionUse = timeNow; |
258 | } | 257 | } |
259 | 258 | ||
260 | /// <summary> | 259 | /// <summary> |
261 | /// Given a list of tables, return the version of the tables, as seen in the database | 260 | /// Given a list of tables, return the version of the tables, as seen in the database |
262 | /// </summary> | 261 | /// </summary> |
@@ -271,7 +270,7 @@ namespace OpenSim.Data.MySQL | |||
271 | "SELECT TABLE_NAME, TABLE_COMMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=?dbname", | 270 | "SELECT TABLE_NAME, TABLE_COMMENT FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA=?dbname", |
272 | dbcon); | 271 | dbcon); |
273 | tablesCmd.Parameters.AddWithValue("?dbname", dbcon.Database); | 272 | tablesCmd.Parameters.AddWithValue("?dbname", dbcon.Database); |
274 | 273 | ||
275 | CheckConnection(); | 274 | CheckConnection(); |
276 | using (MySqlDataReader tables = tablesCmd.ExecuteReader()) | 275 | using (MySqlDataReader tables = tablesCmd.ExecuteReader()) |
277 | { | 276 | { |
@@ -465,7 +464,7 @@ namespace OpenSim.Data.MySQL | |||
465 | 464 | ||
466 | lock (m_dataSet) | 465 | lock (m_dataSet) |
467 | { | 466 | { |
468 | CheckConnection(); | 467 | CheckConnection(); |
469 | DataRow[] primsForRegion = prims.Select(byRegion, orderByParent); | 468 | DataRow[] primsForRegion = prims.Select(byRegion, orderByParent); |
470 | m_log.Info("[REGION DB]: " + | 469 | m_log.Info("[REGION DB]: " + |
471 | "Loaded " + primsForRegion.Length + " prims for region: " + regionUUID); | 470 | "Loaded " + primsForRegion.Length + " prims for region: " + regionUUID); |
@@ -587,10 +586,10 @@ namespace OpenSim.Data.MySQL | |||
587 | using (cmd) | 586 | using (cmd) |
588 | { | 587 | { |
589 | delete.Parameters.Add(new MySqlParameter("?RegionUUID", Util.ToRawUuidString(regionID))); | 588 | delete.Parameters.Add(new MySqlParameter("?RegionUUID", Util.ToRawUuidString(regionID))); |
590 | 589 | ||
591 | CheckConnection(); | 590 | CheckConnection(); |
592 | delete.ExecuteNonQuery(); | 591 | delete.ExecuteNonQuery(); |
593 | 592 | ||
594 | cmd.Parameters.Add(new MySqlParameter("?RegionUUID", Util.ToRawUuidString(regionID))); | 593 | cmd.Parameters.Add(new MySqlParameter("?RegionUUID", Util.ToRawUuidString(regionID))); |
595 | cmd.Parameters.Add(new MySqlParameter("?Revision", revision)); | 594 | cmd.Parameters.Add(new MySqlParameter("?Revision", revision)); |
596 | cmd.Parameters.Add(new MySqlParameter("?Heightfield", serializeTerrain(ter))); | 595 | cmd.Parameters.Add(new MySqlParameter("?Heightfield", serializeTerrain(ter))); |
@@ -774,7 +773,7 @@ namespace OpenSim.Data.MySQL | |||
774 | } | 773 | } |
775 | 774 | ||
776 | /// <summary> | 775 | /// <summary> |
777 | /// | 776 | /// |
778 | /// </summary> | 777 | /// </summary> |
779 | /// <param name="regionUUID"></param> | 778 | /// <param name="regionUUID"></param> |
780 | /// <returns></returns> | 779 | /// <returns></returns> |
@@ -805,7 +804,7 @@ namespace OpenSim.Data.MySQL | |||
805 | } | 804 | } |
806 | 805 | ||
807 | /// <summary> | 806 | /// <summary> |
808 | /// | 807 | /// |
809 | /// </summary> | 808 | /// </summary> |
810 | public void Commit() | 809 | public void Commit() |
811 | { | 810 | { |
@@ -845,7 +844,7 @@ namespace OpenSim.Data.MySQL | |||
845 | **********************************************************************/ | 844 | **********************************************************************/ |
846 | 845 | ||
847 | /// <summary> | 846 | /// <summary> |
848 | /// | 847 | /// |
849 | /// </summary> | 848 | /// </summary> |
850 | /// <param name="dt"></param> | 849 | /// <param name="dt"></param> |
851 | /// <param name="name"></param> | 850 | /// <param name="name"></param> |
@@ -1139,7 +1138,7 @@ namespace OpenSim.Data.MySQL | |||
1139 | **********************************************************************/ | 1138 | **********************************************************************/ |
1140 | 1139 | ||
1141 | /// <summary> | 1140 | /// <summary> |
1142 | /// | 1141 | /// |
1143 | /// </summary> | 1142 | /// </summary> |
1144 | /// <param name="row"></param> | 1143 | /// <param name="row"></param> |
1145 | /// <returns></returns> | 1144 | /// <returns></returns> |
@@ -1315,7 +1314,7 @@ namespace OpenSim.Data.MySQL | |||
1315 | } | 1314 | } |
1316 | 1315 | ||
1317 | /// <summary> | 1316 | /// <summary> |
1318 | /// | 1317 | /// |
1319 | /// </summary> | 1318 | /// </summary> |
1320 | /// <param name="row"></param> | 1319 | /// <param name="row"></param> |
1321 | /// <returns></returns> | 1320 | /// <returns></returns> |
@@ -1374,14 +1373,14 @@ namespace OpenSim.Data.MySQL | |||
1374 | newData.UserLookAt = LLVector3.Zero; | 1373 | newData.UserLookAt = LLVector3.Zero; |
1375 | m_log.ErrorFormat("[PARCEL]: unable to get parcel telehub settings for {1}", newData.Name); | 1374 | m_log.ErrorFormat("[PARCEL]: unable to get parcel telehub settings for {1}", newData.Name); |
1376 | } | 1375 | } |
1377 | 1376 | ||
1378 | newData.ParcelAccessList = new List<ParcelManager.ParcelAccessEntry>(); | 1377 | newData.ParcelAccessList = new List<ParcelManager.ParcelAccessEntry>(); |
1379 | 1378 | ||
1380 | return newData; | 1379 | return newData; |
1381 | } | 1380 | } |
1382 | 1381 | ||
1383 | /// <summary> | 1382 | /// <summary> |
1384 | /// | 1383 | /// |
1385 | /// </summary> | 1384 | /// </summary> |
1386 | /// <param name="row"></param> | 1385 | /// <param name="row"></param> |
1387 | /// <returns></returns> | 1386 | /// <returns></returns> |
@@ -1395,7 +1394,7 @@ namespace OpenSim.Data.MySQL | |||
1395 | } | 1394 | } |
1396 | 1395 | ||
1397 | /// <summary> | 1396 | /// <summary> |
1398 | /// | 1397 | /// |
1399 | /// </summary> | 1398 | /// </summary> |
1400 | /// <param name="val"></param> | 1399 | /// <param name="val"></param> |
1401 | /// <returns></returns> | 1400 | /// <returns></returns> |
@@ -1419,7 +1418,7 @@ namespace OpenSim.Data.MySQL | |||
1419 | } | 1418 | } |
1420 | 1419 | ||
1421 | /// <summary> | 1420 | /// <summary> |
1422 | /// | 1421 | /// |
1423 | /// </summary> | 1422 | /// </summary> |
1424 | /// <param name="row"></param> | 1423 | /// <param name="row"></param> |
1425 | /// <param name="prim"></param> | 1424 | /// <param name="prim"></param> |
@@ -1502,7 +1501,7 @@ namespace OpenSim.Data.MySQL | |||
1502 | } | 1501 | } |
1503 | 1502 | ||
1504 | /// <summary> | 1503 | /// <summary> |
1505 | /// | 1504 | /// |
1506 | /// </summary> | 1505 | /// </summary> |
1507 | /// <param name="row"></param> | 1506 | /// <param name="row"></param> |
1508 | /// <param name="taskItem"></param> | 1507 | /// <param name="taskItem"></param> |
@@ -1532,7 +1531,7 @@ namespace OpenSim.Data.MySQL | |||
1532 | } | 1531 | } |
1533 | 1532 | ||
1534 | /// <summary> | 1533 | /// <summary> |
1535 | /// | 1534 | /// |
1536 | /// </summary> | 1535 | /// </summary> |
1537 | private static void fillRegionSettingsRow(DataRow row, RegionSettings settings) | 1536 | private static void fillRegionSettingsRow(DataRow row, RegionSettings settings) |
1538 | { | 1537 | { |
@@ -1573,7 +1572,7 @@ namespace OpenSim.Data.MySQL | |||
1573 | } | 1572 | } |
1574 | 1573 | ||
1575 | /// <summary> | 1574 | /// <summary> |
1576 | /// | 1575 | /// |
1577 | /// </summary> | 1576 | /// </summary> |
1578 | /// <param name="row"></param> | 1577 | /// <param name="row"></param> |
1579 | /// <param name="land"></param> | 1578 | /// <param name="land"></param> |
@@ -1618,7 +1617,7 @@ namespace OpenSim.Data.MySQL | |||
1618 | } | 1617 | } |
1619 | 1618 | ||
1620 | /// <summary> | 1619 | /// <summary> |
1621 | /// | 1620 | /// |
1622 | /// </summary> | 1621 | /// </summary> |
1623 | /// <param name="row"></param> | 1622 | /// <param name="row"></param> |
1624 | /// <param name="entry"></param> | 1623 | /// <param name="entry"></param> |
@@ -1631,7 +1630,7 @@ namespace OpenSim.Data.MySQL | |||
1631 | } | 1630 | } |
1632 | 1631 | ||
1633 | /// <summary> | 1632 | /// <summary> |
1634 | /// | 1633 | /// |
1635 | /// </summary> | 1634 | /// </summary> |
1636 | /// <param name="row"></param> | 1635 | /// <param name="row"></param> |
1637 | /// <returns></returns> | 1636 | /// <returns></returns> |
@@ -1694,7 +1693,7 @@ namespace OpenSim.Data.MySQL | |||
1694 | } | 1693 | } |
1695 | 1694 | ||
1696 | /// <summary> | 1695 | /// <summary> |
1697 | /// | 1696 | /// |
1698 | /// </summary> | 1697 | /// </summary> |
1699 | /// <param name="row"></param> | 1698 | /// <param name="row"></param> |
1700 | /// <param name="prim"></param> | 1699 | /// <param name="prim"></param> |
@@ -1731,7 +1730,7 @@ namespace OpenSim.Data.MySQL | |||
1731 | row["ProfileHollow"] = s.ProfileHollow; | 1730 | row["ProfileHollow"] = s.ProfileHollow; |
1732 | row["Texture"] = s.TextureEntry; | 1731 | row["Texture"] = s.TextureEntry; |
1733 | row["ExtraParams"] = s.ExtraParams; | 1732 | row["ExtraParams"] = s.ExtraParams; |
1734 | 1733 | ||
1735 | try | 1734 | try |
1736 | { | 1735 | { |
1737 | row["State"] = s.State; | 1736 | row["State"] = s.State; |
@@ -1754,7 +1753,7 @@ namespace OpenSim.Data.MySQL | |||
1754 | } | 1753 | } |
1755 | 1754 | ||
1756 | /// <summary> | 1755 | /// <summary> |
1757 | /// | 1756 | /// |
1758 | /// </summary> | 1757 | /// </summary> |
1759 | /// <param name="prim"></param> | 1758 | /// <param name="prim"></param> |
1760 | /// <param name="sceneGroupID"></param> | 1759 | /// <param name="sceneGroupID"></param> |
@@ -1911,7 +1910,7 @@ namespace OpenSim.Data.MySQL | |||
1911 | } | 1910 | } |
1912 | 1911 | ||
1913 | /// <summary> | 1912 | /// <summary> |
1914 | /// | 1913 | /// |
1915 | /// </summary> | 1914 | /// </summary> |
1916 | /// <param name="dt"></param> | 1915 | /// <param name="dt"></param> |
1917 | /// <returns></returns> | 1916 | /// <returns></returns> |
@@ -1973,7 +1972,7 @@ namespace OpenSim.Data.MySQL | |||
1973 | } | 1972 | } |
1974 | 1973 | ||
1975 | /// <summary> | 1974 | /// <summary> |
1976 | /// | 1975 | /// |
1977 | /// </summary> | 1976 | /// </summary> |
1978 | /// <param name="da"></param> | 1977 | /// <param name="da"></param> |
1979 | /// <param name="conn"></param> | 1978 | /// <param name="conn"></param> |
@@ -1994,7 +1993,7 @@ namespace OpenSim.Data.MySQL | |||
1994 | } | 1993 | } |
1995 | 1994 | ||
1996 | /// <summary> | 1995 | /// <summary> |
1997 | /// | 1996 | /// |
1998 | /// </summary> | 1997 | /// </summary> |
1999 | /// <param name="da"></param> | 1998 | /// <param name="da"></param> |
2000 | /// <param name="conn"></param> | 1999 | /// <param name="conn"></param> |
@@ -2027,7 +2026,7 @@ namespace OpenSim.Data.MySQL | |||
2027 | } | 2026 | } |
2028 | 2027 | ||
2029 | /// <summary> | 2028 | /// <summary> |
2030 | /// | 2029 | /// |
2031 | /// </summary> | 2030 | /// </summary> |
2032 | /// <param name="da"></param> | 2031 | /// <param name="da"></param> |
2033 | /// <param name="conn"></param> | 2032 | /// <param name="conn"></param> |
@@ -2038,7 +2037,7 @@ namespace OpenSim.Data.MySQL | |||
2038 | } | 2037 | } |
2039 | 2038 | ||
2040 | /// <summary> | 2039 | /// <summary> |
2041 | /// | 2040 | /// |
2042 | /// </summary> | 2041 | /// </summary> |
2043 | /// <param name="da"></param> | 2042 | /// <param name="da"></param> |
2044 | /// <param name="conn"></param> | 2043 | /// <param name="conn"></param> |
@@ -2052,7 +2051,7 @@ namespace OpenSim.Data.MySQL | |||
2052 | } | 2051 | } |
2053 | 2052 | ||
2054 | /// <summary> | 2053 | /// <summary> |
2055 | /// | 2054 | /// |
2056 | /// </summary> | 2055 | /// </summary> |
2057 | /// <param name="da"></param> | 2056 | /// <param name="da"></param> |
2058 | /// <param name="conn"></param> | 2057 | /// <param name="conn"></param> |
@@ -2063,7 +2062,7 @@ namespace OpenSim.Data.MySQL | |||
2063 | } | 2062 | } |
2064 | 2063 | ||
2065 | /// <summary> | 2064 | /// <summary> |
2066 | /// | 2065 | /// |
2067 | /// </summary> | 2066 | /// </summary> |
2068 | /// <param name="da"></param> | 2067 | /// <param name="da"></param> |
2069 | /// <param name="conn"></param> | 2068 | /// <param name="conn"></param> |
@@ -2082,7 +2081,7 @@ namespace OpenSim.Data.MySQL | |||
2082 | } | 2081 | } |
2083 | 2082 | ||
2084 | /// <summary> | 2083 | /// <summary> |
2085 | /// | 2084 | /// |
2086 | /// </summary> | 2085 | /// </summary> |
2087 | /// <param name="conn">MySQL connection handler</param> | 2086 | /// <param name="conn">MySQL connection handler</param> |
2088 | // private static void InitDB(MySqlConnection conn) | 2087 | // private static void InitDB(MySqlConnection conn) |
@@ -2174,7 +2173,7 @@ namespace OpenSim.Data.MySQL | |||
2174 | // } | 2173 | // } |
2175 | 2174 | ||
2176 | /// <summary> | 2175 | /// <summary> |
2177 | /// | 2176 | /// |
2178 | /// </summary> | 2177 | /// </summary> |
2179 | /// <param name="conn"></param> | 2178 | /// <param name="conn"></param> |
2180 | /// <param name="m"></param> | 2179 | /// <param name="m"></param> |