diff options
Diffstat (limited to 'OpenSim/Data')
-rw-r--r-- | OpenSim/Data/AssetDataBase.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/IAssetData.cs | 2 | ||||
-rw-r--r-- | OpenSim/Data/MSSQL/MSSQLAssetData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/Migration.cs | 9 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLAssetData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/MySQL/MySQLXInventoryData.cs | 10 | ||||
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteAssetData.cs | 4 | ||||
-rw-r--r-- | OpenSim/Data/SQLite/SQLiteXInventoryData.cs | 8 | ||||
-rw-r--r-- | OpenSim/Data/SQLiteLegacy/SQLiteAssetData.cs | 4 |
9 files changed, 34 insertions, 13 deletions
diff --git a/OpenSim/Data/AssetDataBase.cs b/OpenSim/Data/AssetDataBase.cs index e1a810c..b4ae913 100644 --- a/OpenSim/Data/AssetDataBase.cs +++ b/OpenSim/Data/AssetDataBase.cs | |||
@@ -38,7 +38,7 @@ namespace OpenSim.Data | |||
38 | { | 38 | { |
39 | public abstract AssetBase GetAsset(UUID uuid); | 39 | public abstract AssetBase GetAsset(UUID uuid); |
40 | 40 | ||
41 | public abstract void StoreAsset(AssetBase asset); | 41 | public abstract bool StoreAsset(AssetBase asset); |
42 | public abstract bool ExistsAsset(UUID uuid); | 42 | public abstract bool ExistsAsset(UUID uuid); |
43 | 43 | ||
44 | public abstract List<AssetMetadata> FetchAssetMetadataSet(int start, int count); | 44 | public abstract List<AssetMetadata> FetchAssetMetadataSet(int start, int count); |
diff --git a/OpenSim/Data/IAssetData.cs b/OpenSim/Data/IAssetData.cs index 90d5eeb..065d3a5 100644 --- a/OpenSim/Data/IAssetData.cs +++ b/OpenSim/Data/IAssetData.cs | |||
@@ -34,7 +34,7 @@ namespace OpenSim.Data | |||
34 | public interface IAssetDataPlugin : IPlugin | 34 | public interface IAssetDataPlugin : IPlugin |
35 | { | 35 | { |
36 | AssetBase GetAsset(UUID uuid); | 36 | AssetBase GetAsset(UUID uuid); |
37 | void StoreAsset(AssetBase asset); | 37 | bool StoreAsset(AssetBase asset); |
38 | bool ExistsAsset(UUID uuid); | 38 | bool ExistsAsset(UUID uuid); |
39 | List<AssetMetadata> FetchAssetMetadataSet(int start, int count); | 39 | List<AssetMetadata> FetchAssetMetadataSet(int start, int count); |
40 | void Initialise(string connect); | 40 | void Initialise(string connect); |
diff --git a/OpenSim/Data/MSSQL/MSSQLAssetData.cs b/OpenSim/Data/MSSQL/MSSQLAssetData.cs index c7488d8..c882555 100644 --- a/OpenSim/Data/MSSQL/MSSQLAssetData.cs +++ b/OpenSim/Data/MSSQL/MSSQLAssetData.cs | |||
@@ -143,7 +143,7 @@ namespace OpenSim.Data.MSSQL | |||
143 | /// Create asset in m_database | 143 | /// Create asset in m_database |
144 | /// </summary> | 144 | /// </summary> |
145 | /// <param name="asset">the asset</param> | 145 | /// <param name="asset">the asset</param> |
146 | override public void StoreAsset(AssetBase asset) | 146 | override public bool StoreAsset(AssetBase asset) |
147 | { | 147 | { |
148 | 148 | ||
149 | string sql = | 149 | string sql = |
@@ -192,10 +192,12 @@ namespace OpenSim.Data.MSSQL | |||
192 | try | 192 | try |
193 | { | 193 | { |
194 | command.ExecuteNonQuery(); | 194 | command.ExecuteNonQuery(); |
195 | return true; | ||
195 | } | 196 | } |
196 | catch(Exception e) | 197 | catch(Exception e) |
197 | { | 198 | { |
198 | m_log.Error("[ASSET DB]: Error storing item :" + e.Message); | 199 | m_log.Error("[ASSET DB]: Error storing item :" + e.Message); |
200 | return false; | ||
199 | } | 201 | } |
200 | } | 202 | } |
201 | } | 203 | } |
diff --git a/OpenSim/Data/Migration.cs b/OpenSim/Data/Migration.cs index 4f113a2..c177097 100644 --- a/OpenSim/Data/Migration.cs +++ b/OpenSim/Data/Migration.cs | |||
@@ -67,7 +67,6 @@ namespace OpenSim.Data | |||
67 | /// really want is the assembly of your database class. | 67 | /// really want is the assembly of your database class. |
68 | /// | 68 | /// |
69 | /// </summary> | 69 | /// </summary> |
70 | |||
71 | public class Migration | 70 | public class Migration |
72 | { | 71 | { |
73 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); | 72 | private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); |
@@ -173,8 +172,6 @@ namespace OpenSim.Data | |||
173 | ExecuteScript(_conn, script); | 172 | ExecuteScript(_conn, script); |
174 | } | 173 | } |
175 | 174 | ||
176 | |||
177 | |||
178 | public void Update() | 175 | public void Update() |
179 | { | 176 | { |
180 | InitMigrationsTable(); | 177 | InitMigrationsTable(); |
@@ -186,8 +183,8 @@ namespace OpenSim.Data | |||
186 | return; | 183 | return; |
187 | 184 | ||
188 | // to prevent people from killing long migrations. | 185 | // to prevent people from killing long migrations. |
189 | m_log.InfoFormat("[MIGRATIONS] Upgrading {0} to latest revision {1}.", _type, migrations.Keys[migrations.Count - 1]); | 186 | m_log.InfoFormat("[MIGRATIONS]: Upgrading {0} to latest revision {1}.", _type, migrations.Keys[migrations.Count - 1]); |
190 | m_log.Info("[MIGRATIONS] NOTE: this may take a while, don't interupt this process!"); | 187 | m_log.Info("[MIGRATIONS]: NOTE - this may take a while, don't interrupt this process!"); |
191 | 188 | ||
192 | foreach (KeyValuePair<int, string[]> kvp in migrations) | 189 | foreach (KeyValuePair<int, string[]> kvp in migrations) |
193 | { | 190 | { |
@@ -206,7 +203,7 @@ namespace OpenSim.Data | |||
206 | } | 203 | } |
207 | catch (Exception e) | 204 | catch (Exception e) |
208 | { | 205 | { |
209 | m_log.DebugFormat("[MIGRATIONS] Cmd was {0}", e.Message.Replace("\n", " ")); | 206 | m_log.DebugFormat("[MIGRATIONS]: Cmd was {0}", e.Message.Replace("\n", " ")); |
210 | m_log.Debug("[MIGRATIONS]: An error has occurred in the migration. This may mean you could see errors trying to run OpenSim. If you see database related errors, you will need to fix the issue manually. Continuing."); | 207 | m_log.Debug("[MIGRATIONS]: An error has occurred in the migration. This may mean you could see errors trying to run OpenSim. If you see database related errors, you will need to fix the issue manually. Continuing."); |
211 | ExecuteScript("ROLLBACK;"); | 208 | ExecuteScript("ROLLBACK;"); |
212 | } | 209 | } |
diff --git a/OpenSim/Data/MySQL/MySQLAssetData.cs b/OpenSim/Data/MySQL/MySQLAssetData.cs index fe5152a..f9ce3d9 100644 --- a/OpenSim/Data/MySQL/MySQLAssetData.cs +++ b/OpenSim/Data/MySQL/MySQLAssetData.cs | |||
@@ -153,7 +153,7 @@ namespace OpenSim.Data.MySQL | |||
153 | /// </summary> | 153 | /// </summary> |
154 | /// <param name="asset">Asset UUID to create</param> | 154 | /// <param name="asset">Asset UUID to create</param> |
155 | /// <remarks>On failure : Throw an exception and attempt to reconnect to database</remarks> | 155 | /// <remarks>On failure : Throw an exception and attempt to reconnect to database</remarks> |
156 | override public void StoreAsset(AssetBase asset) | 156 | override public bool StoreAsset(AssetBase asset) |
157 | { | 157 | { |
158 | lock (m_dbLock) | 158 | lock (m_dbLock) |
159 | { | 159 | { |
@@ -201,12 +201,14 @@ namespace OpenSim.Data.MySQL | |||
201 | cmd.Parameters.AddWithValue("?data", asset.Data); | 201 | cmd.Parameters.AddWithValue("?data", asset.Data); |
202 | cmd.ExecuteNonQuery(); | 202 | cmd.ExecuteNonQuery(); |
203 | cmd.Dispose(); | 203 | cmd.Dispose(); |
204 | return true; | ||
204 | } | 205 | } |
205 | } | 206 | } |
206 | catch (Exception e) | 207 | catch (Exception e) |
207 | { | 208 | { |
208 | m_log.ErrorFormat("[ASSET DB]: MySQL failure creating asset {0} with name \"{1}\". Error: {2}", | 209 | m_log.ErrorFormat("[ASSET DB]: MySQL failure creating asset {0} with name \"{1}\". Error: {2}", |
209 | asset.FullID, asset.Name, e.Message); | 210 | asset.FullID, asset.Name, e.Message); |
211 | return false; | ||
210 | } | 212 | } |
211 | } | 213 | } |
212 | } | 214 | } |
diff --git a/OpenSim/Data/MySQL/MySQLXInventoryData.cs b/OpenSim/Data/MySQL/MySQLXInventoryData.cs index 0fe801d..3c73095 100644 --- a/OpenSim/Data/MySQL/MySQLXInventoryData.cs +++ b/OpenSim/Data/MySQL/MySQLXInventoryData.cs | |||
@@ -64,14 +64,22 @@ namespace OpenSim.Data.MySQL | |||
64 | 64 | ||
65 | public bool StoreFolder(XInventoryFolder folder) | 65 | public bool StoreFolder(XInventoryFolder folder) |
66 | { | 66 | { |
67 | if (folder.folderName.Length > 64) | ||
68 | folder.folderName = folder.folderName.Substring(0, 64); | ||
69 | |||
67 | return m_Folders.Store(folder); | 70 | return m_Folders.Store(folder); |
68 | } | 71 | } |
69 | 72 | ||
70 | public bool StoreItem(XInventoryItem item) | 73 | public bool StoreItem(XInventoryItem item) |
71 | { | 74 | { |
75 | if (item.inventoryName.Length > 64) | ||
76 | item.inventoryName = item.inventoryName.Substring(0, 64); | ||
77 | if (item.inventoryDescription.Length > 128) | ||
78 | item.inventoryDescription = item.inventoryDescription.Substring(0, 128); | ||
79 | |||
72 | return m_Items.Store(item); | 80 | return m_Items.Store(item); |
73 | } | 81 | } |
74 | 82 | ||
75 | public bool DeleteFolders(string field, string val) | 83 | public bool DeleteFolders(string field, string val) |
76 | { | 84 | { |
77 | return m_Folders.Delete(field, val); | 85 | return m_Folders.Delete(field, val); |
diff --git a/OpenSim/Data/SQLite/SQLiteAssetData.cs b/OpenSim/Data/SQLite/SQLiteAssetData.cs index 16e560c..75e51a3 100644 --- a/OpenSim/Data/SQLite/SQLiteAssetData.cs +++ b/OpenSim/Data/SQLite/SQLiteAssetData.cs | |||
@@ -119,7 +119,7 @@ namespace OpenSim.Data.SQLite | |||
119 | /// Create an asset | 119 | /// Create an asset |
120 | /// </summary> | 120 | /// </summary> |
121 | /// <param name="asset">Asset Base</param> | 121 | /// <param name="asset">Asset Base</param> |
122 | override public void StoreAsset(AssetBase asset) | 122 | override public bool StoreAsset(AssetBase asset) |
123 | { | 123 | { |
124 | //m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString()); | 124 | //m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString()); |
125 | if (ExistsAsset(asset.FullID)) | 125 | if (ExistsAsset(asset.FullID)) |
@@ -141,6 +141,7 @@ namespace OpenSim.Data.SQLite | |||
141 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); | 141 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); |
142 | 142 | ||
143 | cmd.ExecuteNonQuery(); | 143 | cmd.ExecuteNonQuery(); |
144 | return true; | ||
144 | } | 145 | } |
145 | } | 146 | } |
146 | } | 147 | } |
@@ -161,6 +162,7 @@ namespace OpenSim.Data.SQLite | |||
161 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); | 162 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); |
162 | 163 | ||
163 | cmd.ExecuteNonQuery(); | 164 | cmd.ExecuteNonQuery(); |
165 | return true; | ||
164 | } | 166 | } |
165 | } | 167 | } |
166 | } | 168 | } |
diff --git a/OpenSim/Data/SQLite/SQLiteXInventoryData.cs b/OpenSim/Data/SQLite/SQLiteXInventoryData.cs index 6064538..ca651e1 100644 --- a/OpenSim/Data/SQLite/SQLiteXInventoryData.cs +++ b/OpenSim/Data/SQLite/SQLiteXInventoryData.cs | |||
@@ -66,11 +66,19 @@ namespace OpenSim.Data.SQLite | |||
66 | 66 | ||
67 | public bool StoreFolder(XInventoryFolder folder) | 67 | public bool StoreFolder(XInventoryFolder folder) |
68 | { | 68 | { |
69 | if (folder.folderName.Length > 64) | ||
70 | folder.folderName = folder.folderName.Substring(0, 64); | ||
71 | |||
69 | return m_Folders.Store(folder); | 72 | return m_Folders.Store(folder); |
70 | } | 73 | } |
71 | 74 | ||
72 | public bool StoreItem(XInventoryItem item) | 75 | public bool StoreItem(XInventoryItem item) |
73 | { | 76 | { |
77 | if (item.inventoryName.Length > 64) | ||
78 | item.inventoryName = item.inventoryName.Substring(0, 64); | ||
79 | if (item.inventoryDescription.Length > 128) | ||
80 | item.inventoryDescription = item.inventoryDescription.Substring(0, 128); | ||
81 | |||
74 | return m_Items.Store(item); | 82 | return m_Items.Store(item); |
75 | } | 83 | } |
76 | 84 | ||
diff --git a/OpenSim/Data/SQLiteLegacy/SQLiteAssetData.cs b/OpenSim/Data/SQLiteLegacy/SQLiteAssetData.cs index df50902..3da298b 100644 --- a/OpenSim/Data/SQLiteLegacy/SQLiteAssetData.cs +++ b/OpenSim/Data/SQLiteLegacy/SQLiteAssetData.cs | |||
@@ -119,7 +119,7 @@ namespace OpenSim.Data.SQLiteLegacy | |||
119 | /// Create an asset | 119 | /// Create an asset |
120 | /// </summary> | 120 | /// </summary> |
121 | /// <param name="asset">Asset Base</param> | 121 | /// <param name="asset">Asset Base</param> |
122 | override public void StoreAsset(AssetBase asset) | 122 | override public bool StoreAsset(AssetBase asset) |
123 | { | 123 | { |
124 | //m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString()); | 124 | //m_log.Info("[ASSET DB]: Creating Asset " + asset.FullID.ToString()); |
125 | if (ExistsAsset(asset.FullID)) | 125 | if (ExistsAsset(asset.FullID)) |
@@ -139,6 +139,7 @@ namespace OpenSim.Data.SQLiteLegacy | |||
139 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); | 139 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); |
140 | 140 | ||
141 | cmd.ExecuteNonQuery(); | 141 | cmd.ExecuteNonQuery(); |
142 | return true; | ||
142 | } | 143 | } |
143 | } | 144 | } |
144 | } | 145 | } |
@@ -157,6 +158,7 @@ namespace OpenSim.Data.SQLiteLegacy | |||
157 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); | 158 | cmd.Parameters.Add(new SqliteParameter(":Data", asset.Data)); |
158 | 159 | ||
159 | cmd.ExecuteNonQuery(); | 160 | cmd.ExecuteNonQuery(); |
161 | return true; | ||
160 | } | 162 | } |
161 | } | 163 | } |
162 | } | 164 | } |