Commit Graph

1356 Commits (e0510203f94c169cab949c4bc6b9b97ec0aab125)

Author SHA1 Message Date
Melanie fdbcd2fbf9 Add a missing virtual keyword 2011-05-20 23:27:16 +02:00
Melanie 8a46484a59 Make public interface methods in MySQLSimulation data virtual so the CM
data layer can inherit from it
2011-05-20 23:17:46 +02:00
Melanie e62d1cc480 Merge branch 'master' into careminster-presence-refactor 2011-05-20 22:38:05 +01:00
Diva Canto d21e9c755f HG Friends working to some extent: friendships offered and accepted correctly handled. Friends list showing correct foreign names. TODO: GrantRights. 2011-05-19 16:54:46 -07:00
Justin Clark-Casey (justincc) bdd7849094 Allow item links to be deleted even when other deletes and purges are disabled.
If these links are not deleted, then they will build up in the player's inventory until they can no longer log in.
Accidental deletion of links due to bugs or other causes is potentially inconvenient but on a par with items being
accidentally moved.  When a link is deleted, the target of the link is never touched.
This is a general solution that accounts for the use of links anywhere in the user's inventory.
2011-05-19 00:51:14 +01:00
Justin Clark-Casey (justincc) 6dcc87b1ad Accidentally committed too early
Revert "Allow item links to be deleted even when other deletes and purges are disabled."

This reverts commit 491279f99a.
2011-05-18 00:23:35 +01:00
Justin Clark-Casey (justincc) 491279f99a Allow item links to be deleted even when other deletes and purges are disabled.
If these links are not deleted, then they will build up in the player's inventory until they can no longer log in.
Accidental deletion of links due to bugs or other causes is potentially inconvenient but on a par with items being
accidentally moved.  When a link is deleted, the target of the link is never touched.
This is a general solution that accounts for the use of links anywhere in the user's inventory.
2011-05-17 22:31:16 +01:00
Melanie b451cc1ebb Merge branch 'master' into careminster-presence-refactor 2011-05-08 20:23:06 +01:00
Diva Canto 72fb0d5b93 Mantis #5470 -- add forgotten MSSQL's GridUserStore. Thank you MrMonkE 2011-05-07 14:56:59 -07:00
Justin Clark-Casey (justincc) 04ecd748d9 remove further mono compiler warnings 2011-05-06 22:47:41 +01:00
Justin Clark-Casey (justincc) 3d095e84d6 minor: remove mono compiler warnings 2011-05-06 22:45:03 +01:00
Melanie d1cf1fe3d7 Merge branch 'master' into careminster-presence-refactor 2011-04-30 14:37:37 +01:00
Diva Canto 7ecf689584 Thank you MrMonkE for a patch that seems to bring the MSSQL data layer up to speed with 0.7.x. 2011-04-28 07:28:29 -07:00
Melanie 282e116f94 Honor agent limit for region crossings and teleports 2011-04-21 22:34:49 +02:00
Melanie 474910c9d6 Merge branch 'master' into careminster-presence-refactor 2011-04-17 18:48:53 +01:00
Justin Clark-Casey (justincc) da4a9653a2 minor: remove some mono compiler warnings 2011-04-12 22:33:06 +01:00
Melanie 42b96a8be0 Merge branch 'master' into careminster-presence-refactor 2011-04-12 00:27:39 +01:00
Justin Clark-Casey (justincc) 49d80f5711 Include code to return more information about the NullReferenceException seen in
http://opensimulator.org/mantis/view.php?id=5403 prior to doing something about it.
2011-04-11 23:07:56 +01:00
Melanie 738daadace Merge branch 'master' into careminster-presence-refactor 2011-04-08 04:16:29 +01:00
Justin Clark-Casey (justincc) 9d40c0dcc7 Remove the SQLite legacy adaptor. This is no longer needed now that the main adaptor works on Mac OS X.
The SQLite legacy adapator was also not at all well maintained, even worse than the mainline sqlite adapator.
2011-04-07 23:20:04 +01:00
Melanie 407c2b1823 Merge branch 'master' into careminster-presence-refactor 2011-04-06 09:22:55 +01:00
Teravus Ovares (Dan Olivares) 18e206d2ed * Bugfix - Compile NullEstateData implement public List<int> IEstateDataStore.GetEstatesByOwner(UUID) 2011-04-04 23:45:28 -04:00
Mic Bowman d5e0674213 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2011-04-04 20:04:01 -07:00
Mic Bowman b2fbadeae8 Updates NullStorage plugin.
Thanks MisterBlue...
2011-04-04 20:02:13 -07:00
Justin Clark-Casey (justincc) f58941e89f Make the "All Estates" option work from the client (this makes chosen changes to all the estates that the user owns).
This applies to adding/removing estate users, groups, managers and bans.
This is the application of the AllEstates_0.5.patch from http://opensimulator.org/mantis/view.php?id=5420
Thanks very much, Snoopy!
2011-04-05 01:30:13 +01:00
Justin Clark-Casey (justincc) 7bba31e8d9 remove some mono compiler warnings 2011-03-31 22:20:12 +01:00
Melanie a62b435a39 Merge branch 'master' into careminster-presence-refactor 2011-03-27 21:41:54 +01:00
Melanie c330f89fb1 Add some more fields to Estate settings and make them work.
Run alter table estate_settings add column AllowLandmark tinyint not null default 1, add column AllowParcelChanges tinyint not null default 1, add column AllowSetHome tinyint not null default 1;
to make this work.
2011-03-22 10:43:43 +01:00
Melanie a073ca57da Add a definition for a region flag to omit a region from traffic counting 2011-03-22 09:23:46 +01:00
Justin Clark-Casey (justincc) d3a20a1e92 On initial region registration, if the user chooses the option to make the region part of an existing estate, then list the existing region names. 2011-03-21 21:37:06 +00:00
Melanie e4f143fb1c Merge branch 'master' into careminster-presence-refactor 2011-03-21 07:57:56 +00:00
Justin Clark-Casey (justincc) fdcf910e00 Fix a bug in T015_LargeSceneObjects() where the large scene object was stored 31 times (1 time for each added part) instead of once at the end, even though only the largest 31 prim scene object was retrieved and tested.
This considerably speeds up the test, when on sqlite it now only takes 2 seconds rather than 30+
2011-03-14 23:35:03 +00:00
Justin Clark-Casey (justincc) 38c3be07b8 when retrieving a sog in database tests, don't bother adding the scene since this isn't used 2011-03-14 23:32:44 +00:00
Justin Clark-Casey (justincc) 8509678e48 Add method doc to T015_LargeSceneObjects() and slightly clean up formatting.
This test takes a considerable time on SQLite but should remain since it's testing storage and retrieval of a scene object with 31 parts.
2011-03-14 23:26:50 +00:00
Justin Clark-Casey (justincc) 48c62eb51b Add current method output to all persistence level tests so that we can track where we are in the test suite 2011-03-14 23:17:15 +00:00
Melanie 4a5560a86e Change avatar picker search to work properly when two name parts are used 2011-03-12 13:06:13 +01:00
Justin Clark-Casey (justincc) f6f8d124d1 minor: remove mono compiler warning 2011-03-12 00:52:43 +00:00
Melanie 9165a5207d Merge branch 'master' into careminster-presence-refactor 2011-03-10 07:14:03 +00:00
Justin Clark-Casey (justincc) 9456bb77fb Upgrade nunit.framework.dll to version 2.5.9. Fix up tests appropriately.
This version removes the NUnit.Framework.SyntaxHelpers namespace, so any modules with their own tests will need to delete this using statement.
2011-03-09 23:25:24 +00:00
Justin Clark-Casey (justincc) 8a2360bf81 Simplify TestLoadIarV0_1AbsentUsers() to use common IAR test setup. Make static dictionaries on NullUserAccountData instance instead to stop user accounts being carried over between tests 2011-03-09 01:21:31 +00: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
Melanie 9be1d2aef1 Merge branch 'master' into careminster-presence-refactor 2011-02-24 02:37:21 +00:00
Marck af22b7cb1a GetRegion(s)ByName with SQLite behaves like it does with other databases.
The in-memory storage of region data that is used by default with SQLite now handles wildcards in region names in the same way as SQL queries do with other databases.
2011-02-22 13:00:45 +01:00
Justin Clark-Casey (justincc) 754c244f46 In SQLiteSimulationData.RemoveLandObject(), don't manually remove the row from the data adaptor's Rows list in addition to calling Delete.
This matches the behaviour for other deletions and stops this operation failing on Windows .NET (though mono is fine with the duplication).
Probably a holdover from copying code from the older legacy adaptor.
Resolves http://opensimulator.org/mantis/view.php?id=5361
2011-02-11 23:06:14 +00:00
Melanie e2762a68b3 Merge branch 'master' into careminster-presence-refactor 2011-02-12 00:42:10 +00:00
Melanie f3968c4959 Merge branch 'master' into careminster-presence-refactor 2011-01-18 06:18:10 +00:00
Melanie 06e225bc0b Also fix MySQLXInventoryData 2011-01-18 01:31:14 +00:00
Melanie 75644e0f6e Prevent activation and deactivation of gestures from clobbering the slam
bits
2011-01-18 01:26:42 +00:00
Melanie 4f8ba53f86 Prevent activation and deactivation of gestures from clobbering the slam
bits
2011-01-18 00:55:08 +01:00
Diva Canto 72748746d5 Fixed some inconsistency with trailing /. Made debug messages consistent. Changed the stored region names of HG regions. Increased the size of regionName in DB. 2010-12-05 19:43:24 -08:00
Melanie 45314c6622 Merge branch 'master' into careminster-presence-refactor 2010-12-06 02:54:51 +00:00
Melanie e05f728b08 Merge branch 'master' into careminster-presence-refactor 2010-11-27 01:08:12 +00:00
Marck 7c02d5cec5 Another attempt at fixing failing test for creator info. 2010-11-26 23:04:31 +01:00
Melanie ee9aca9c52 Add the ability for gods to impersonate users. For this, bit 6 needs to be
set in the target's UserFlags and the impersonator must have UserLevel 200
or above. The user can then log in using the target's name and their own
password.
2010-11-25 20:34:55 +01:00
Melanie 2c1c04119d Merge branch 'master' into careminster-presence-refactor 2010-11-25 01:24:32 +00:00
Diva Canto a4bf6c5343 Attempt at fixing failing test. 2010-11-23 07:44:42 -08:00
Melanie 6557d5f359 Merge branch 'master' into careminster-presence-refactor 2010-11-23 14:05:09 +00:00
Marck ba2bf78dcf Fix joining land parcels not being stored correctly in SQLite. Thank you to goetz for the initial patch in Mantis #5230. 2010-11-23 11:45:12 +01:00
Melanie 22ff06ba17 Merge branch 'master' into careminster-presence-refactor 2010-11-22 01:09:26 +00:00
Diva Canto c617d658dd Added creator info across the board -- TaskInventoryItems and InventoryItems themselves. Tested. Seems to be working, main tests pass. Nothing done for IARs or HG transfers yet -- this only works for OARs for the time being.
New migration in inventory table in order to make CreatorID varchar(255).
2010-11-21 17:19:24 -08:00
Diva Canto af8c8197ab Updated SQLiteLegacy/SQLiteSimulationData with the same. Is this crap still used?!? 2010-11-21 13:29:20 -08:00
Diva Canto 51343caeb5 Updated SQLite/SQLiteSimulationData to use SOP.CreatorInformation instead of SOP.CreatorID. Untested, but should work. 2010-11-21 13:27:03 -08:00
Diva Canto 6a9ae9e7cb Global creator information working on MySQL DB and on load/save OARs. Creator name properly shown on the viewer as first.last @authority.
New option added to save oar -profile=url. Migration on RegionStore making CreatorID be 255 chars.
Moved Handling of user UUID -> name requests to a new module UserManagement/UserManagementModule.
2010-11-21 13:16:52 -08:00
Melanie 5f8ab9f018 Merge branch 'master' into careminster-presence-refactor 2010-11-03 02:34:36 +00:00
Melanie 6c3b7617b0 Add lsClearWindlightScene() to the lightshare module to remove WL settings
from a region and allow normal day cycles to be reestablished
2010-11-03 02:31:43 +00:00
Melanie 4ab9d37a8e When LightShare is enabled, the standard day cycle is bypassed and replaced by
midday defaults when no specific LightShare profile is set.
This prevents LightShare info being send out when the region has no LightShare
profile, allowing normal day/night cycles to happen.
2010-11-03 02:04:17 +00:00
Melanie 26f12f479f Merge branch 'master' into careminster-presence-refactor 2010-11-02 22:58:33 +00:00
Melanie e98d8d500f Fix logins and avatar appearance. Contains a Migration. May contain nuts.
This will cause visual params to be persisted along with worn items. With
this, alpha and tattoo laters will be saved. Multiple layers MAY work, but
not tested because I don't use Viewer 2.
2010-10-30 19:06:47 +01:00
Melanie 551015db63 Alphabetize results on region search by prefix matching 2010-10-18 20:29:00 +01:00
Melanie bb7a755cba Merge branch 'master' into careminster-presence-refactor 2010-10-18 20:30:46 +01:00
Melanie 2be93066da Bump migration version on LastSeen field so it is actually run 2010-10-18 19:08:26 +01:00
Melanie 46e5c8e919 Merge branch 'master' into careminster-presence-refactor 2010-10-16 10:52:56 +01:00
Diva Canto e039a8c8c2 UPdated the MySql driver to 6.2.4. Also established a much larger MySqlCommand timeout on fetching prims. 2010-10-15 15:43:06 -07:00
Justin Clark-Casey (justincc) aa60c4b129 fix build break 2010-10-13 22:18:57 +01:00
Melanie Thielker ccd5610997 Correctly update the LastSeen field 2010-10-13 18:41:09 +01:00
Melanie Thielker 01728fb19e Ensure no UUID.Zero region ID is ever written to presence. Add a Migration
to add a LastSeen field of type "Timestamp" to Presence for MySQL
2010-10-13 18:40:33 +01:00
Melanie d8149373c1 Merge branch 'master' into careminster-presence-refactor 2010-10-06 00:27:10 +01:00
Jeff Ames bc9f793a92 Formatting cleanup. 2010-10-04 21:28:17 -04:00
Melanie 4fbdcb95a0 Merge branch 'master' into careminster-presence-refactor 2010-09-25 06:19:26 +01:00
Teravus Ovares (Dan Olivares) acd5bbdb71 * One more item for CSharpSqlite
* Hopefully this will enable mac people to use SQLite again
* Someone cooler then me will need to figure out how to define CSharpSqlite with Mono so the conditional will pick up.
* There's also an error that occurs when you first load OpenSimulator under CSharpSQLite that goes away after.
* The databases are not byte for byte compatible.  Mono.Data.Sqlite is able to read CSharpSqlite made databases but not the reverse way.
2010-09-23 01:45:54 -04:00
Teravus Ovares (Dan Olivares) 983c6a74b1 * Add CSharpSqlite to prebuild
* Use a conditional define to determine whether we're using CSharpSqlite or Mono.Data.Sqlite
#if CSharpSqlite
    using Community.CsharpSqlite.Sqlite;
#else
    using Mono.Data.Sqlite;
#endif
* Hopefully, this will restore sqlite functionality on a Mac.  In visual studio, you can edit the OpenSim.Data.SQLite project, go to the Build tab and enter CSharpSqlite in the box.  I'm not sure how to define CSharpSqlite in Mono, someone better at it then me will have to take the job of figuring out the best way to define it in Mono.
2010-09-23 01:21:08 -04:00
Melanie 9feef34a81 Merge branch 'master' into careminster-presence-refactor 2010-09-21 04:03:14 +01:00
Justin Clark-Casey (justincc) a22f007246 Improve the explanative text of migration failures
When running for the first time, people see migration failures because of sql statements that are trying to move data from old tables (e.g. users).  The amended text attempts to calm their nerves.
2010-09-18 03:37:10 +01:00
Melanie 7df4383235 Merge branch 'master' into careminster-presence-refactor
Integrate the next large patch.
Don't use this version, it has a ghost avatar issue. Next push
will fix it.
2010-09-17 03:49:30 +01:00
John Hurliman 860b2a502f Changed SceneObjectGroup to store parts with the fast and thread-safe MapAndArray collection 2010-09-16 17:30:46 -07:00
Melanie 6a1ce17cdb Merge branch 'master' into careminster-presence-refactor
The modules will need to be updated for this to compile and run again. Please
don't use until I do the companion commit to modules later on.
2010-09-13 16:17:38 +01:00
John Hurliman c03b24cbfd Merged 2010-09-12 14:21:51 -07:00
John Hurliman 0db1ed0b5a * Added ISimulationDataService and IEstateDataService
* Removed StorageManager
* CONFIG CHANGE: There are no more database settings in OpenSim.ini. Check the config-include configuration files for region store and estate store database settings
2010-09-12 14:20:26 -07:00
Jeff Ames f1f0bc23f4 Formatting cleanup. 2010-09-12 13:43:49 -04:00
Jeff Ames 20cd1da6bf Add copyright headers. 2010-09-12 12:54:31 -04:00
John Hurliman e2544584ad Changed all string references of "IRegionDataStore" to "ISimulationDataStore" 2010-09-11 22:02:34 -07:00
John Hurliman 109b517583 Fixed the naming mess around data connectors for simulation data 2010-09-11 20:43:06 -07:00
John Hurliman 47ac9f97b1 Re-enabled asset last access time logging in MySQL 2010-09-11 18:29:38 -07:00
John Hurliman dd277a0d02 First pass at cleaning up thread safety in EntityManager and SceneGraph 2010-09-10 12:04:12 -07:00
Melanie 3284356bba Merge branch 'master' into careminster-presence-refactor 2010-09-07 01:48:00 +01:00
Justin Clark-Casey (justincc) 3d033520fa Fix deletion persistence when freshly delinked prims are removed
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is not required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.

Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:43:20 +01:00
Justin Clark-Casey (justincc) 11f4a65f42 Fix deletion persistence when freshly delinked prims are removed
Previously, Scene.Inventory.DeRezObjects() forced the persistence of prims before deletion.
This is necessary so that freshly delinked prims can be deleted (otherwise they remain as parts of their old group and reappear on server restart).
However, DeRezObjects() deleted to user inventory, which is required by llDie() or direct region module unlink and deletion.
Therefore, forced persistence has been pushed down into Scene.UnlinkSceneObject() to be more general, this is still on the DeRezObjects() path.

Uncommented TestDelinkPersistence() since this now passes.
Tests required considerable elaboration of MockRegionDataPlugin to reflect underlying storing of parts.
2010-09-07 01:12:06 +01:00
Melanie Thielker 6a0a878f7c Remove "Dwell" support from core and replace it with calls to methods
on IDwellModule
2010-09-05 14:28:33 +01:00
Melanie Thielker e593607171 Remove "Dwell" support from core and replace it with calls to methods
on IDwellModule
2010-09-05 14:16:42 +02:00
Melanie 4e0d6e8e41 Merge branch 'master' into careminster-presence-refactor 2010-09-03 03:37:18 +01:00
Justin Clark-Casey (justincc) b9db495d91 Fix sqlite migration problems by moving migrations in 019_RegionStore.sql and 020 into RegionStore.migrations
This shows that panda is still not running the sqlite database tests since this change fixes the test failure in that area when "nant test" is executed locally
2010-09-01 22:06:56 +01:00
Melanie 79bfa275da Merge branch 'master' into careminster-presence-refactor 2010-08-30 02:30:28 +01:00
Melanie eefb207c1b Fix a casting operation to use ToString() 2010-08-30 02:10:11 +01:00
Jonathan Freedman 0a83fde85c Implements parcel media setting persistence and packet / CAPS handling
properly for the new media settings.

Signed-off-by: Melanie <melanie@t-data.com>
2010-08-30 02:07:55 +01:00
Justin Clark-Casey (justincc) 692cf3c657 Remove parts locking from data classes since these are using a copy of the scene object 2010-08-26 00:17:26 +01:00
Justin Clark-Casey (justincc) 8031f8ec09 Improve consistency of locking for SOG.m_parts in order to avoid race conditions in linking and unlinking 2010-08-26 00:08:53 +01:00
Melanie fc8d2be632 Merge branch 'master' into careminster-presence-refactor
This was rather conflicted. Please test linking.
2010-08-26 00:11:07 +01:00
Melanie 252e159340 Merge branch 'master' into careminster-presence-refactor 2010-08-25 23:22:23 +01:00
Justin Clark-Casey (justincc) 289c21099c Add automated test at the opensim 'api' level to check that a given item goes to the correct directory
Also removes some mono compiler warnings
2010-08-24 16:50:31 +01:00
Melanie Thielker f58a809536 Skip conversion if fields that are null in the database. This may
uncover errors elsewhere.
2010-08-19 11:45:56 +01:00
Melanie Thielker 0344395776 Skip conversion if fields that are null in the database. This may
uncover errors elsewhere.
2010-08-19 12:01:40 +02:00
Melanie e74809ff4c Merge branch 'master' into careminster-presence-refactor 2010-08-18 00:59:20 +01:00
Marck 30d0bf4207 Fix SQLite database plugin for UserAccountData queries with a single word. 2010-08-15 17:27:06 -07:00
Justin Clark-Casey (justincc) 39a748b47a refactor: Use SOP.Flags rather than SOP.ObjectFlags 2010-08-13 20:23:53 +01:00
Diva Canto 7741143fb5 Enforce DB limits on region name to 32 chars, or else (not good). Removed a piece of code from Hyperlinker that didn't work anyway. Shortened the hyperlink region name. 2010-08-10 11:17:38 -07:00
Melanie c2e5d1d203 Merge branch 'master' into careminster-presence-refactor 2010-08-10 19:49:35 +01:00
Justin Clark-Casey (justincc) 3b26baf282 Even if all data migratios are up to date, still print the current revision to the log 2010-08-09 22:54:13 +01:00
Melanie 321e1148da Merge branch 'master' into careminster-presence-refactor 2010-08-08 18:24:33 +01:00
Melanie a5e4a2bb3b Add distance sort for null, too 2010-08-08 18:18:42 +01:00
Melanie Thielker 1f25b9e8db Thank you, Marck00, for a patch that implemented region distance sorting
for fallback regions. Applied with changes.
2010-08-08 17:37:50 +01:00
Melanie Thielker 1cde77293e Thank you, Marck00, for a patch that implemented region distance sorting
for fallback regions. Applied with changes.
2010-08-08 17:51:43 +02:00
Melanie 26387252f5 Merge branch 'master' into careminster-presence-refactor 2010-08-06 18:08:40 +01:00
Justin Clark-Casey (justincc) 1270727c96 Merge branch 'moap' 2010-08-06 18:29:30 +01:00
Justin Clark-Casey (justincc) 7f3f1bfe88 fix mysql/mssql prim serialization problem 2010-08-04 20:23:18 +01:00
Justin Clark-Casey (justincc) 2a0254f2da Implement MediaUrl persistence for MySQL and MsSQL
Not sure how I forgot this.  This may resolve problems with media textures not persisting over restart for these databases.
2010-08-03 17:54:40 +01:00
Justin Clark-Casey (justincc) 9d8a67fe13 get rid of PrimitiveBaseShape.MediaRaw staging post
using an OSD serialization rather than auto forces serialization code to be placed in OpenSim.Framework
this makes the media texture raw data staging post in PrimitiveBaseShape redundant, now we just directly call the code in PrimitiveBaseShape.MediaList itself
2010-08-03 16:26:27 +01:00
Melanie 5f94b98cb2 Merge branch 'master' into careminster-presence-refactor 2010-08-01 18:00:04 +01:00
Diva Canto c4ecbd1fb1 White space from previous commit. 2010-07-31 16:40:58 -07:00
Marck f91ec19224 Implemented console command "show hyperlinks". 2010-07-31 16:38:23 -07:00
Justin Clark-Casey (justincc) 109ddd1bd5 add mssql support for media on a prim
compiles but not tested.  please test and correct if necessary!
2010-07-26 23:34:23 +01:00
Justin Clark-Casey (justincc) 849fc0483f add mysql support for media on a prim 2010-07-26 23:34:23 +01:00
Justin Clark-Casey (justincc) 412fed975f relocate serialization code from SQLiteRegionData to MoapModule using load and save events.
This is better modularity.  It also allows MoapModule to be replaced with some other media module that may behave completely differently in the future.
Remaining non-modularity:
PrimitiveBaseShape needs explicit Media and MediaRaw fields.  MediaRaw is required in order to shuttle the pre-serialization data back and forth from the database layer.
The database also needs to know about MediaRaw though not about Media.
IMO, it would be extremely nice to remove these hard codings but this is a bridge too far at the present time.
2010-07-26 23:34:23 +01:00
Justin Clark-Casey (justincc) afdbeba4e4 Put a wrapper around the media texture region serialization
THIS WILL BREAK EXISTING MEDIA TEXTURE PERSISTENCE.  Please delete your existing sqlite databases if you are experimenting with this branch.
This wrapper will make it easier to maintain compatibility if the media texture data evolves.
This will also make it easier to store non-sl media texture data.
2010-07-26 23:34:22 +01:00
Justin Clark-Casey (justincc) f872a2af11 add missing regionstore migration file for new fields. D'oh!
this should enable persistence now
2010-07-26 23:34:22 +01:00
Justin Clark-Casey (justincc) fc76ce0f46 fix bug where prim persistence would fail if media had never been set 2010-07-26 23:34:21 +01:00
Justin Clark-Casey (justincc) 43f480864b fix problem persisting when only one face had a media texture 2010-07-26 23:34:20 +01:00
Justin Clark-Casey (justincc) 9682e0c733 Implement media texture persistence over server restarts for sqlite
This is currently persisting media as an OSDArray serialized to LLSD XML.
2010-07-26 23:34:19 +01:00
Melanie 686837d9ed Merge branch 'master' into careminster-presence-refactor 2010-07-20 21:18:27 +01:00
Diva Canto 6afa55d446 Removed a few obsolete mono addin references. Mantis #4854 2010-07-14 14:47:01 -07:00
Melanie 0b74662ce2 Merge branch 'master' into careminster-presence-refactor 2010-07-14 19:53:15 +01:00
Justin Clark-Casey (justincc) 5d83b3f991 comment out obsolete assert that 'item has been passed to another user since it was last set' perms flag was set when a prim item was added to a scene object 2010-07-14 17:53:43 +01:00
Melanie dd14016885 Revamp the permissions propagation. This MAY mess up. Please test.
Change the slam bit from 3 to 4. Assume the old slam bit is always set.
The new slam bit is a "changed owner" bit, correcting a bug where an item
passed from the creator to another with less than full perms, then back (sale
test) would arrive back full perm. Lots of in-code docs.
2010-07-13 20:45:16 +01:00
Melanie Thielker 89c1c5c35a Revamp the permissions propagation. This MAY mess up. Please test.
Change the slam bit from 3 to 4. Assume the old slam bit is always set.
The new slam bit is a "changed owner" bit, correcting a bug where an item
passed from the creator to another with less than full perms, then back (sale
test) would arrive back full perm. Lots of in-code docs.
2010-07-13 20:40:23 +02:00
Melanie 922e874653 Merge branch 'master' into careminster-presence-refactor 2010-07-11 13:32:10 +01:00
Diva Canto fe60b6783d Hopefully fixes mantis #4852 2010-07-08 16:21:01 -07:00
Tom Grimshaw a5a1df68c2 Provide the interface for StoreAsset to report success or failure 2010-06-28 04:02:33 -07:00
Diva Canto 76d2f0f68e Same patch as before but for SQLite. 2010-06-27 12:40:17 -07:00
Diva Canto b0129b35f8 Added checks to XInventory DB layer to truncate names and descriptions. 2010-06-27 12:37:16 -07:00
Melanie ba38c697e8 Merge branch 'master' into careminster-presence-refactor 2010-06-27 20:05:55 +01:00
Justin Clark-Casey (justincc) d399bd3eb7 minor: fix spelling mistake interupt -> interrupt in migrations
This is for  mantis 4783
2010-06-25 21:18:52 +01:00
Melanie Thielker 3ea4e5ccbe Correctly update the LastSeen field 2010-06-21 23:26:27 +02:00
Melanie Thielker 53905cf919 Bump the migration version, ot it would never happen 2010-06-21 22:15:33 +02:00
Melanie Thielker ab023c6a29 Fix build break 2010-06-21 18:06:46 +02:00
Melanie Thielker 973537f819 Ensure no UUID.Zero region ID is ever written to presence. Add a Migration
to add a LastSeen field of type "Timestamp" to Presence for MySQL
2010-06-21 17:06:05 +02:00
Melanie a3ebd4db3f Revert "This is a HACK! Downright nasty. For some reason, the devs of the mysql"
Didn't do what it said on the package!

This reverts commit 8643db3ef0.
2010-06-19 23:45:56 +01:00
Melanie 8643db3ef0 This is a HACK! Downright nasty. For some reason, the devs of the mysql
connector have decided that their vision of timeouts is the only valid one.
This uses reflection to show them the finger. Please test.
2010-06-19 22:48:43 +01:00
Melanie e3432b8f63 Revert "Set command timeout to infinity on migrations"
This reverts commit 51d30fd34a.
2010-06-17 17:48:34 +01:00
Melanie 51d30fd34a Set command timeout to infinity on migrations 2010-06-17 17:43:40 +01:00
Melanie 0b75f759b4 Merge branch 'master' into careminster-presence-refactor 2010-06-16 04:10:55 +01:00
Diva Canto 9c9ce9e8dd * Deleted duplicated migration that was failing anyway.
* Added an error message in initial estate owner creation that makes it clear what needs to happen.
2010-06-14 11:50:42 -07:00
Melanie 6b2d2413f7 Merge branch 'master' into careminster-presence-refactor 2010-06-09 16:48:37 +01:00
Melanie 008e840cf2 Add the BEGIN; I had missed 2010-06-09 16:37:20 +01:00
Melanie 668c3b4062 Re-add Migration version 32, which apparently got dropped completely. 2010-06-09 16:34:18 +01:00
Diva Canto 5c0068723f Changed XInventoryData's CreatorID to a string. 2010-06-08 15:52:26 -07:00
Diva Canto 9b9804a498 * Changed CreatorIDs consistently to varchar(128)
* Deleted redundant migration for assets in SQLite
* Rewrote XInventory migrations in SQLite in the new style
2010-06-08 15:47:14 -07:00
Melanie d2dfbbe339 Merge branch 'master' into careminster-presence-refactor 2010-06-08 00:44:53 +01:00
Melanie a246cbce8d Add a migration to adjust types in the WL table. The new connector likes that
better
2010-06-08 00:37:38 +01:00
Melanie c5878b6610 Merge branch 'master' into careminster-presence-refactor 2010-06-04 21:11:15 +01:00
Justin Clark-Casey (justincc) 75878c8f43 get TestSaveIarV0_1() working again by setting up an OpenSim.Data.Null.UserAuthenticationData plugin
additional tweaks to get this working properly
2010-06-04 20:43:05 +01:00
Justin Clark-Casey (justincc) 86f2339b6e remove estate stuff in sqlite region migrations since this also exists in estate migrations, change Sandbox to sandbox in sqlite region migrations
re-enabling the sqlite data tests revealed these errors!
2010-06-04 18:46:58 +01:00
Justin Clark-Casey (justincc) 5c322335e5 add sqlite database back to database tests
this appears to be okay even though we reuse it between runs without deleting it first.
size of the database appears not to be changing though that could be deceptive
2010-06-04 18:27:16 +01:00
Justin Clark-Casey (justincc) 55040a84a5 Fix bug where prim items were not loaded in the new sqlite database handler
This addresses mantis http://opensimulator.org/mantis/view.php?id=4739
2010-06-04 17:14:12 +01:00
Melanie 97501495eb Merge branch 'master' into careminster-presence-refactor 2010-05-26 17:19:02 +01:00
Melanie 1c7f60ab49 Merge branch 'unitests'
Signed-off-by: Melanie <melanie@t-data.com>
2010-05-26 10:56:24 +01:00
AlexRa 5d65ef2db3 Minor correction to AssetTests.cs
(forgot to change test descriptions, has no effect on running the tests)
2010-05-26 10:25:56 +03:00
Melanie 00737f1c13 Merge branch 'master' into careminster-presence-refactor 2010-05-24 23:40:22 +01:00
Diva Canto 1ab826d67c The 8th migration statement in AssetStore.migrations didn't look right. 2010-05-23 12:22:47 -07:00
AlexRa 57f4729eea Ensured that tests are skipped for wrong conn string, also m_log chng
The base test class now tries to connect to DB, ignores all tests in the
class if unable to.

Also m_log changed to instance field (which in this case shouldn't cause
any problems),  to avoid having to define it separately in each derived
class.  Here I touched things that I don't understand well (using log4net),
so please review this commit.
2010-05-23 12:46:33 +03:00
AlexRa b9b6d9c4ea Removed (unused?) empty SQL files from MSSQL resource dir
There was a whole bunch of these SQL files, all empty and apparently
unused.  Removing them is just a clean-up, if anybody has a reason for these
files to be there, feel free to revert.
2010-05-23 11:48:30 +03:00
AlexRa 05d9ca1b26 MySQL Migrations: Minor correcton to Region/Estate split
(some Estate SQL left behind in the Region migration)
2010-05-23 11:48:28 +03:00
AlexRa 52a3dbd076 MSSQL Migration: CreatorID in InventoryItems changed to VARCHAR(36)
Again, the same thing about potentially having non-GUID CreatorID.
2010-05-23 11:48:25 +03:00
AlexRa 89b7c64b6f Various minor changes in the data tests 2010-05-23 11:48:22 +03:00
AlexRa 9976cb93ce Further corrections to MS SQL stores (now passes all tests)
Besides, AssetData is slightly optimized to StoreAsset in one request
("IF EXISTS() UPDATE ... ELSE INSERT ...")

The main change in the MS SQL Inventory implem. is that it now return
empty list (or whatever) when called with UUID.Zero, which is consistent
with how the code for other DBs work.

I did no changes at all in XInventory, as there is no test set for them.
2010-05-23 11:48:19 +03:00
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 2537acc04d Unitests: Asset, Estate, Region (the "legacy" one), Inventory
The tests have been modified to work under NUnit 2.4.6
(the one currently used in the project).

They will also work with NUnit 2.5+ as is, but will look better
if you #define NUNIT25 for them.
2010-05-23 11:48:10 +03:00
AlexRa 330ad501a5 Added MS SQL test conn to INI - only as an example, modify before use!!!
NOTE that this INI file is currently loaded as a embedded RESOURCE, which is weird and has a
disadvantage of having to rebuild the Tests whenever the conn strings are changed.
The only reason is that I couldn't figure out a reliable way to put this INI into the correct
dir at runtime. If somebody can do it, that would be cool.
2010-05-23 11:48:08 +03:00
AlexRa 40031e6d37 Removed MySql and SQLite-specific asset test files 2010-05-23 11:48:05 +03:00
AlexRa b1e6e99506 BasicAssetTest.cs replaced by AssetTests.cs
AssetTests: The name has changed to reflect the fact it is no longer a base class,
but the complete asset test for all supported databases.

The test can also check storing of CreatorID, but the feature is
disabled at this commit!
2010-05-23 11:48:02 +03:00
AlexRa 749cf0f6eb Bugfix in tests (must clear db before migrations, not after) 2010-05-23 11:47:59 +03:00
AlexRa f527584ed3 EstateData tests passing on all DBs 2010-05-23 11:47:56 +03:00
AlexRa 94f4c20866 Corrections in RegionTests.cs. It now fully works!
The problem was that some tests relied on prior tests
to leave the DB in a particular state, but the test class
cleared the DB every time. The affected tests have been
merged into one to remove the dependencies.

tested on all 3 Dbs, all tests green.
2010-05-23 11:47:54 +03:00
AlexRa 6322a085b3 Minor corrections in BasicDataServiceTest.cs
(added more functions for cleaning up DB from the
derived tests)
2010-05-23 11:47:51 +03:00
AlexRa 187a98615b MSSQL: added asset_flags, CreatorID to migrations 2010-05-23 11:47:48 +03:00
AlexRa 49f4cc4246 MSSQLAssetData updated to support [CreatorID], [asset_flags] 2010-05-23 11:47:45 +03:00
AlexRa f7bf3facff MSSQLAssetData: fixed some weirdness
Fixed unfinished SQL in FetchAssetMetadataSet, fixed SQL
in UpdateAsset (must not modify ID).

NOT tested!  But apparently shouldn't work worse than the previous version,
esp. the FetchMetadata thing.
2010-05-23 11:47:42 +03:00
AlexRa 7f70ae0ebd All data tests made DBMS-independent 2010-05-23 11:47:39 +03:00
AlexRa 91ad1f4ee7 Added generic base classes for testing database services
These are some generic classes that simplify writing tests
for any of the data connectors and databases. Among other
things, configuring the connection strings is done once,
in a separate resource file.

Tests based on the new BasicDataServiceTest class require
NUnit 2.5 or better.
2010-05-23 11:47:36 +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
Melanie a92780fe5f Merge branch 'master' into careminster-presence-refactor 2010-05-21 03:51:58 +01:00
Melanie 859beaf830 Revert one of the previous patches' hunks. The new code looked better, but
was less efficient.
2010-05-20 11:03:38 +01:00