diff options
author | Melanie Thielker | 2008-07-18 20:50:47 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-07-18 20:50:47 +0000 |
commit | a73d87ef1651ac1e935e0cfebed99282a69c3941 (patch) | |
tree | 5d3428e079e5f720670215b7071da0f331648709 | |
parent | Patch to fix saving of estate managers list loaded during migration. (diff) | |
download | opensim-SC-a73d87ef1651ac1e935e0cfebed99282a69c3941.zip opensim-SC-a73d87ef1651ac1e935e0cfebed99282a69c3941.tar.gz opensim-SC-a73d87ef1651ac1e935e0cfebed99282a69c3941.tar.bz2 opensim-SC-a73d87ef1651ac1e935e0cfebed99282a69c3941.tar.xz |
Introduce a separate connection string for estates, which defaults to the one gi
ven for the region datastore. Removes the flag to store prim inventories, which are now always stored.
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLDataStore.cs | 22 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLDataStore.cs | 23 | ||||
-rw-r--r-- | OpenSim/Data/NHibernate/NHibernateRegionData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/Null/NullDataStore.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteRegionData.cs | 25 | ||||
-rw-r--r-- | OpenSim/Region/Application/OpenSimBase.cs | 9 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/RegionApplicationBase.cs | 9 | ||||
-rw-r--r-- | OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs | 3 | ||||
-rw-r--r-- | OpenSim/Region/Environment/StorageManager.cs | 6 | ||||
-rw-r--r-- | OpenSim/Tools/Export/OpenSimExport.cs | 2 | ||||
-rw-r--r-- | bin/OpenSim.ini.example | 13 |
11 files changed, 20 insertions, 96 deletions
diff --git a/OpenSim/Data/MSSQL/MSSQLDataStore.cs b/OpenSim/Data/MSSQL/MSSQLDataStore.cs index c7d034f..569268e 100644 --- a/OpenSim/Data/MSSQL/MSSQLDataStore.cs +++ b/OpenSim/Data/MSSQL/MSSQLDataStore.cs | |||
@@ -71,7 +71,6 @@ namespace OpenSim.Data.MSSQL | |||
71 | private DataTable m_landAccessListTable; | 71 | private DataTable m_landAccessListTable; |
72 | 72 | ||
73 | /// <summary>Temporary attribute while this is experimental</summary> | 73 | /// <summary>Temporary attribute while this is experimental</summary> |
74 | private bool persistPrimInventories; | ||
75 | 74 | ||
76 | /*********************************************************************** | 75 | /*********************************************************************** |
77 | * | 76 | * |
@@ -83,13 +82,11 @@ namespace OpenSim.Data.MSSQL | |||
83 | /// see IRegionDataStore | 82 | /// see IRegionDataStore |
84 | /// </summary> | 83 | /// </summary> |
85 | /// <param name="connectionString"></param> | 84 | /// <param name="connectionString"></param> |
86 | /// <param name="persistPrimInventories"></param> | 85 | public void Initialise(string connectionString) |
87 | public void Initialise(string connectionString, bool persistPrimInventories) | ||
88 | { | 86 | { |
89 | // Instance.Initialise("", true); | 87 | // Instance.Initialise("", true); |
90 | 88 | ||
91 | m_dataSet = new DataSet(); | 89 | m_dataSet = new DataSet(); |
92 | this.persistPrimInventories = persistPrimInventories; | ||
93 | 90 | ||
94 | m_log.Info("[REGION DB]: MSSql - connecting: " + connectionString); | 91 | m_log.Info("[REGION DB]: MSSql - connecting: " + connectionString); |
95 | m_connection = new SqlConnection(connectionString); | 92 | m_connection = new SqlConnection(connectionString); |
@@ -126,13 +123,10 @@ namespace OpenSim.Data.MSSQL | |||
126 | setupShapeCommands(m_shapeDataAdapter, m_connection); | 123 | setupShapeCommands(m_shapeDataAdapter, m_connection); |
127 | m_shapeDataAdapter.Fill(m_shapeTable); | 124 | m_shapeDataAdapter.Fill(m_shapeTable); |
128 | 125 | ||
129 | if (persistPrimInventories) | ||
130 | { | ||
131 | m_itemsTable = createItemsTable(); | 126 | m_itemsTable = createItemsTable(); |
132 | m_dataSet.Tables.Add(m_itemsTable); | 127 | m_dataSet.Tables.Add(m_itemsTable); |
133 | SetupItemsCommands(m_itemsDataAdapter, m_connection); | 128 | SetupItemsCommands(m_itemsDataAdapter, m_connection); |
134 | m_itemsDataAdapter.Fill(m_itemsTable); | 129 | m_itemsDataAdapter.Fill(m_itemsTable); |
135 | } | ||
136 | 130 | ||
137 | m_terrainTable = createTerrainTable(); | 131 | m_terrainTable = createTerrainTable(); |
138 | m_dataSet.Tables.Add(m_terrainTable); | 132 | m_dataSet.Tables.Add(m_terrainTable); |
@@ -218,10 +212,7 @@ namespace OpenSim.Data.MSSQL | |||
218 | shapeRow.Delete(); | 212 | shapeRow.Delete(); |
219 | } | 213 | } |
220 | 214 | ||
221 | if (persistPrimInventories) | ||
222 | { | ||
223 | RemoveItems(new LLUUID((string)row["UUID"])); | 215 | RemoveItems(new LLUUID((string)row["UUID"])); |
224 | } | ||
225 | 216 | ||
226 | // Remove prim row | 217 | // Remove prim row |
227 | row.Delete(); | 218 | row.Delete(); |
@@ -317,11 +308,8 @@ namespace OpenSim.Data.MSSQL | |||
317 | createdObjects[new LLUUID(objID)].AddPart(prim); | 308 | createdObjects[new LLUUID(objID)].AddPart(prim); |
318 | } | 309 | } |
319 | 310 | ||
320 | if (persistPrimInventories) | ||
321 | { | ||
322 | LoadItems(prim); | 311 | LoadItems(prim); |
323 | } | 312 | } |
324 | } | ||
325 | catch (Exception e) | 313 | catch (Exception e) |
326 | { | 314 | { |
327 | m_log.Error("[DATASTORE]: Failed create prim object, exception and data follows"); | 315 | m_log.Error("[DATASTORE]: Failed create prim object, exception and data follows"); |
@@ -589,10 +577,7 @@ namespace OpenSim.Data.MSSQL | |||
589 | m_primDataAdapter.Update(m_primTable); | 577 | m_primDataAdapter.Update(m_primTable); |
590 | m_shapeDataAdapter.Update(m_shapeTable); | 578 | m_shapeDataAdapter.Update(m_shapeTable); |
591 | 579 | ||
592 | if (persistPrimInventories) | ||
593 | { | ||
594 | m_itemsDataAdapter.Update(m_itemsTable); | 580 | m_itemsDataAdapter.Update(m_itemsTable); |
595 | } | ||
596 | 581 | ||
597 | m_terrainDataAdapter.Update(m_terrainTable); | 582 | m_terrainDataAdapter.Update(m_terrainTable); |
598 | m_landDataAdapter.Update(m_landTable); | 583 | m_landDataAdapter.Update(m_landTable); |
@@ -1378,9 +1363,6 @@ namespace OpenSim.Data.MSSQL | |||
1378 | /// <param name="items"></param> | 1363 | /// <param name="items"></param> |
1379 | public void StorePrimInventory(LLUUID primID, ICollection<TaskInventoryItem> items) | 1364 | public void StorePrimInventory(LLUUID primID, ICollection<TaskInventoryItem> items) |
1380 | { | 1365 | { |
1381 | if (!persistPrimInventories) | ||
1382 | return; | ||
1383 | |||
1384 | m_log.InfoFormat("[REGION DB]: Persisting Prim Inventory with prim ID {0}", primID); | 1366 | m_log.InfoFormat("[REGION DB]: Persisting Prim Inventory with prim ID {0}", primID); |
1385 | 1367 | ||
1386 | // For now, we're just going to crudely remove all the previous inventory items | 1368 | // For now, we're just going to crudely remove all the previous inventory items |
@@ -1749,7 +1731,6 @@ namespace OpenSim.Data.MSSQL | |||
1749 | pDa.Fill(tmpDS, "prims"); | 1731 | pDa.Fill(tmpDS, "prims"); |
1750 | sDa.Fill(tmpDS, "primshapes"); | 1732 | sDa.Fill(tmpDS, "primshapes"); |
1751 | 1733 | ||
1752 | if (persistPrimInventories) | ||
1753 | iDa.Fill(tmpDS, "primitems"); | 1734 | iDa.Fill(tmpDS, "primitems"); |
1754 | 1735 | ||
1755 | tDa.Fill(tmpDS, "terrain"); | 1736 | tDa.Fill(tmpDS, "terrain"); |
@@ -1765,7 +1746,6 @@ namespace OpenSim.Data.MSSQL | |||
1765 | pDa.Fill(tmpDS, "prims"); | 1746 | pDa.Fill(tmpDS, "prims"); |
1766 | sDa.Fill(tmpDS, "primshapes"); | 1747 | sDa.Fill(tmpDS, "primshapes"); |
1767 | 1748 | ||
1768 | if (persistPrimInventories) | ||
1769 | iDa.Fill(tmpDS, "primitems"); | 1749 | iDa.Fill(tmpDS, "primitems"); |
1770 | 1750 | ||
1771 | tDa.Fill(tmpDS, "terrain"); | 1751 | tDa.Fill(tmpDS, "terrain"); |
diff --git a/OpenSim/Data/MySQL/MySQLDataStore.cs b/OpenSim/Data/MySQL/MySQLDataStore.cs index d1db064..74f15cb 100644 --- a/OpenSim/Data/MySQL/MySQLDataStore.cs +++ b/OpenSim/Data/MySQL/MySQLDataStore.cs | |||
@@ -92,9 +92,6 @@ namespace OpenSim.Data.MySQL | |||
92 | private DataTable m_landAccessListTable; | 92 | private DataTable m_landAccessListTable; |
93 | private DataTable m_regionSettingsTable; | 93 | private DataTable m_regionSettingsTable; |
94 | 94 | ||
95 | /// <value>Temporary attribute while this is experimental</value> | ||
96 | private bool persistPrimInventories; | ||
97 | |||
98 | /*********************************************************************** | 95 | /*********************************************************************** |
99 | * | 96 | * |
100 | * Public Interface Functions | 97 | * Public Interface Functions |
@@ -105,13 +102,11 @@ namespace OpenSim.Data.MySQL | |||
105 | /// see IRegionDataStore | 102 | /// see IRegionDataStore |
106 | /// </summary> | 103 | /// </summary> |
107 | /// <param name="connectionstring"></param> | 104 | /// <param name="connectionstring"></param> |
108 | /// <param name="persistPrimInventories"></param> | 105 | public void Initialise(string connectionString) |
109 | public void Initialise(string connectionString, bool persistPrimInventories) | ||
110 | { | 106 | { |
111 | m_connectionString = connectionString; | 107 | m_connectionString = connectionString; |
112 | 108 | ||
113 | m_dataSet = new DataSet(); | 109 | m_dataSet = new DataSet(); |
114 | this.persistPrimInventories = persistPrimInventories; | ||
115 | 110 | ||
116 | int passPosition = 0; | 111 | int passPosition = 0; |
117 | int passEndPosition = 0; | 112 | int passEndPosition = 0; |
@@ -184,13 +179,10 @@ namespace OpenSim.Data.MySQL | |||
184 | m_shapeDataAdapter.Fill(m_shapeTable); | 179 | m_shapeDataAdapter.Fill(m_shapeTable); |
185 | 180 | ||
186 | 181 | ||
187 | if (persistPrimInventories) | ||
188 | { | ||
189 | m_itemsTable = createItemsTable(); | 182 | m_itemsTable = createItemsTable(); |
190 | m_dataSet.Tables.Add(m_itemsTable); | 183 | m_dataSet.Tables.Add(m_itemsTable); |
191 | SetupItemsCommands(m_itemsDataAdapter, m_connection); | 184 | SetupItemsCommands(m_itemsDataAdapter, m_connection); |
192 | m_itemsDataAdapter.Fill(m_itemsTable); | 185 | m_itemsDataAdapter.Fill(m_itemsTable); |
193 | } | ||
194 | 186 | ||
195 | m_terrainTable = createTerrainTable(); | 187 | m_terrainTable = createTerrainTable(); |
196 | m_dataSet.Tables.Add(m_terrainTable); | 188 | m_dataSet.Tables.Add(m_terrainTable); |
@@ -429,10 +421,7 @@ namespace OpenSim.Data.MySQL | |||
429 | shapeRow.Delete(); | 421 | shapeRow.Delete(); |
430 | } | 422 | } |
431 | 423 | ||
432 | if (persistPrimInventories) | ||
433 | { | ||
434 | RemoveItems(uuid); | 424 | RemoveItems(uuid); |
435 | } | ||
436 | 425 | ||
437 | // Remove prim row | 426 | // Remove prim row |
438 | row.Delete(); | 427 | row.Delete(); |
@@ -527,11 +516,8 @@ namespace OpenSim.Data.MySQL | |||
527 | createdObjects[new LLUUID(objID)].AddPart(prim); | 516 | createdObjects[new LLUUID(objID)].AddPart(prim); |
528 | } | 517 | } |
529 | 518 | ||
530 | if (persistPrimInventories) | ||
531 | { | ||
532 | LoadItems(prim); | 519 | LoadItems(prim); |
533 | } | 520 | } |
534 | } | ||
535 | catch (Exception e) | 521 | catch (Exception e) |
536 | { | 522 | { |
537 | m_log.Error("[REGION DB]: Failed create prim object, exception and data follows"); | 523 | m_log.Error("[REGION DB]: Failed create prim object, exception and data follows"); |
@@ -827,10 +813,7 @@ namespace OpenSim.Data.MySQL | |||
827 | m_primDataAdapter.Update(m_primTable); | 813 | m_primDataAdapter.Update(m_primTable); |
828 | m_shapeDataAdapter.Update(m_shapeTable); | 814 | m_shapeDataAdapter.Update(m_shapeTable); |
829 | 815 | ||
830 | if (persistPrimInventories) | ||
831 | { | ||
832 | m_itemsDataAdapter.Update(m_itemsTable); | 816 | m_itemsDataAdapter.Update(m_itemsTable); |
833 | } | ||
834 | 817 | ||
835 | m_terrainDataAdapter.Update(m_terrainTable); | 818 | m_terrainDataAdapter.Update(m_terrainTable); |
836 | m_landDataAdapter.Update(m_landTable); | 819 | m_landDataAdapter.Update(m_landTable); |
@@ -1812,9 +1795,6 @@ namespace OpenSim.Data.MySQL | |||
1812 | /// <param name="items"></param> | 1795 | /// <param name="items"></param> |
1813 | public void StorePrimInventory(LLUUID primID, ICollection<TaskInventoryItem> items) | 1796 | public void StorePrimInventory(LLUUID primID, ICollection<TaskInventoryItem> items) |
1814 | { | 1797 | { |
1815 | if (!persistPrimInventories) | ||
1816 | return; | ||
1817 | |||
1818 | m_log.InfoFormat("[REGION DB]: Persisting Prim Inventory with prim ID {0}", primID); | 1798 | m_log.InfoFormat("[REGION DB]: Persisting Prim Inventory with prim ID {0}", primID); |
1819 | 1799 | ||
1820 | // For now, we're just going to crudely remove all the previous inventory items | 1800 | // For now, we're just going to crudely remove all the previous inventory items |
@@ -2241,7 +2221,6 @@ namespace OpenSim.Data.MySQL | |||
2241 | // pDa.Fill(tmpDS, "prims"); | 2221 | // pDa.Fill(tmpDS, "prims"); |
2242 | // sDa.Fill(tmpDS, "primshapes"); | 2222 | // sDa.Fill(tmpDS, "primshapes"); |
2243 | 2223 | ||
2244 | // if (persistPrimInventories) | ||
2245 | // iDa.Fill(tmpDS, "primitems"); | 2224 | // iDa.Fill(tmpDS, "primitems"); |
2246 | 2225 | ||
2247 | // tDa.Fill(tmpDS, "terrain"); | 2226 | // tDa.Fill(tmpDS, "terrain"); |
diff --git a/OpenSim/Data/NHibernate/NHibernateRegionData.cs b/OpenSim/Data/NHibernate/NHibernateRegionData.cs index 40861ae..55331d5 100644 --- a/OpenSim/Data/NHibernate/NHibernateRegionData.cs +++ b/OpenSim/Data/NHibernate/NHibernateRegionData.cs | |||
@@ -61,7 +61,7 @@ namespace OpenSim.Data.NHibernate | |||
61 | // Initialise("SQLiteDialect;SqliteClientDriver;URI=file:OpenSim.db,version=3", true); | 61 | // Initialise("SQLiteDialect;SqliteClientDriver;URI=file:OpenSim.db,version=3", true); |
62 | // } | 62 | // } |
63 | 63 | ||
64 | public void Initialise(string connect, bool persistpriminventories) | 64 | public void Initialise(string connect) |
65 | { | 65 | { |
66 | // Split out the dialect, driver, and connect string | 66 | // Split out the dialect, driver, and connect string |
67 | char[] split = {';'}; | 67 | char[] split = {';'}; |
diff --git a/OpenSim/Data/Null/NullDataStore.cs b/OpenSim/Data/Null/NullDataStore.cs index e244a5e..76369bd 100644 --- a/OpenSim/Data/Null/NullDataStore.cs +++ b/OpenSim/Data/Null/NullDataStore.cs | |||
@@ -38,7 +38,7 @@ namespace OpenSim.Data.Null | |||
38 | /// </summary> | 38 | /// </summary> |
39 | public class NullDataStore : IRegionDataStore | 39 | public class NullDataStore : IRegionDataStore |
40 | { | 40 | { |
41 | public void Initialise(string dbfile, bool persistPrimInventories) | 41 | public void Initialise(string dbfile) |
42 | { | 42 | { |
43 | return; | 43 | return; |
44 | } | 44 | } |
diff --git a/OpenSim/Data/SQLite/SQLiteRegionData.cs b/OpenSim/Data/SQLite/SQLiteRegionData.cs index 4e87e0d..6e30060 100644 --- a/OpenSim/Data/SQLite/SQLiteRegionData.cs +++ b/OpenSim/Data/SQLite/SQLiteRegionData.cs | |||
@@ -68,7 +68,6 @@ namespace OpenSim.Data.SQLite | |||
68 | private String m_connectionString; | 68 | private String m_connectionString; |
69 | 69 | ||
70 | // Temporary attribute while this is experimental | 70 | // Temporary attribute while this is experimental |
71 | private bool persistPrimInventories; | ||
72 | 71 | ||
73 | /*********************************************************************** | 72 | /*********************************************************************** |
74 | * | 73 | * |
@@ -84,11 +83,9 @@ namespace OpenSim.Data.SQLite | |||
84 | /// </list> | 83 | /// </list> |
85 | /// </summary> | 84 | /// </summary> |
86 | /// <param name="connectionString">the connection string</param> | 85 | /// <param name="connectionString">the connection string</param> |
87 | /// <param name="persistPrimInventories">?</param> | 86 | public void Initialise(string connectionString) |
88 | public void Initialise(string connectionString, bool persistPrimInventories) | ||
89 | { | 87 | { |
90 | m_connectionString = connectionString; | 88 | m_connectionString = connectionString; |
91 | this.persistPrimInventories = persistPrimInventories; | ||
92 | 89 | ||
93 | ds = new DataSet(); | 90 | ds = new DataSet(); |
94 | 91 | ||
@@ -137,12 +134,9 @@ namespace OpenSim.Data.SQLite | |||
137 | ds.Tables.Add(createShapeTable()); | 134 | ds.Tables.Add(createShapeTable()); |
138 | setupShapeCommands(shapeDa, m_conn); | 135 | setupShapeCommands(shapeDa, m_conn); |
139 | 136 | ||
140 | if (persistPrimInventories) | ||
141 | { | ||
142 | ds.Tables.Add(createItemsTable()); | 137 | ds.Tables.Add(createItemsTable()); |
143 | setupItemsCommands(itemsDa, m_conn); | 138 | setupItemsCommands(itemsDa, m_conn); |
144 | itemsDa.Fill(ds.Tables["primitems"]); | 139 | itemsDa.Fill(ds.Tables["primitems"]); |
145 | } | ||
146 | 140 | ||
147 | ds.Tables.Add(createTerrainTable()); | 141 | ds.Tables.Add(createTerrainTable()); |
148 | setupTerrainCommands(terrainDa, m_conn); | 142 | setupTerrainCommands(terrainDa, m_conn); |
@@ -267,10 +261,7 @@ namespace OpenSim.Data.SQLite | |||
267 | shapeRow.Delete(); | 261 | shapeRow.Delete(); |
268 | } | 262 | } |
269 | 263 | ||
270 | if (persistPrimInventories) | ||
271 | { | ||
272 | RemoveItems(uuid); | 264 | RemoveItems(uuid); |
273 | } | ||
274 | 265 | ||
275 | // Remove prim row | 266 | // Remove prim row |
276 | row.Delete(); | 267 | row.Delete(); |
@@ -367,11 +358,8 @@ namespace OpenSim.Data.SQLite | |||
367 | createdObjects[new LLUUID(objID)].AddPart(prim); | 358 | createdObjects[new LLUUID(objID)].AddPart(prim); |
368 | } | 359 | } |
369 | 360 | ||
370 | if (persistPrimInventories) | ||
371 | { | ||
372 | LoadItems(prim); | 361 | LoadItems(prim); |
373 | } | 362 | } |
374 | } | ||
375 | catch (Exception e) | 363 | catch (Exception e) |
376 | { | 364 | { |
377 | m_log.Error("[REGION DB]: Failed create prim object, exception and data follows"); | 365 | m_log.Error("[REGION DB]: Failed create prim object, exception and data follows"); |
@@ -615,10 +603,7 @@ namespace OpenSim.Data.SQLite | |||
615 | primDa.Update(ds, "prims"); | 603 | primDa.Update(ds, "prims"); |
616 | shapeDa.Update(ds, "primshapes"); | 604 | shapeDa.Update(ds, "primshapes"); |
617 | 605 | ||
618 | if (persistPrimInventories) | ||
619 | { | ||
620 | itemsDa.Update(ds, "primitems"); | 606 | itemsDa.Update(ds, "primitems"); |
621 | } | ||
622 | 607 | ||
623 | terrainDa.Update(ds, "terrain"); | 608 | terrainDa.Update(ds, "terrain"); |
624 | landDa.Update(ds, "land"); | 609 | landDa.Update(ds, "land"); |
@@ -1475,9 +1460,6 @@ namespace OpenSim.Data.SQLite | |||
1475 | /// <param name="items"></param> | 1460 | /// <param name="items"></param> |
1476 | public void StorePrimInventory(LLUUID primID, ICollection<TaskInventoryItem> items) | 1461 | public void StorePrimInventory(LLUUID primID, ICollection<TaskInventoryItem> items) |
1477 | { | 1462 | { |
1478 | if (!persistPrimInventories) | ||
1479 | return; | ||
1480 | |||
1481 | m_log.InfoFormat("[REGION DB]: Entered StorePrimInventory with prim ID {0}", primID); | 1463 | m_log.InfoFormat("[REGION DB]: Entered StorePrimInventory with prim ID {0}", primID); |
1482 | 1464 | ||
1483 | DataTable dbItems = ds.Tables["primitems"]; | 1465 | DataTable dbItems = ds.Tables["primitems"]; |
@@ -1779,8 +1761,6 @@ namespace OpenSim.Data.SQLite | |||
1779 | // m_log.Warn("[REGION DB]: Shapes Table Already Exists"); | 1761 | // m_log.Warn("[REGION DB]: Shapes Table Already Exists"); |
1780 | // } | 1762 | // } |
1781 | 1763 | ||
1782 | // if (persistPrimInventories) | ||
1783 | // { | ||
1784 | // try | 1764 | // try |
1785 | // { | 1765 | // { |
1786 | // icmd.ExecuteNonQuery(); | 1766 | // icmd.ExecuteNonQuery(); |
@@ -1789,7 +1769,6 @@ namespace OpenSim.Data.SQLite | |||
1789 | // { | 1769 | // { |
1790 | // m_log.Warn("[REGION DB]: Primitives Inventory Table Already Exists"); | 1770 | // m_log.Warn("[REGION DB]: Primitives Inventory Table Already Exists"); |
1791 | // } | 1771 | // } |
1792 | // } | ||
1793 | 1772 | ||
1794 | // try | 1773 | // try |
1795 | // { | 1774 | // { |
@@ -1851,7 +1830,6 @@ namespace OpenSim.Data.SQLite | |||
1851 | pDa.Fill(tmpDS, "prims"); | 1830 | pDa.Fill(tmpDS, "prims"); |
1852 | sDa.Fill(tmpDS, "primshapes"); | 1831 | sDa.Fill(tmpDS, "primshapes"); |
1853 | 1832 | ||
1854 | if (persistPrimInventories) | ||
1855 | iDa.Fill(tmpDS, "primitems"); | 1833 | iDa.Fill(tmpDS, "primitems"); |
1856 | 1834 | ||
1857 | tDa.Fill(tmpDS, "terrain"); | 1835 | tDa.Fill(tmpDS, "terrain"); |
@@ -1874,7 +1852,6 @@ namespace OpenSim.Data.SQLite | |||
1874 | // pDa.Fill(tmpDS, "prims"); | 1852 | // pDa.Fill(tmpDS, "prims"); |
1875 | // sDa.Fill(tmpDS, "primshapes"); | 1853 | // sDa.Fill(tmpDS, "primshapes"); |
1876 | 1854 | ||
1877 | // if (persistPrimInventories) | ||
1878 | // iDa.Fill(tmpDS, "primitems"); | 1855 | // iDa.Fill(tmpDS, "primitems"); |
1879 | 1856 | ||
1880 | // tDa.Fill(tmpDS, "terrain"); | 1857 | // tDa.Fill(tmpDS, "terrain"); |
diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs index 910ec55..05e4f46 100644 --- a/OpenSim/Region/Application/OpenSimBase.cs +++ b/OpenSim/Region/Application/OpenSimBase.cs | |||
@@ -300,9 +300,8 @@ namespace OpenSim | |||
300 | } | 300 | } |
301 | m_storageConnectionString | 301 | m_storageConnectionString |
302 | = startupConfig.GetString("storage_connection_string", "URI=file:OpenSim.db,version=3"); | 302 | = startupConfig.GetString("storage_connection_string", "URI=file:OpenSim.db,version=3"); |
303 | m_storagePersistPrimInventories | 303 | m_estateConnectionString |
304 | = startupConfig.GetBoolean("storage_prim_inventories", true); | 304 | = startupConfig.GetString("estate_connection_string", m_storageConnectionString); |
305 | |||
306 | m_scriptEngine = startupConfig.GetString("script_engine", "OpenSim.Region.ScriptEngine.DotNetEngine.dll"); | 305 | m_scriptEngine = startupConfig.GetString("script_engine", "OpenSim.Region.ScriptEngine.DotNetEngine.dll"); |
307 | m_assetStorage = startupConfig.GetString("asset_database", "local"); | 306 | m_assetStorage = startupConfig.GetString("asset_database", "local"); |
308 | m_clientstackDll = startupConfig.GetString("clientstack_plugin", "OpenSim.Region.ClientStack.LindenUDP.dll"); | 307 | m_clientstackDll = startupConfig.GetString("clientstack_plugin", "OpenSim.Region.ClientStack.LindenUDP.dll"); |
@@ -555,9 +554,9 @@ namespace OpenSim | |||
555 | return clientServer; | 554 | return clientServer; |
556 | } | 555 | } |
557 | 556 | ||
558 | protected override StorageManager CreateStorageManager(string connectionstring) | 557 | protected override StorageManager CreateStorageManager(string connectionstring, string estateconnectionstring) |
559 | { | 558 | { |
560 | return new StorageManager(m_storageDll, connectionstring, m_storagePersistPrimInventories); | 559 | return new StorageManager(m_storageDll, connectionstring, estateconnectionstring); |
561 | } | 560 | } |
562 | 561 | ||
563 | protected override ClientStackManager CreateClientStackManager() | 562 | protected override ClientStackManager CreateClientStackManager() |
diff --git a/OpenSim/Region/ClientStack/RegionApplicationBase.cs b/OpenSim/Region/ClientStack/RegionApplicationBase.cs index dadaf88..3e941cf 100644 --- a/OpenSim/Region/ClientStack/RegionApplicationBase.cs +++ b/OpenSim/Region/ClientStack/RegionApplicationBase.cs | |||
@@ -62,13 +62,10 @@ namespace OpenSim.Region.ClientStack | |||
62 | 62 | ||
63 | protected StorageManager m_storageManager; | 63 | protected StorageManager m_storageManager; |
64 | protected string m_storageConnectionString; | 64 | protected string m_storageConnectionString; |
65 | protected string m_estateConnectionString; | ||
65 | 66 | ||
66 | protected ClientStackManager m_clientStackManager; | 67 | protected ClientStackManager m_clientStackManager; |
67 | 68 | ||
68 | // An attribute to indicate whether prim inventories should be persisted. | ||
69 | // Probably will be temporary until this stops being experimental. | ||
70 | protected bool m_storagePersistPrimInventories; | ||
71 | |||
72 | public SceneManager SceneManager | 69 | public SceneManager SceneManager |
73 | { | 70 | { |
74 | get { return m_sceneManager; } | 71 | get { return m_sceneManager; } |
@@ -78,7 +75,7 @@ namespace OpenSim.Region.ClientStack | |||
78 | { | 75 | { |
79 | base.Startup(); | 76 | base.Startup(); |
80 | 77 | ||
81 | m_storageManager = CreateStorageManager(m_storageConnectionString); | 78 | m_storageManager = CreateStorageManager(m_storageConnectionString, m_estateConnectionString); |
82 | 79 | ||
83 | m_clientStackManager = CreateClientStackManager(); | 80 | m_clientStackManager = CreateClientStackManager(); |
84 | 81 | ||
@@ -101,7 +98,7 @@ namespace OpenSim.Region.ClientStack | |||
101 | 98 | ||
102 | // protected abstract ConsoleBase CreateConsole(); | 99 | // protected abstract ConsoleBase CreateConsole(); |
103 | protected abstract PhysicsScene GetPhysicsScene(); | 100 | protected abstract PhysicsScene GetPhysicsScene(); |
104 | protected abstract StorageManager CreateStorageManager(string connectionstring); | 101 | protected abstract StorageManager CreateStorageManager(string connectionstring, string estateconnectionstring); |
105 | protected abstract ClientStackManager CreateClientStackManager(); | 102 | protected abstract ClientStackManager CreateClientStackManager(); |
106 | 103 | ||
107 | protected PhysicsScene GetPhysicsScene(string engine, string meshEngine, IConfigSource config) | 104 | protected PhysicsScene GetPhysicsScene(string engine, string meshEngine, IConfigSource config) |
diff --git a/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs b/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs index 0316f20..ad5983c 100644 --- a/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs +++ b/OpenSim/Region/Environment/Interfaces/IRegionDataStore.cs | |||
@@ -39,8 +39,7 @@ namespace OpenSim.Region.Environment.Interfaces | |||
39 | /// </summary> | 39 | /// </summary> |
40 | /// <param name="filename">The file to save the database to (may not be applicable). Alternatively, | 40 | /// <param name="filename">The file to save the database to (may not be applicable). Alternatively, |
41 | /// a connection string for the database</param> | 41 | /// a connection string for the database</param> |
42 | /// <param name="persistPrimInventories">Temporary switch while this option is immature</param> | 42 | void Initialise(string filename); |
43 | void Initialise(string filename, bool persistPrimInventories); | ||
44 | 43 | ||
45 | /// <summary> | 44 | /// <summary> |
46 | /// Stores all object's details apart from inventory | 45 | /// Stores all object's details apart from inventory |
diff --git a/OpenSim/Region/Environment/StorageManager.cs b/OpenSim/Region/Environment/StorageManager.cs index 768e12c..36c9196 100644 --- a/OpenSim/Region/Environment/StorageManager.cs +++ b/OpenSim/Region/Environment/StorageManager.cs | |||
@@ -55,7 +55,7 @@ namespace OpenSim.Region.Environment | |||
55 | m_dataStore = storage; | 55 | m_dataStore = storage; |
56 | } | 56 | } |
57 | 57 | ||
58 | public StorageManager(string dllName, string connectionstring, bool persistPrimInventories) | 58 | public StorageManager(string dllName, string connectionstring, string estateconnectionstring) |
59 | { | 59 | { |
60 | m_log.Info("[DATASTORE]: Attempting to load " + dllName); | 60 | m_log.Info("[DATASTORE]: Attempting to load " + dllName); |
61 | Assembly pluginAssembly = Assembly.LoadFrom(dllName); | 61 | Assembly pluginAssembly = Assembly.LoadFrom(dllName); |
@@ -70,7 +70,7 @@ namespace OpenSim.Region.Environment | |||
70 | { | 70 | { |
71 | IRegionDataStore plug = | 71 | IRegionDataStore plug = |
72 | (IRegionDataStore) Activator.CreateInstance(pluginAssembly.GetType(pluginType.ToString())); | 72 | (IRegionDataStore) Activator.CreateInstance(pluginAssembly.GetType(pluginType.ToString())); |
73 | plug.Initialise(connectionstring, persistPrimInventories); | 73 | plug.Initialise(connectionstring); |
74 | 74 | ||
75 | m_dataStore = plug; | 75 | m_dataStore = plug; |
76 | 76 | ||
@@ -83,7 +83,7 @@ namespace OpenSim.Region.Environment | |||
83 | { | 83 | { |
84 | IEstateDataStore estPlug = | 84 | IEstateDataStore estPlug = |
85 | (IEstateDataStore) Activator.CreateInstance(pluginAssembly.GetType(pluginType.ToString())); | 85 | (IEstateDataStore) Activator.CreateInstance(pluginAssembly.GetType(pluginType.ToString())); |
86 | estPlug.Initialise(connectionstring); | 86 | estPlug.Initialise(estateconnectionstring); |
87 | 87 | ||
88 | m_estateDataStore = estPlug; | 88 | m_estateDataStore = estPlug; |
89 | } | 89 | } |
diff --git a/OpenSim/Tools/Export/OpenSimExport.cs b/OpenSim/Tools/Export/OpenSimExport.cs index 1e7db51..f469d91 100644 --- a/OpenSim/Tools/Export/OpenSimExport.cs +++ b/OpenSim/Tools/Export/OpenSimExport.cs | |||
@@ -54,7 +54,7 @@ namespace OpenSimExport | |||
54 | sman = new StorageManager( | 54 | sman = new StorageManager( |
55 | startup.GetString("storage_plugin", "OpenSim.DataStore.NullStorage.dll"), | 55 | startup.GetString("storage_plugin", "OpenSim.DataStore.NullStorage.dll"), |
56 | startup.GetString("storage_connection_string", String.Empty), | 56 | startup.GetString("storage_connection_string", String.Empty), |
57 | false | 57 | startup.GetString("estate_connection_string", String.Empty) |
58 | ); | 58 | ); |
59 | } | 59 | } |
60 | 60 | ||
diff --git a/bin/OpenSim.ini.example b/bin/OpenSim.ini.example index 491e7dd..afcb8ee 100644 --- a/bin/OpenSim.ini.example +++ b/bin/OpenSim.ini.example | |||
@@ -42,16 +42,9 @@ storage_connection_string="URI=file:OpenSim.db,version=3"; | |||
42 | ; note that the supplied account needs create privilegies if you want it to auto-create needed tables. | 42 | ; note that the supplied account needs create privilegies if you want it to auto-create needed tables. |
43 | ; storage_plugin="OpenSim.Data.MySQL.dll" | 43 | ; storage_plugin="OpenSim.Data.MySQL.dll" |
44 | ; storage_connection_string="Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;"; | 44 | ; storage_connection_string="Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;"; |
45 | 45 | ; If you want to use a different database/server for estate data, then | |
46 | ; turn on experimental storage of prim inventories in the region database | 46 | ; uncomment and change this connect string. Defaults to the above if not set |
47 | 47 | ; estate_connection_string="Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;"; | |
48 | ; Prim inventory storage is now turned on by default | ||
49 | ; However, this option remains in case it needs to be disabled | ||
50 | ; More details of the current state of this can be found at | ||
51 | ; | ||
52 | ; http://opensimulator.org/wiki/OpenSim:Prim_Inventory_Persistence | ||
53 | ; | ||
54 | storage_prim_inventories = true | ||
55 | 48 | ||
56 | ; Select whether you want to use local or grid asset storage. | 49 | ; Select whether you want to use local or grid asset storage. |
57 | ; | 50 | ; |