Commit Graph

67 Commits

Author SHA1 Message Date
Justin Clark-Casey (justincc)
e20b0d5695 minor: Make exceptions thrown by MySQLAssetData more consistent. 2013-04-10 00:03:37 +01:00
Justin Clark-Casey (justincc)
74916ed777 Add more information to warnings logged when asset names and descriptions have to be truncated for database storage
On balance, I still think this is useful because asset names and descriptions can sometimes be helpful in determining what things are.
Even though they are never subsequently (inventory names/descriptions are always used instead).
2013-02-27 21:35:54 +00:00
Justin Clark-Casey (justincc)
522eff6138 Consistently use using() to make sure we dispose of used MySqlCommands where this is not already being done. 2012-04-30 15:54:35 +01:00
Justin Clark-Casey (justincc)
6b51d8a10e In the asset service, check that an asset exists before attempting to store it. 2011-08-17 23:24:41 +01:00
Diva Canto
9923a2ff10 Pull up Assembly of the MySQL classes as a protected property, so that it can be overwritten in subclasses. That way extensions can decide in which assembly migration resources should be looked up. This is just a refactor -- no functional changes whatsoever. 2011-03-08 09:02:29 -08:00
John Hurliman
47ac9f97b1 Re-enabled asset last access time logging in MySQL 2010-09-11 18:29:38 -07:00
AlexRa
64fe823b92 MySQLAssetData.cs now supports asset_flags, CreatorID 2010-05-19 21:50:32 +03:00
AlexRa
deae030145 Some more corrections after MySQL connector update 2010-05-19 02:28:19 +03:00
Diva Canto
b233a4b2ca * Fixed spamming the assets table with map tiles. The tile image ID is now stored in regionsettings. Upon generation of a new tile image, the old one is deleted. Tested for SQLite and MySql standalone.
* Fixed small bug with map search where the local sim regions weren't found.
2010-05-09 13:39:56 -07:00
Melanie
60357d3778 Implement the "delete" path for assets. Adds a new option to allow remote asset deletion in robust handler. 2010-05-09 17:56:52 +01:00
Melanie
9b22393cf3 Add a field asset_flags and a corresponding enum to the asset database. This
CHANGES THE ASSET SERVER PROTOCOL and means you CAN NOT MIX PRIOR VERSIONS
WITH LATER ONES. It may also eat your babies, yada, yada, yada.
The usual cautions for migrations to the assets table apply.
Coding: Can not guarantee nut free.
2010-05-09 17:02:22 +01:00
John Hurliman
df76e95aa2 Changed asset CreatorID to a string 2010-02-22 14:18:59 -08:00
John Hurliman
7665aad002 * Adds CreatorID to asset metadata. This is just the plumbing to support CreatorID, it doesn't modify database backends or OAR files to support storing/loading it 2010-02-22 13:27:17 -08:00
Master ScienceSim
e1b5c61247 Updated MySQL connection management to use the MySQL connection pooling. This should accommodate various timeout problems that exist with the current connection pool code in a more general and standard way. 2010-02-05 18:07:59 -08:00
John Hurliman
afef1ac191 Changing the AssetBase constructors to avoid initializing assets with an unknown asset type, and log an error if it ever does happen 2009-11-05 13:10:58 -08:00
John Hurliman
6309fcc5b4 Reverting the memory leak patch for MySQL. Problems have been reported with the grid server after running for several hours 2009-11-02 11:19:55 -08:00
John Hurliman
730930955a Changing Scene.ForEachClient to use the synchronous for loop instead of Parallel. This is quite possibly the source of some deadlocking, and at the very least the synchronous version gives better stack traces
* Lock the LLUDPClient RTO math * Add a helper function for backing off the RTO, and follow the optional advice in RFC 2988 to clear existing SRTT and RTTVAR values during a backoff

* Removing the unused PrimitiveBaseShape.SculptImage parameter * Improved performance of SceneObjectPart instantiation * ZeroMesher now drops SculptData bytes like Meshmerizer, to allow the texture data to be GCed * Improved typecasting speed in MySQLLegacyRegionData.BuildShape()

* Improved the instantiation of PrimitiveBaseShape
2009-10-25 00:40:21 -07:00
John Hurliman
4790f8576c * Replaced (possibly broken?) math for calculating the unix timestamp in MySQLAssetData with Utils.DateTimeToUnixTime()
* Disabled UpdateAccessTime() function since it was only writing zeros anyways. This gave me a significant performance improvement for startup times and avatar logins in standalone mode
* Load attachments asynchronously so avatars with lots of attachments don't have to race the timeout clock to login
2009-10-14 19:23:44 -07:00
John Hurliman
e7c877407f * Continued work on the new LLUDP implementation. Appears to be functioning, although not everything is reimplemented yet
* Replaced logic in ThreadTracker with a call to System.Diagnostics that does the same thing
* Added Util.StringToBytes256() and Util.StringToBytes1024() to clamp output at byte[256] and byte[1024], respectively
* Fixed formatting for a MySQLAssetData error logging line
2009-10-06 02:38:00 -07:00
John Hurliman
29a4614529 * MySQL data tests now pass by fixing a bad fix for a bad cast on the asset Local member in MySQLAssetData
* First pass at applying the using(){} pattern to IDisposable objects. Always use the using pattern on IDisposable objects whenever possible, do not manually call .Close() or .Dispose() unless there is no other way to write the code. This pass mostly covers OpenSim.Data.MySQL, and should have no functional change (tests still pass)
2009-10-04 13:57:51 -07:00
Jeff Ames
ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Arthur Valadares
604ef5ba79 Fix issue where conversion of temporary boolean variable fails on MySQL 2009-08-21 17:48:45 -03:00
Kunnis
f1287cc7af * Switching IAssetData to follow the new naming schema, removing the separate insert and update methods. 2009-08-19 23:45:22 +01:00
Kunnis
d2e5380cb2 * Fixed MySQL/MySQLAssetData.cs to properly do updates * Removed an extra parameter from MySQL/MySQLInventoryData.cs * Fixed a bug in SQLite/SQLiteAssetData.cs that was causing a NRE when updating an asset. * Improved the BasicAssetTest.cs to do full create/update/get testing * Improved the BasicInventoryTest.cs to do full create/update/get of both a folder and an item * Moved the null ref tests to the start of the PropertyCompareConstraint.cs, so that it doesn't throw when passing in a null item 2009-08-16 14:17:29 -04:00
Kunnis
23d478f2fa Adding in Reflection-based testing, to ensure that all properties are covered. 2009-08-16 13:35:44 -04:00
Justin Clarke Casey
c3bb9ec42c * Apply asset and inventory name and description bound checks to MySQL 2009-07-24 20:01:17 +00:00
Jeff Ames
840de6c036 Minor: Change OpenSim to OpenSimulator in older copyright headers and LICENSE.txt. 2009-06-01 06:37:14 +00:00
lbsa71
29355de6ee * Some more experimental work on distributed assets. Nothing hotwired yet.
* Introduced preprocess step in FetchAsset (Might revert this later)
  * Some minor CCC
  * Added actual implementation of GetUserProfile( uri ) and the corresponding handler to OGS1.
  * Introduced non-functioning GetUserUri( userProfile) awaiting user server wireup (this might move elsewhere)
2009-04-13 20:04:18 +00:00
Justin Clarke Casey
39c6302972 * Improve inventory uuid conversions to make sure that we aren't converting anything that already contains a -
* Among other things, this means that if a migration is interrupted, it can simply be retried
2009-04-09 18:17:52 +00:00
Mike Mazur
a2f07ecd2e Implemented FetchAssetMetadataSet in DB backends.
This method fetches metadata for a subset of the entries in the assets
database. This functionality is used in the ForEach calls in the asset
storage providers in AssetInventoryServer. With this implemented,
frontends such as the BrowseFrontend should now work.

- MySQL: implemented, sanity tested
- SQLite: implemented, sanity tested
- MSSQL: implemented, not tested
- NHibernate: not implemented
2009-03-09 07:29:34 +00:00
Mike Mazur
76c0935ec7 - remove the Metadata property from AssetBase and return all previous
properties as before
- prefix private variables with m_ in AssetBase.cs
- related to Mantis #3122, as mentioned in
  https://lists.berlios.de/pipermail/opensim-dev/2009-February/005088.html
- all services will likely need to be upgraded after this commit
2009-02-17 01:36:44 +00:00
lbsa71
801da4346a * optimized usings. 2009-02-12 09:53:12 +00:00
Mike Mazur
0c03a48fb2 - add OpenSim.Framework.AssetMetadata class. AssetBase is now composed of it
- trim trailing whitespace
2009-02-04 00:01:36 +00:00
Mike Mazur
f8e45e8e98 Rename IAssetProviderPlugin to IAssetDataPlugin aligning with the other data plugins. 2009-02-03 05:20:03 +00:00
Mike Mazur
7aa216d574 Slight cleanup of docs, removing trailing whitespace. 2009-01-28 01:55:45 +00:00
Melanie Thielker
c5395feadd Avoid an invalid cast on legacy data 2009-01-18 23:31:13 +00:00
Homer Horwitz
fb49e010b7 Update the MySQL connector to 5.2.5. Fixes Mantids#2673. Thanks for the hint, jhurliman. 2008-12-22 19:49:17 +00:00
Sean Dague
629b0d9f28 add create_time and access_time to asset db for mysql, as well
as the code to update these at the appropriate time.  This isn't
surfaced in AssetBase yet.

Change the replace into to an insert into for asset create.  Assets
are not supposed to be updatable, and the replace into is more
expensive.

From: Sean Dague <sdague@gmail.com>
2008-11-06 21:21:46 +00:00
Sean Dague
6392671335 let the asset tests run on MySQL. Interesting difference here, the
sqlite driver can handle .Data = Null, the mysql driver can not.  We
should decide which is the right behavior and adjust code for it.
2008-09-24 20:43:32 +00:00
Teravus Ovares
7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Sean Dague
49df787665 remove the legacy pre-Migration database upgrade paths 2008-08-27 18:51:42 +00:00
Jeff Ames
6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Mike Mazur
2270b25265 Thanks, sempuki, for a patch that moves all Grid Server's plugins to
PluginLoader. Fix issue 1871.
2008-07-31 09:24:28 +00:00
Mike Mazur
e0e0db3660 Thanks, sempuki, for a patch that moves all grid plugins to new PluginLoader (issue 1763). 2008-07-18 04:51:41 +00:00
Justin Clarke Casey
1813946937 * remove unused CommitAssets() hook for now 2008-07-07 19:18:44 +00:00
Charles Krinke
7fea52be35 Mantis#1661. Thank you kindly, CMickeyb for a patch that:
patch attached to check for timeouts on mysql connections *before* 
operations occur that are likely to timeout. if timeout occurs or 
the connections is down, it is reconnected before the operation fails.
2008-07-03 22:30:16 +00:00
Justin Clarke Casey
9052c43319 * Drop InvType from the assets table since it is no longer used
* Migration should be automatic on sqlite and mysql
* Migration is not automatic on mssql, you will need to drop the invType column manually
* Migration should be fine, but as for any db change, I would recommend making sure you have backups before moving past this revision
2008-07-02 16:20:54 +00:00
Justin Clarke Casey
31c63558c8 * Fix for http://opensimulator.org/mantis/view.php?id=1512
* Introduce experimental wait timeout checking to mysql region datastore code 
* This should mean that if the mysql connection has timed out, we should automatically reconnect and not fail or drop queries on region database manipulations
2008-06-29 18:10:38 +00:00
Dr Scofield
748f72326d last round of warning squashing. calling it a day now. 2008-06-27 23:03:39 +00:00
Charles Krinke
ca8d1d57e1 Mantis#1591. Thank you graciously, Sempuki for a patch that:
Currently module loading is done ad-hoc. I propose creating a simple 
loader class that leverages Mono.Addins (and perhaps the new .NET 
addins when they become available in mono). Attached is a basic 
patch for review that compiles into HEAD, but doesn't yet replace 
any existing ad-hoc loaders.
2008-06-27 02:15:57 +00:00