Commit Graph

480 Commits (be2af26231ddc17940ad71b49ec12eb9980656a2)

Author SHA1 Message Date
AlexRa ebc2b6d4f6 Split migrations for RegionStore and EstateStore (see WARNING!)
ok, so the estate stores now want their own migration files, but as it
happened the SQL definition were inside the Region migrations.
It seems better/cleaner to keep each 'store' separately updatable.

WARNING: any editing in the middle of the migration scripts (as opposite
to just appending to them) has the potential of messing up updates of
existing databases.  As far as I can see, this one is (probably) safe,
the worst that could happen is the EstateStore migration silently fail
if the estate the tables are already there.
2010-05-23 11:48:16 +03:00
AlexRa 40031e6d37 Removed MySql and SQLite-specific asset test files 2010-05-23 11:48:05 +03:00
AlexRa 7f70ae0ebd All data tests made DBMS-independent 2010-05-23 11:47:39 +03:00
Diva Canto 213e372253 Cleaned up MySql migrations a bit more, got rid of all old-form migration files. Restored Presence table to its taboo-breaking form. 2010-05-20 20:24:50 -07:00
AlexRa 64fe823b92 MySQLAssetData.cs now supports asset_flags, CreatorID 2010-05-19 21:50:32 +03:00
AlexRa eacd8d0263 MySQL: added CreatorID, moved asset_flag to migration script 2010-05-19 21:50:30 +03:00
Melanie 0c209a469b Clean up output a bit 2010-05-19 03:48:03 +01:00
Melanie dedc0c0bd4 Revert "Allow migration steps to fail again without bringing down the house"
This reverts commit 167db50259.
2010-05-19 02:47:31 +01:00
Melanie 167db50259 Allow migration steps to fail again without bringing down the house 2010-05-19 02:33:23 +01:00
Melanie d2bc673667 Make m_log in migrations private. Define new m_log in derived class 2010-05-18 23:33:05 +01:00
AlexRa deae030145 Some more corrections after MySQL connector update 2010-05-19 02:28:19 +03:00
AlexRa 8a0c5d14d4 All (?) MySQL stores fixed to use DBGuid.FromDB()
This was needed if we want to update to the latest MySQL
connector dll.  It automatically converts CHAR(36) to
Guids, so getting them as strings no longer works.

By using DBGuid.FromDB(), we unlink from any particular
storage format of GUIDs, could even make them BINARY(16)
if we like.

Actually not all MySql units are touched, but the remaining ones don't
seem to be affected (they don't read GUIDs from DB)
2010-05-19 01:33:02 +03:00
AlexRa ee713cb253 Converted MySQL migration history to the new format
Replaced all NNN_StoreName.sql migration resources with a more
readable, single-file-per-store
2010-05-16 17:04:13 +03:00
AlexRa b49fb3db7c Added MySqlMigrations.cs (supports stored proc/funcs)
Uses MySqlScript class to correctly run proc/func definitions
that need delimiter change. Requires MySql.Data.dll 6.2 or later.
2010-05-16 16:25:08 +03:00
Diva Canto 6f2f0fa0ca OK, this really fixes it, I promise. 2010-05-09 14:12:59 -07:00
Diva Canto 9cf6b81256 Yey for unit tests. The previous commit had a couple of bugs on SQL statements. Fixed here. 2010-05-09 14:02:02 -07: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
Diva Canto 15562017f2 These files are part of the GridUserService write-up. 2010-05-07 21:32:02 -07:00
Diva Canto a58859a0d4 GridUserService in place. Replaces the contrived concept of storing user's home and position info in the presence service. WARNING: I violated a taboo by deleting 2 migration files and simplifying the original table creation for Presence. This should not cause any problems to anyone, though. Things will work with the new simplified table, as well as with the previous contrived one. If there are any problems, solving them is as easy as dropping the presence table and deleting its row in the migrations table. The presence info only exists during a user's session anyway.
BTW, the Meshing files want to be committed too -- EOFs.
2010-05-07 21:29:56 -07:00
Melanie Thielker 9635af61f0 Allow regions to get the list of the other regions in the estate 2010-05-04 15:52:29 +01:00
Melanie Thielker 23d7a942ea Refix the fix 2010-05-03 23:11:48 +01:00
Melanie Thielker 92dff5edb1 Add folder version incrementing to XInventoryService. Fixes offline give
for avatar->avatar
2010-05-03 23:11:37 +01:00
AlexRa 8b75302a1e Just a bit of spellchecking in the comments 2010-04-28 12:21:39 +03:00
Melanie ec637e2b8c Committing the LightShare code, which was developed by TomMeta of Meta7.
This allows scripts to set WindLight parameters for clients connecting
to a region. Currently, this is only supported by the Meta7 viewer.
2010-03-31 04:20:20 +01:00
John Hurliman d6a64bf732 * Catch exceptions thrown when MySQLEstateData.LinkRegion() is called. This won't fix the bug I'm seeing with regions not realizing they are already part of an estate, but it will fix the OpenSim crash if that situation ever comes up 2010-03-26 13:50:25 -07:00
Melanie dcf18689b9 First stage of the new interactive region creation. This will allow creation
of a region and joining it to an existing estate or creating a new estate,
as well as creating an estate owner if in standalone, and assigning estate
owners. In Grid mode, existing users must be used. MySQL ONLY!!!! so far, as
I can't develop or test for either SQLite or MSSQL.
2010-03-23 02:05:56 +00:00
Melanie 07a6b37001 Somehow the starting estate number in MySQL was lost. This adds a migration
to start estates at 100. Existing databases having autcreated estates below
100 will see a gap in estate numbering. Other database implementors need to
ensure that no estates with numbers less that 100 are autocreated, unless
they are prepared to deal with the viewer's built-in notions of
Linden Mainland
2010-03-22 20:38:27 +00:00
Melanie 70b0e07d1e Remove the reading of estate_settings.xml and the associated processing of
defaults. Adding code to facilitate estate creation / managemment as part of
first time start up
2010-03-22 18:49:56 +00:00
Jeff Ames f58a0394ed Formatting cleanup. Add copyright notices. 2010-03-10 13:15:36 +09:00
Diva Canto 5171464ac1 Justin, I must have been dyslexic when I wrote UserGridService as the name for it. GridUserService makes more sense; it's the user of the grid, "grid user". I changed it everywhere. 2010-03-05 21:36:45 -08:00
Justin Clark-Casey (justincc) e906dd3d28 add initial UserGrid service classes as per diva's direction
this will initially store home location data instead of the presence service
compiles but not enough to actually test yet
2010-03-05 22:29:51 +00:00
Justin Clark-Casey (justincc) a1643c78be remove test presence from NullPresenceData since this appears to stop existing sessions with home locations from being picked up
only tested for a single user so this may still fail for multiple users
this may well be all academic anyway since standalone need to persistently store home location in presence data in some way
2010-03-04 22:43:30 +00:00
Melanie bef311dfb9 Merge branch 'master' into presence-refactor
This is the big one. master is now presence-refactor (pre 0.7). A new branch 0.6.9-post-fixes and leading tag 0.6.9 has been created. The Presence-refactor
branch remains for experimental work.
2010-03-02 04:46:13 +00:00
Jeff Ames 780ee4f991 Fix a few compiler warnings. 2010-03-01 23:04:45 +09:00
Melanie bfcc57c071 Change friends to handle offers as it was originally designed. This may
need to be changed in SQLite & MSSQL as well
2010-03-01 00:02:14 +00:00
John Hurliman df76e95aa2 Changed asset CreatorID to a string 2010-02-22 14:18:59 -08:00
John Hurliman 71c6559a91 Merge branch 'presence-refactor' of ssh://opensimulator.org/var/git/opensim into presence-refactor 2010-02-22 14:10:19 -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
Diva Canto bb171717ce Deleted obsolete files in the Data layer. Compiles. 2010-02-21 15:38:52 -08:00
Melanie c033223c63 Merge branch 'master' into presence-refactor 2010-02-15 00:20:48 +00:00
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