Commit Graph

538 Commits (5b14941d0f28b47495c895e241ab468edad69b1c)

Author SHA1 Message Date
Justin Clark-Casey (justincc) 802a969267 Fix http://opensimulator.org/mantis/view.php?id=4224
This resolves the problem where eyes and hair would turn white on standalone configurations
When a client receives body part information, for some insane reason or other it always ends up uploading this back to the server and then immediately re-requesting it.
This should have been okay since we stored that asset in cache.  However, the standalone asset service connector was not checking this cache properly, so every time the client made the request for the asset it has just loaded it would get a big fat null back in the face, causing it to make clothes and hair white.
This bug did not affect grids since they use a different service connector.
2010-02-12 21:32:03 +00:00
Melanie 1dfcf68330 Add the friends service skel and correct some namespace issues 2010-02-09 07:05:38 +00:00
Melanie 210649f0d4 Make an exception report more clear. Fix a database access in Presence to
conform to the changes in the generic table handler.
2010-02-08 17:38:05 +00:00
Melanie baaf660511 Merge branch 'master' into presence-refactor
This was a large, heavily conflicted merge and things MAY have got broken.
Please check!
2010-02-08 15:53:38 +00:00
Melanie c6adbccc27 Finish the "Get friends" method 2010-02-07 12:06:00 +00: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
OpenSim Master 5f1f5c29e9 Fixing an incorrect logging message in insertUserRow 2010-02-05 18:06:01 -08:00
OpenSim Master 3e697ad57e * Fixed the Cable Beach inventory server to save the CreatorID as well as properly handling null item names and descriptions * Fixed the MySQL reader to safely handle null values in string columns that can be null 2010-02-05 18:05:57 -08:00
John Hurliman e251f42443 Merge branch 'presence-refactor' of ssh://opensimulator.org/var/git/opensim into presence-refactor 2010-02-05 17:46:37 -08:00
OpenSim Master 310e14cf03 Fixing an incorrect logging message in insertUserRow 2010-02-05 17:45:36 -08:00
OpenSim Master e982397cde * Fixed the Cable Beach inventory server to save the CreatorID as well as properly handling null item names and descriptions * Fixed the MySQL reader to safely handle null values in string columns that can be null 2010-02-05 17:45:31 -08:00
Melanie b92cb6126d Implement the friends data adaptor 2010-02-05 12:31:29 +00:00
Diva Canto bb736cee6b Beginning of friends. 2010-02-01 16:05:59 -08:00
Diva Canto 5ce12c92d9 Fixed a missing field in the last regions table migration. 2010-01-16 08:32:32 -08:00
Melanie 0d5f182c02 Add a handful of new region flags and a small migration 2010-01-15 21:13:57 +00:00
Melanie e189b3056f Add last_seen field to regions table 2010-01-10 02:13:55 +00:00
Melanie 28d6705358 Preliminary work on the new default region setting mechanism 2010-01-09 20:46:32 +00:00
Melanie d14589d1ab Add migrations to add fields to user and auth tables 2010-01-08 18:10:59 +00:00
Melanie 7f960cd595 Merge branch 'master' into presence-refactor 2010-01-04 21:41:33 +00:00
Melanie 1ae9bfc074 Finish conversion if XInventoryService 2010-01-04 20:53:28 +00:00
Melanie e76333555d First stage port of the XInventoryService 2010-01-04 20:53:26 +00:00
Melanie d4d55b4f4b Add the data service 2010-01-04 02:53:22 +00:00
Melanie 6e8d94685d AvatarStore. Untested, but complete 2010-01-04 02:52:43 +00:00
Jeff Ames 70d5b1c34c Formatting cleanup. Add copyright headers. 2010-01-04 06:17:30 +09:00
Diva Canto 4240f2dec6 New LL login service is working! -- tested in standalone only. Things still missing from response, namely Library and Friends. Appearance service is also missing. 2010-01-01 16:54:24 -08:00
Melanie 0d9591bf35 Prevent the creation of duplicate inventory folders in the case of a login
database issue. Now the login will instaead fail later.
2010-01-01 22:51:00 +00:00
Diva Canto c540c93b54 Auth data migration. 2010-01-01 08:45:41 -08:00
Melanie 01f6aee020 Implement avatar picker queries 2009-12-31 02:26:00 +00:00
Melanie 99ad7aac7f Implement saving user account data 2009-12-31 01:34:03 +00:00
Melanie b6097ae9a8 Some modifications to user service. Query by name is implemented now 2009-12-30 22:23:17 +00:00
Diva Canto 28516e2648 Fixed a couple of bugs that were bombing the data migration. 2009-12-29 16:51:59 -08:00
Diva Canto 6eb5754f5a Polished the IUserService interface. 2009-12-29 13:27:21 -08:00
Melanie 8631cea215 Change the interface a bit before someone depends on it's current form 2009-12-29 20:14:26 +00:00
Melanie 18ca978b81 Give the new user tables the once-over. Strip the current set of methods
from IUserAccountService, we need to define what goes in there. Change
the handler to the generic handler. Adjust migrations, add index
2009-12-29 18:31:27 +00:00
Diva Canto e9df86a6d6 * Added useraccount table 2009-12-29 09:22:52 -08:00
Melanie 3249d5be9a Add the indices to really make this table work 2009-12-28 23:47:58 +00:00
Melanie c4f5ac970c Add a migration to add the 3 new fields 2009-12-28 23:45:15 +00:00
Melanie e0fc854f05 Adding new fields and home location methid to presence. Adding cleanup
(deleting all but one presence record) on logout so that they don't pile up.
2009-12-28 23:42:08 +00:00
Melanie 2ed207509b Add the second step of the friends migration to pull data from the old table into the new 2009-12-28 19:12:33 +00:00
Melanie 397a296492 Add the migration for friends and guard the presence Report function 2009-12-28 18:52:24 +00:00
Melanie 9a8f6c79c9 Forgot the migration file 2009-12-28 17:57:45 +00:00
Melanie 831f759644 Add the MySQL presence data module 2009-12-27 03:05:45 +00:00
root b7951d5177 Correct some issues with the last commit 2009-12-26 23:57:49 +00:00
Melanie 0369256720 Close a SQL injection loophole in the new database driver 2009-12-26 23:38:11 +00:00
root 92be01d5e6 Make the GenericTableHandler work as intended 2009-12-26 01:50:21 +00:00
Melanie 9972b12812 Add a generic REPLACE INTO handler for put into the generic table handler 2009-12-26 00:19:54 +00:00
Adam Frisby 963cf25813 * Implements OSSL function: osGetSimulatorMemory - returns the current amount of memory allocated to the simulator process (Moderate Threat Level).
* Cleans redundant information out of the Simulator Version. Versions now look like:
"OpenSimulator 0.6.9(dev) Unix/Mono"
* [Minor] additional log info for MySQLInventoryData
2009-12-13 03:04:16 +11:00
Melanie 204c59c5ac Refix the fix 2009-12-11 02:42:05 +00:00
grid d68b664243 Kill a NRE caused by an error message trying to print unavailable data 2009-12-11 02:42:00 +00:00
Justin Clark-Casey (justincc) c58d30616b Log old position and region information when an orphaned child prim is found 2009-12-02 18:54:24 +00:00
Adam Frisby b516fe67a0 * Implements SQL Rollback support to Inventory Service for quicker backup restoration.
* Can optionally replace the OpenGridMode committed earlier.
* Will create a series of incrementing restore SQL files, one per user, in folders listed per-day.
* For MySql Section of InventoryService INI:
rollback = "true"
rollbackdir = "/absolute/path/to/rollback/storage/dir"
2009-11-23 17:20:03 +11:00
Adam Frisby 4973c057eb * Adds a modicum of additional checking to the Inventory Service (MySQL only)
* Enable "opengridmode=true" in your Inventory Connector (where the mysql connection strings are) to enable if you are running a 'wide-open-grid'.
* More comprehensive rollback support being implemented, should be available later today.
2009-11-23 16:08:06 +11:00
Jeff Ames 9f5c2acd12 Formatting cleanup. 2009-11-23 11:26:06 +09:00
Melanie 23438e66e7 Implement generic delete method 2009-11-18 08:53:07 +00:00
Melanie 06ecdf1967 Tweak presence handling and whip up a database connector and handler
for testign the new generic table handling
2009-11-18 08:21:28 +00:00
Melanie 9997790211 Committing the incomplete table handler to get it into the tree. No user
functionality yet
2009-11-15 20:19:19 +00: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 de71d23e14 Removing Console.WriteLine()s that were brought in with the revert 2009-11-02 11:54:39 -08:00
John Hurliman 67ac9881fa Removing duplicate SceneObjectPart.RotationalVelocity property 2009-11-02 11:28:35 -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 b498693cff * Tweak to region module loading to check for a matching constructor first instead of throwing and catching exceptions
* Commenting out the MySQL startup sequence that cleans out dropped attachments under the advice that it is no longer relevant. If anything, it could be brought back as a database cleanup console command
* Updated to the latest libomv 0.8.0-pre. UUID.TryParse() will no longer throw and catch exceptions for most failed UUID parses
2009-10-27 01:46:14 -07: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 b4526a5a6d * Big performance increase in loading prims from the region database with MySQL
* Handle the AgentFOV packet
* Bypass queuing and throttles for ping checks to make ping times more closely match network latency
* Only track reliable bytes in LLUDPCLient.BytesSinceLastACK
2009-10-18 02:00:42 -07:00
John Hurliman e776dfb1d7 * Changing the "clean dropped attachments" MySQL command to a using statement inside a try/catch. This statement times out for me very frequently
* More verbose logging when zerocoding fails on an outbound packet
2009-10-16 13:22:45 -07:00
John Hurliman a18489dc9b * Change appearance packets from State to Task. This will hopefully fix the cloud issues
* Changed the throttling logic to obey the requested client bandwidth limit but also share bandwidth between some of the categories to improve throughput on high prim or heavily trafficked regions
2009-10-16 12:20:01 -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
Melanie 09cd2ac443 Stop null values from being returned on database queries 2009-10-12 20:46:19 +01:00
John Hurliman c855806548 Reverting MySQLLegacyRegionData spam 2009-10-06 14:26:00 -07:00
John Hurliman a3a8691ebe MySQLLegacyRegionData: Extreme Spam Edition(tm) 2009-10-06 14:18:37 -07:00
John Hurliman fa6027aa09 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim into htb-throttle 2009-10-06 12:15:24 -07:00
Melanie 8a7a947faa Remove the using() constructs from the new style database modules; they caused
the underlying connection of a reader or command to be closed before the
reader or command itself. Added the proper logic to Close and dispose items
in CloseDBConnection. Readers and Connections need Close(), Commands need
Dispose(), in the order Reader, Command, Connection.
Also reinstated 80-column-friendly formatting
2009-10-06 14:30:25 +01: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 6720369376 Added CloseDBConnection() to replace the old CloseReaderCommand(). This will close the MySQLConnection attached to a MySQLCommand. I'm not sure if this accounts for every time a database connection needs to be closed, but it matches up 1:1 with the places where the database connection was previously being closed 2009-10-05 16:39:40 -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
dr scofield (aka dirk husemann) 2107b67f1b - cleaning up LandData/ILandObject capitalization issues
- adding LandDataSerializer to OAR mechanics
2009-10-02 11:31:30 +02:00
Jeff Ames ee205e7e81 Formatting cleanup. 2009-10-01 01:17:47 +09:00
Jeff Ames f00126dc2d Add copyright header. Formatting cleanup. 2009-09-29 08:32:59 +09:00
Melanie 42746e99bd Make the RegionData plugin store the RegionName 2009-09-27 23:02:40 +01:00
Melanie 12640d0824 Prevent manually setting Data["locX"] and Data["locY"], since that would
overwrite the posX and posY members of the structure
2009-09-27 21:58:34 +01:00
Melanie b5bf3f87d5 Merge branch 'master' of ssh://melanie@opensimulator.org/var/git/opensim
Conflicts:
	OpenSim/Data/MySQL/MySQLRegionData.cs
2009-09-27 21:25:10 +01:00
Melanie 8e091f5903 Add the Migration for the regions table 2009-09-27 21:17:23 +01:00
Justin Clark-Casey (justincc) 2995d87d75 minor: remove some mono compiler warnings 2009-09-25 19:29:40 +01:00
Diva Canto 6a5d7650d0 All tests pass for MySQL/MySQLRegionData.
Added OpenSim.GridServer.ini.example that I have been using for testing the ROBUST grid service with the GridClient.
2009-09-24 18:23:55 -07:00
Melanie a251864e64 Add the migration for scoping grid data 2009-09-16 17:56:24 +01:00
Melanie 90a4d4f9f9 Adding the MySQL RegionData service. 2009-09-16 17:52:16 +01:00
Melanie 2a8f66b221 Revising the user account data interfaces. No user functionality yet 2009-09-06 04:28:42 +01:00
Melanie 67f803c919 Add the new AuthStore to migrations. Update OpenSim.Server.ini 2009-09-04 08:10:05 +01:00
Melanie ac40c7a74c Fully implement unencrypted auth token operations 2009-09-04 07:48:09 +01:00
Melanie c9a24ece54 More work on new authentication service 2009-09-04 03:13:32 +01:00
Melanie 90262d4092 Add the user authentication data adapter. This is meant to use a new table
schema, but can read the old ones for compatibility. It should not be used
to write to the old tables unless you know what you're doing!
This is untested and will probably not work.
2009-09-04 00:23:26 +01:00
Melanie f32de6fe88 Thank you, dslake, for a set of patches to improve OpenSim startup
and idle performance.
2009-09-02 03:33:31 +01:00
Arthur Valadares 604ef5ba79 Fix issue where conversion of temporary boolean variable fails on MySQL 2009-08-21 17:48:45 -03:00
Kunnis b1853d9f26 Fixing a spot I missed in assets. Switching Grid to the new naming schema with Store/Get 2009-08-19 23:46:25 +01: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
Jeff Ames 82c888fc6c Add copyright headers. Formatting cleanup. Fix a compiler warning. 2009-08-17 10:29:06 +09: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
Teravus Ovares (Dan Olivares) c8a68fb3fb * Remove hard coded 256 limitations from various places. There's no more 256m limitation within the OpenSimulator framework, however, the LLClient ClientView does not support regions larger then 256 meters so, if you try and make your region larger by setting Constants.RegionSize = 512; in OpenSim.Framework.Constants.cs, the terrain will not display on clients using the LLUDP protocol 2009-08-07 18:40:56 -04:00
Teravus Ovares 64bd9a3354 * Updates libOMV to version 0.7.0
* Uses mantis #3811 as a base (thanks jhuliman) with changes.
* E-mail regarding interface changes sent to the opensim-dev list 
* Archive: https://lists.berlios.de/pipermail/opensim-dev/2009-July/007219.html
2009-07-25 15:49:10 +00:00
Justin Clarke Casey c3bb9ec42c * Apply asset and inventory name and description bound checks to MySQL 2009-07-24 20:01:17 +00:00
Sean Dague fe21189aa4 From: Chris Yeoh <yeohc@au1.ibm.com>
Ooops, sorry there was a bug in the patch and causes an exception
on some system (I think it only happens on windows since it didn't
occur during my testin). I've attached a one liner which fixes the problem.
2009-06-30 13:50:12 +00:00
Sean Dague 3dc2010da6 From: Chris Yeoh <yeohc@au1.ibm.com>
Attached is a patch that changes the oar file saving of creation date/time to an integer
instead of a string. I did this after justincc emailed me saying there is a problem
with internationalisation doing it the old way and I said I'd fix it. Its been
tested with MySQL and I've made the changes for MSSQL but that hasn't been well tested.
2009-06-29 15:05:12 +00:00
Dr Scofield 717fd3b5b9 From: Chris Yeoh <yeohc@au1.ibm.com>
This patch adds oar file date and time (UTC) meta data to an oar file
when it is created.  It also adds a unique ID, though this id does not
in anyway identify the machine that the oar file was created on.

When an oar file with this meta data is loaded this extra information
is saved with the region settings and available via LSL through:

- osLoadedCreationDate()
- osLoadedCreationTime()
- osLoadedCreationID()

If there is no meta data these fields will be blank. Subsequent oar
file loads will erase the information for the previous oar file
load. Persistence has only been implemented for MySQL, the other
backends need updating.

Overall this allows us to much more easily identify the specific version of
software that clients are using. Its very straightforward to edit the oar file
to change the ID string to be something more human friendly.

Included in the patch is a new file OpenSim/Data/MySQL/Resources/030_RegionStore.sql
required for the MySQL DB migration.

btw I had a chat with justincc about this a few weeks ago since he
wrote the oar file import/export and he sounded happy to accept
something that included date/time information but didn't want anything
that would silently leak private information like machine names.
2009-06-03 12:48:04 +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
Dr Scofield 901fdca13b From: Chris Yeoh <cyeoh@au1.ibm.com>
The attached patch implements llPassTouches. It has been added
to the export/import XML along with the flag for AllowedInventoryDrop.

The MySQL backend has been updated as well, though I haven't
done one of those before so could do with a check. I added
the migration mysql file as well.

The other data backends need updating as well.
2009-05-27 18:01:06 +00:00
lbsa71 ba360ede8b * Upped version number to 0.6.5 2009-05-25 11:43:56 +00:00
Dr Scofield c18c1f6c7c Revert "From: Chris Yeoh <cyeoh@au1.ibm.com>"
This reverts r9666. for some reason the mysql update does not work.
2009-05-25 11:32:31 +00:00
Dr Scofield 0bff818d39 From: Chris Yeoh <cyeoh@au1.ibm.com>
The attached patch implements llPassTouches. It has been added
to the export/import XML along with the flag for AllowedInventoryDrop.

The MySQL backend has been updated as well, though I haven't
done one of those before so could do with a check. I added
the migration mysql file as well.

The other data backends need updating as well.
2009-05-25 11:26:36 +00:00
Jeff Ames 5cfd84c924 Update svn properties. 2009-05-17 10:26:00 +00:00
Charles Krinke c1d680b6c3 Thank you kindly, Patnad, for a patch that:
This is to handle the changes in the v1.23 viewer 
of LL regarding the adult rating. With this patch 
a region can be changed to the adult rating from 
LL viewer v1.23 and above.
2009-05-12 03:30:37 +00:00
Sean Dague 51a9c91909 WARNING: contains migration
Since creatorID is no longer treated as a UUID type in the code from the database we need to make sure that it isn't null in the database.  This updates all empty string and null values for this column to the Zero UUID, and makes the column a not null definition with a default fo the Zero UUID.
2009-05-08 14:16:07 +00:00
Sean Dague 3485b2b1c3 now that creatorID is no longer a strict UUID, and the column can still be NULL,
we lost protection from NULL strings.  This puts some protection in for that case.
This may address many of the inventory issues that are being seen intermitently.
2009-05-08 12:28:22 +00:00
Justin Clarke Casey 2284c8509f * Consistently used dashed uuid format for mysql region data, as is done for all other tables
* This revision contains a mysql data migration.  Please backup your mysql region database as a precaution before using this code.
* I also advise that you do a runprebuild[.sh|.bat] and a clean build ("nant clean build" if you're using the command line).
* This change is needed for future id schemes
2009-05-07 14:20:32 +00:00
Sean Dague e0160e5640 add if exists to the drop table 2009-04-22 19:23:38 +00:00
Sean Dague b0ac6cd0e0 add cleardb to estate tests 2009-04-22 19:11:54 +00:00
Sean Dague 45b90ceef1 ensure we've got a clean data environment prior to running the region
tests
2009-04-22 19:00:40 +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
lbsa71 5572a00295 * Moved the DatabaseTestAttribute to Test.Common, and thus included ref to that in all db tests. *phew* 2009-04-09 16:40:02 +00:00
lbsa71 ed33878a0f * tagged some more database tests as such 2009-04-09 07:11:49 +00:00
lbsa71 a707fa7bea * Added custom DatabaseTestAttribute to help separating unit tests from component tests. 2009-04-09 06:42:15 +00:00
Justin Clarke Casey f3c7298fc5 * Make it possible to store creator strings in user inventory items as well as UUIDs
* All existing functionality should be unaffected.
* Database schemas have not been changed.
2009-04-08 17:50:57 +00:00
Homer Horwitz 97fa525f4e Adding migrations for MySQL and SQLite for removing the "old" cloud image.
The new one already in the Library will be reinserted automatically.
Fixes Mantis #964
2009-04-05 17:07:50 +00:00
lbsa71 958d764172 * Upped trunk version number to 0.6.4 as we just tagged 0.6.4-release 2009-04-01 19:44:46 +00:00
Teravus Ovares 52c482a7a7 * This updates LibOMV to the current release 0.6.0 on March 19 2009
* Important:  HttpServer.dll was changed to HttpServer_OpenSim.dll so that the HttpServer references do not conflict if you've copied the OpenMetaverse.Http.dll and requirements to the OpenSimulator bin folder.
This means that if you reference HttpServer.dll in any projects, you will need to change the reference to HttpServer_OpenSim.dll.   It still uses the Same HttpServer namespace though.
2009-03-27 22:13:09 +00:00
Melanie Thielker 412112acba Committing partial work on passing folders across instances. This may crash. 2009-03-23 00:11:34 +00:00
Melanie Thielker 9b82b52096 MYSQL Only: Make items given while offline appear in inventory without
the need to clear cache.
2009-03-22 16:12:48 +00:00
Melanie Thielker 1121a214b9 Add a QueryItem method to the inventory subsystem. Currently implemented for
MySQL only, stubs for the others. This allows updating the cache with a single
item from the database.
2009-03-21 17:46:58 +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
lbsa71 41c883ea47 * Refactored SOP.FolderID weirdness by removing calls to empty setter. YEs, I do realize the setter has to be there for legacy reasons, but since the calls will never acually DO anyhting, I'm removing them.
* So, SOP.FolderID is actually a cruft field that should be removed.
2009-02-25 11:01:38 +00:00
Charles Krinke 8f55b9d735 Mantis#3218. Thank you kindly, TLaukkan (Tommil) for a patch that:
* Added log4net dependency to physxplugin in prebuild.xml.
* Added missing m_log fields to classes.
* Replaced Console.WriteLine with appropriate m_log.Xxxx
* Tested that nant test target runs succesfully.
* Tested that local opensim sandbox starts up without errors.
2009-02-22 20:52:55 +00:00
lbsa71 1cadad9ec6 * Applied a patch that: Added estate ban table to migration scripts and nhibernate mapping. Refactored property getters and setters for estate ban object to support NHibernate.
* Added estate ban table to migration scripts of all supported databases.
* Added nhibernate mapping for EstateBans property of EstateSettings
* Refactored property accessors for EstateBan object.
* Added comments for EstateBan properties.
* Ensured that NHibernate tests pass with NUnitGUI.
* Ensured that nant test target passes.  

This fixes mantis #3210. Thank you, tlaukkan!
2009-02-21 09:39:33 +00:00
lbsa71 2e095f5727 * Upped VersionInfo to 0.6.3 and in the process, changed assemblyinfo to 0.6.3.* to better track down dll ref and overwrite problems. 2009-02-20 16:47:31 +00:00
Melanie Thielker 2d7c15c560 Fix estate ban list persistence in MySQL and reenable tests 2009-02-18 18:48:59 +00:00
Sean Dague 8d23d97084 remove legacy pre-migration code for mysql grid adapter, who knew this
was still in there.
2009-02-18 12:56:28 +00:00
Sean Dague c417a5b619 remove all the very old create and upgrade sql files, these were
outdated by migrations 6 months ago.
2009-02-17 19:06:23 +00:00
lbsa71 93465df5e3 * Moved the nifty MySQLEstateData connectionstring password-stripper out into the Util project 2009-02-17 14:12:57 +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
Mike Mazur 9e88cef033 AssetInventoryServer plugins can't be a dependency for the OpenSim.Data.MySQL addin. 2009-02-16 02:25:53 +00:00
Mike Mazur 8d30472551 Rename NewAssetServer AssetInventoryServer and fully qualify with
OpenSim.Grid.AssetInventoryServer.
2009-02-16 02:25:25 +00:00
Mike Mazur b3c0cea024 - add OpenSim.Grid.AssetServer.Plugins.OpenSim as a dependency for OpenSim.Data.*.addin.xml
- remove OpenSim.Grid.NewAssetServer.exe from bin/OpenSim.Data.addin.xml
- add prebuild.xml section for OpenSim.Grid.AssetServer.Plugins.OpenSim.dll
2009-02-16 02:25:15 +00:00
lbsa71 801da4346a * optimized usings. 2009-02-12 09:53:12 +00:00
Jeff Ames a3d14832af Update svn properties, minor formatting cleanup. 2009-02-09 22:49:05 +00:00
Charles Krinke 29f54db90a Thank you kindly, TLaukkan (Timmil) for a patch that:
* Fixed and added athursv's BasicEstateTest
* Added MySQLEstateTest
* Added SQLiteEstateTest
2009-02-09 22:07:27 +00:00
Dr Scofield 9b66108081 This changeset is the step 1 of 2 in refactoring
OpenSim.Region.Environment into a "framework" part and a modules only
part. This first changeset refactors OpenSim.Region.Environment.Scenes,
OpenSim.Region.Environment.Interfaces, and OpenSim.Region.Interfaces
into OpenSim.Region.Framework.{Interfaces,Scenes} leaving only region
modules in OpenSim.Region.Environment.

The next step will be to move region modules up from
OpenSim.Region.Environment.Modules to OpenSim.Region.CoreModules and
then sort out which modules are really core modules and which should
move out to forge.

I've been very careful to NOT BREAK anything. i hope i've
succeeded. as this is the work of a whole week i hope i managed to
keep track with the applied patches of the last week --- could any of
you that did check in stuff have a look at whether it survived? thx!
2009-02-06 16:55:34 +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
Justin Clarke Casey 13f069b945 * If an orphaned group is found in the mysql or mssql databases (i.e. there is no prim where UUID = SceneGroupID), then force one prim to have UUID = SceneGroupID.
* A warning is posted about this on startup giving the location of the object
* This should allow one class of persistently undeletable prims to be removed
* This change should not cause any issues, but I still suggest that you backup your database beforehand
* If this doesn't work for previously linked objects, then you could also try the workaround in http://opensimulator.org/mantis/view.php?id=3059
* This change has been made to mysql and mssql, but sqlite appears to work in a different way
2009-01-29 20:08:04 +00:00
Mike Mazur 7aa216d574 Slight cleanup of docs, removing trailing whitespace. 2009-01-28 01:55:45 +00:00
Justin Clarke Casey 0828c28501 * Remove unused prims.ParentID field from SQLite and MySQL
* Since this is a db change, as always I strongly recommend that you backup your database before updating to this revision
* Haven't touched MSSQL in case I get it wrong - looking for some kind soul to take care of this.
2009-01-19 15:16:17 +00:00
Melanie Thielker c5395feadd Avoid an invalid cast on legacy data 2009-01-18 23:31:13 +00:00
Sean Dague 7934094cf3 * Added MySQL Grid unit tests
From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2009-01-14 19:34:14 +00:00
Justin Clarke Casey 8d035b196d * Apply http://opensimulator.org/mantis/view.php?id=2948
* This fixes adding and updating user profiles in MySQL on platforms that have a commas as a decimal separator
* Thanks Tommil!
2009-01-07 18:46:27 +00:00
Sean Dague d8a2ad5cb5 change the drop order to see if this affects unit test fails
From: Sean Dague <sdague@gmail.com>
2009-01-05 15:59:08 +00:00
Justin Clarke Casey e64d9b66a9 * Fix http://opensimulator.org/mantis/view.php?id=2889
* Primshapes uuid wasn't being converted to raw (non-dashed) format before being used in primshapes delete command
2008-12-23 20:41:52 +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 444436db15 change a UUID cast to an actual new UUID call to be consistant with
the rest of the assignments here.
2008-12-08 17:06:47 +00:00
Sean Dague a260466147 fix an issue I found where primshapes weren't every being removed
because of a logic error.
attempt to speed up deletes a bit by batching up all the primitem
deletes and primshape deletes into single delete statements.  This
removes the lock/release/lock/release/lock/release for loop.
2008-12-08 16:29:48 +00:00
Justin Clarke Casey 26fd6c741f * Resolve http://opensimulator.org/mantis/view.php?id=2743 and http://opensimulator.org/mantis/view.php?id=2739 by no longer bothering to store or retrieve the local parentID in
the region database
* The original issue is that the now randomly generated local ids do not fit into the int parentID datatype
* However, as far as I know it's actually pointless to store this local parent ID anyway (we already store the groupUUID), especially as we don't bother to store the localID (as 
opposed to UUID itself).
* Conservatively, the actual column will be removed in a later commit
2008-12-02 14:59:52 +00:00
Melanie Thielker bf4ccf3858 Catch all possible exceptions in the mysql module. It throws non-mysql
exceptions as well.
2008-12-02 01:50:15 +00:00
Melanie Thielker 733faf9748 Fix the terrain loader 2008-12-01 19:08:58 +00:00
Melanie Thielker 5727146d61 More reverts. Revert the MySQL database module. This caused more issues
than it solved by trying to use, and then exhausting, the connection pool
2008-12-01 18:59:13 +00:00
Melanie Thielker 38380def17 More changes to the MySQL adapter. take advantage of pooling and run lock-free.
This should finally kill the "There is already an open data reader associated
with this connection, which must be closed first" error that makes people's
builds not save
2008-11-30 05:20:19 +00:00
Jeff Ames 077314cdd3 Update svn properties. Add copyright header. Minor formatting cleanup. 2008-11-30 00:51:40 +00:00
Melanie Thielker d579246257 Explicitly Dispose() all cmd objects 2008-11-29 21:24:54 +00:00
Justin Clarke Casey 8ba6b2b11a * minor: remove mono compiler warnings 2008-11-27 19:51:11 +00:00
Justin Clarke Casey 45c50998c2 * Remove unused and largely unimplemented UpdateUserCurrentRegion()
* please say if this causes you a problem
2008-11-27 19:43:26 +00:00
Justin Clarke Casey c85e2a0fb0 * restore deleted method documentation, some to IRegionDataStore and some to MySQLRegionData
* I would like to keep documentation on methods, even if it sometimes seems obvious (and not all of these are)
2008-11-26 17:42:35 +00:00
Melanie Thielker fdf5f55a5b Yay for unit tests. Increased the type width of the prims and primshapes
tables, and changed the database modules to actually push these doubles
down into the database layer.
2008-11-26 12:23:56 +00:00
Melanie Thielker 4fdda32cd3 A migration to make the floats in prims table be doubles 2008-11-26 11:38:58 +00:00
Melanie Thielker 841c53003f A migration to convert the floats int the database to doubles.
Maybe we don't have to say "Shift happens" as often anymore....
2008-11-26 09:05:11 +00:00
Melanie Thielker 3388584aa8 Fix 2 of the failed tests. Cause terrain queries to return null when no
terrain is found, rather than a default "0" terrain.
Remove the "remove object wrong region" test. UUIDs either are unique
or they're not. This test tested a bad behavior I have chosen not to 
duplicate.
2008-11-26 08:06:14 +00:00
Melanie Thielker 3efdccbb12 Committing the LCO database layer. Native MySQL, no ADO. New reconnect
mechanism to prevent prim loss. Preserve link order on sim restart
and drag copy. Fix drag-copied prims' inventories. Fix persistence
of child prim inventories.
2008-11-26 07:34:38 +00:00
Melanie Thielker 95fec14201 Remove code from an experimantal patch that wasn't supposed to be committed 2008-11-23 21:03:54 +00:00
Melanie Thielker fba9e3f513 Don't serve texture preview from other people's objects if you
havenever seen that texture before.
2008-11-23 20:39:51 +00:00
Melanie Thielker cbd0221870 Plumb in the presence notifications and region shutdown/restart messages
from the presence module to the message server, through the user server
and on into the database. This should fix the "Already logged in" issue
that grids see after a sim crashes, or a user crashes out of a sim.
Not yet a 100% solution for friends, but getting there.
2008-11-23 05:16:07 +00:00
Justin Clarke Casey 915593bfbc * refactor: Rip out SOP inventory from the partial into a separate class
* SceneObjectPartInventory.cs isn't a particularly good name but it's probably not got a long life
* A proper inventory interface to follow
* Parallel changes for other inventory partial classes to follow at a later date
2008-11-21 21:16:42 +00:00
Jeff Ames ecac5c9c5a Update svn properties, minor formatting cleanup. 2008-11-21 18:44:48 +00:00
Charles Krinke 44c56a974c Mantis#2656. Thank you kindly, Nlin for a patch that:
Attached patch implements llCollisionSound. Thanks T. Sado.
2008-11-19 18:30:16 +00:00
Sean Dague 5517ea3dfd Fixed MySQL and SQLite so they will save the
variable sun vector, adding 3 new fields on both.

From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-11-18 12:48:36 +00:00
Melanie Thielker 8e119130c5 Make a quick stab at the "Open data reader" issue.
MySqlDataReader needs to be Close()d explicitly. Disposing it or letting
it fall out of scope will not free it's hold on the connection.
2008-11-16 04:39:41 +00:00
Homer Horwitz e26169f0b0 Mantis#2552: Thanks idb, for a patch that fixes persistence of physical prims.
(added a fix for the broken build from last commit, too)
2008-11-15 18:00:34 +00:00
Melanie Thielker 1bd0721dbe Add SQLite and the missing migrations files for last commit 2008-11-14 19:00:14 +00:00
Melanie Thielker d66f3993de Add group permissions to agent inventory.
Contains a migration. May contain nuts.
Please back up your inventory data store. This revision changes the interface
version!! No older regions can connect to these new UGAIM, and the new regions
can't connect to the old UGAIM. Fixes a long-standing issue of permissions loss
Currently persisted on MySQL only.
2008-11-14 18:54:38 +00:00
Sean Dague cc5ccfb315 make inventory item listing more robust. It turns out that a bad item
(one that won't parse right) will prevent all other items in that folder
to load when inventory is requested.  This is very careful to no longer
add inventory items that return as null to the hash table for
getInventoryInFolder, as well as be more careful parsing UUIDs for
fields that aren't marked not null in MySQL.

The net result, you may see previously missing inventory items return
after this checkin.  Folders probably need to be hardened in the same
way, but I'm out of time for today.
2008-11-13 22:53:49 +00:00
Melanie Thielker c18ce34d06 Update avatar picker search to work with OpenSearch people search 2008-11-13 03:24:23 +00:00
Justin Clarke Casey 0e180b0ad3 * refactor: Expose SOG.SetRootPart for outsiders to use rather than setting RootPart and adding the part separately
* Make RootPart read only
2008-11-10 20:04:55 +00:00
Homer Horwitz 344b725d3b Mantis#2598: Thanks Fly-Man- for a patch that fixes a client-thread crash by
allowing landFlags bit 31 to be used (Int32 -> UInt32).
2008-11-08 20:04:28 +00:00
Jeff Ames bbb8d6fc51 Remove empty OSUUID.cs file. Add copyright headers. Minor formatting cleanup. 2008-11-08 14:28:43 +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 46492f3c11 From: arthursv@linux.vnet.ibm.com
Add more unit tests for user cases
Persist more user fields into mysql that already had columns
defined but weren't getting passed to the mysql manager.
2008-11-06 17:07:08 +00:00
Sean Dague 7d6dc3b099 add some null protection on email
From: Sean Dague <sdague@gmail.com>
2008-11-04 19:26:17 +00:00
Sean Dague 702249358b implement email field for MySQL and SQLite
From: Sean Dague <sdague@gmail.com>
2008-11-04 14:54:42 +00:00
Adam Frisby 84136c70d8 * Minor cleanup
* Added additional error message when a Object/SOG DB save fails so we can trace why.
2008-11-01 22:20:54 +00:00
Homer Horwitz 38e8853e57 Megapatch that fixes/adds: friend offer/deny/accept, friendship termination,
on-/offline updates, calling cards for friends.
This adds methods in the DB layer and changes the MessagingServer, so a full
update (incl. UGAIM) is necessary to get it working. Older regions shouldn't
break, nor should older UGAIM break newer regions, but friends/presence will
only work with all concerned parts (UGAIM, source region and destination
region) at this revision (or later).
I added the DB code for MSSQL, too, but couldn't test that.
BEWARE: May contain bugs.
2008-11-01 22:09:48 +00:00
Homer Horwitz 44e377d1fb Fix a compile warning about unreachable code 2008-11-01 21:55:48 +00:00
Melanie Thielker 4fb2d70373 A stab a getting the user server to act right. Move acquisition of the
locks to just before the try/catch/finally block, so that an exception
thrown between taking the lock and entering the try doesn't leave a mutex
locked
2008-11-01 15:10:45 +00:00
Adam Frisby 129610e797 * Added some debug information to MySQL UserDataManager to help diagnose a potential issue when in high load. Related to mantis #2508. 2008-10-31 04:58:14 +00:00
Sean Dague 9e353d5713 - Includes consistency test for new and updated objects, as
some fixes in MySQL and SQLite

From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-10-30 12:56:10 +00:00
Sean Dague 409e7262df Mid-work, trying to fix region part insertion and retrieval
SQLite reports System NUll Reference, but works, inside
LoadItems, on SQLiteRegionData.cs

From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-10-30 12:56:04 +00:00