Commit Graph

1332 Commits (b45c929d66a5e2d297724a33fd98f0a18e78b3ec)

Author SHA1 Message Date
Robert Adams 4eb52eb19e Merge branch 'master' into varregion 2013-12-05 21:07:44 -08:00
BlueWall 04f8fc1ce9 Adding profile partners fix to SQLite and PgSQL drivers 2013-12-05 20:25:28 -05:00
BlueWall 823a175f07 Stop writing partner id to record when updating profile data. This should be changed only by admin in backend. 2013-12-05 20:06:04 -05:00
Fernando Oliveira 9b76a46df0 Reversing back to the row["ColumnName"] case field name. http://opensimulator.org/mantis/view.php?id=6868 2013-12-06 00:41:02 +00:00
Robert Adams 31bacfbb63 Merge branch 'master' into varregion 2013-12-01 15:51:42 -08:00
Fernando Oliveira 0ad45531a1 Corrected case to get columns from Regions table from PostgreSQL http://opensimulator.org/mantis/view.php?id=6865
Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
2013-11-25 18:33:49 -05:00
Robert Adams 3193bcaae1 Merge branch 'master' into varregion 2013-11-24 07:23:12 -08:00
Fernando Oliveira f3f3d390f7 Fixed the update StoreRegionWindlightSettings() wasn't updating regionwindlight table, raising PrimaryKey violation;
Signed-off-by: Fernando Oliveira <fernando@oliveira.eti.br>
Signed-off-by: Michael Cerquoni <nebadon2025@gmail.com>
2013-11-22 20:48:12 -05:00
Robert Adams beeec1c467 varregion: elimination of Constants.RegionSize from all over OpenSimulator.
Routines in Util to compute region world coordinates from region coordinates
as well as the conversion to and from region handles. These routines have
replaced a lot of math scattered throughout the simulator.
Should be no functional changes.
2013-11-08 20:53:37 -08:00
Robert Adams ac94dc8a14 varregion: remove unused terrain serialization code in SQLite and PGSQL modules 2013-11-04 22:06:20 -08:00
Robert Adams ff5885ab23 varregion: push TerrainData implementation up and down the database storage stack.
Implement both LoadTerrain and StoreTerrain for all DBs.
Move all database blob serialization/deserialization into TerrainData.
2013-11-01 11:35:31 -07:00
Robert Adams 2be0347f50 Merge branch 'master' into varregion 2013-10-28 09:30:26 -07:00
Fernando Oliveira 67ffb64764 Corrected estateID to EstateID on getEstates function at PGSQLEstateData.cs 2013-10-16 21:58:22 -05:00
Fernando Oliveira f83343d302 * One More thing, add an appdomain data element to ensure that we don't duplicate the assembly resolving. 2013-10-16 21:20:11 -05:00
Fernando Oliveira 8fdf70b87e * Fixes mantis mantis 0006803 [PGSQL] - Simulator crashes - Mono.Security.dll missing. The root of the issue is that the Postgres driver relies on Mono.Security.dll from the mono project. Unfortunately, when using Mono, including the dll in the distribution causes conflicts. This solution puts Mono.Security.dll in bin/lib/NET/ and, if windows .NET is the runtime, informs the assembly loader to load bin/lib/NET/Mono.Security.dll when .NET is scanning for the Mono.Security namespace. On Mono, the included Mono.Security assembly is ignored. 2013-10-16 20:16:29 -05:00
Robert Adams c581506058 varregion: update PGSQL driver for storing variable terrain size blobs. 2013-10-16 08:13:06 -07:00
Robert Adams 8937a2244d Merge branch 'master' into varregion 2013-10-16 07:53:44 -07:00
fernando 3e1ca2bd21 * Fixes mantis #6802 Simulator crashes whist loading (lighshare enabled)
* Please test
2013-10-15 11:55:08 -05:00
Fernando Oliveira ff8a768258 Fernando Oliveira's Postgress SQL Server Data Connector as a single commit.
* Added PostGreSQL support
* Added MySQL/MySQLXGroupData.cs
* PostgreSQL data access implementation
* PostgreSQL dll binarie and RegionStore.migrations
* Migrations Scripts from MSSQL to POSTGRES
* Postgres SQL Type fixes
* Postgres SQL Connection string
* Data type issues
* more fixes
* tests and +tests
* UUID x string - FIGHT!
* Fixed PG types to internal csharp types
* More data type fix (PostgreSQL fields are case sensitive) :(
* more field case sensitive fixes
* changed the migration files to be case sensitive for fields.
* fixed fields case
* finished converting, now search for hidden bugs.
* some more fixes
* bool type fixed
* more case fixes;
* creatorID case fixed
* case fields fixed
* fixed default now() for TMStamp fields with don't allow nulls.
* fix case sensitve for Region name and Estate name
* fixed case for names for search
* fix class name Error
* Bug fixed on select and migrations
* Un-Reverting my change due to Postgres issue with the ILIKE function
* Fixed some issued for Diva Distro
* Fixes for integration with Diva Distro
* Added System.Core to prebuild.xml for PG project
* Configured to make DIff for Push to OpenSim Project
* Diffs only to PostgreSQL mods.
2013-10-12 16:33:45 -05:00
Robert Adams 86bf79aa2b Merge branch 'master' into varregion 2013-10-07 13:58:17 -07:00
Robert Adams 7416809077 varregion: plug in TerrainData class and modify TerrainModule and LLClientView to use same. This passes a terrain info class around rather than passing a one dimensional array thus allowing variable regions. Update the database storage for variable region sizes. This should be downward compatible (same format for 256x256 regions). 2013-10-07 13:57:40 -07:00
Justin Clark-Casey (justincc) 42bdf44658 Bump OPenSimulator version and assembly versions up to 0.8.0 Dev 2013-10-04 23:33:47 +01:00
Robert Adams aea5d3a842 Remove time based terrain storage in SQLite so revision number can be used
to denote terrain format revision.
Add terrain DB format revision codes to ISimulationDataStore.cs.
Setup so legacy compatible terrain storage and fetch is possible while
allowing future format extensions.
2013-09-28 07:33:55 -07:00
Robert Adams 317c04fe17 VarRegion: change RegionInfo storage of region coordinates from region
count number to integer world coordinates.
Added new methods RegionWorldLoc[XY].
Refactored name of 'RegionLoc*' to 'LegacyRegionLoc*' throughout OpenSim.
Kept old 'RegionLoc*' entrypoint to RegionInfo for downward compatability
of external region management packages.
2013-09-28 07:33:52 -07:00
Aleric Inglewood 2dc92e7de1 Preserve attachment point & position when attachment is rezzed in world
Patch taken from
http://opensimulator.org/mantis/view.php?id=4905
originally by Greg C.

Fixed to apply to r/23314 commit
ba9daf849e
(cherry picked from commit 4ff9fbca441110cc2b93edc7286e0e9339e61cbe)
2013-09-22 21:10:01 -05:00
Justin Clark-Casey (justincc) 4cbadc3c49 Allow one to specify a DefaultHGRegion flag in [GridService] in order to allow different default regions for HG and direct grid logins.
This requires a new GridService.GetDefaultHypergridRegions() so ROBUST services require updating but not simulators.
This method still returns regions flagged with just DefaultRegion after any DefaultHGRegions, so if no DefaultHGRegions are specified
then existing configured defaults will still work.
Immediate use is for conference where we need to be able to specify different defaults
However, this is also generally useful to send experienced HG users to one default location and local users whose specified region fails (e.g. no "home" or "last") to another.
2013-09-02 17:27:45 +01:00
Diva Canto 170a6f0563 This makes group search work (Groups V2). 2013-07-28 09:00:28 -07:00
Diva Canto c1705236c7 Fix HGTravelStore.migrations in SQLite (mantis #6709) 2013-07-19 20:25:33 -07:00
Dan Lake edef7472d1 Enable storing of environment settings in NullSimulationData 2013-07-18 13:33:50 -07:00
Diva Canto af02231a7b Added SQLite version of hg travel data store. UNTESTED. Hope it works! 2013-07-14 16:03:46 -07:00
Diva Canto b0140383da Cleanup old hg sessions (older than 2 days) 2013-07-14 15:47:54 -07:00
Diva Canto e33ac50388 HG UAS: Moved hg-session data from memory to DB storage. This makes it so that traveling info survives Robust resets. It should also eliminate the cause of empty IP addresses in agent circuit data that we saw in CC grid. MySQL only. 2013-07-14 14:31:20 -07:00
Robert Adams 65239b059f Enhance NullEstateData to remember stored estate values and return
them next time asked. This keeps any estate settings from being reset
when the estate dialog is opened in a region with null estate storage.
2013-07-11 20:55:32 -07:00
Diva Canto 068a3afad9 HG Friends: migration #3 is failing on some installations of MySql. Setting the table to InnoDB seems to fix the problem. 2013-07-04 09:51:31 -07:00
Diva Canto 316e8f9239 Fix SQL statement 2013-07-02 16:10:09 -07:00
Diva Canto 9725b829d5 Do the same for SQLite and MSSQL 2013-07-02 15:48:30 -07:00
Diva Canto 2c05caec7f Really make it call the method with the query interface 2013-07-02 15:47:02 -07:00
Diva Canto e984bfb4c6 This should have a strong effect on the Unknown User issue mantis #6625 2013-07-02 14:31:39 -07:00
Justin Clark-Casey (justincc) dc0455e217 In XAssetService, on a delete asset request also delete the asset in any chained service.
This eliminates the async migration since it causes a race condition with the "delete asset" console command
2013-06-28 19:11:44 +01:00
Justin Clark-Casey (justincc) f7d09b898a Make the concept of namespaces explicit in dynamic attributes
This is in order to reduce the likelihood of naming clashes, make it easier to filter in/out attributes, ensure uniformity, etc.
All dynattrs in the opensim distro itself or likely future ones should be in the "OpenSim" namespace.
This does alter the underlying dynattrs data structure.  All data in previous structures may not be available, though old structures should not cause errors.
This is done without notice since this feature has been explicitly labelled as experimental, subject to change and has not been in a release.
However, existing materials data is being preserved by moving it to the "Materials" store in the "OpenSim" namespace.
2013-06-27 23:14:28 +01:00
teravus 3357300362 * This fixes having to select and deselect prim to get keyframemotion to start running when pulled from data storage. 2013-06-12 18:13:00 -05:00
teravus d47a18fd09 * Adds KeyFrameMotion storage support to SQLite, just a note, seems that there's still something wrong with keyframed motion starting when the sim starts up, you have to 'select' and 'deselect' the prim again to get it to appear to move. Not sure what this is but maybe melanie_t can comment on this.
* Has a prim table migration..     that might take a while, hold on to your hats.
* Fixes a null-ref when shutting down while keyframed motion is active.
2013-06-11 08:56:20 -05:00
BlueWall 1cb1245d84 SQLite support for UserProfiles 2013-06-07 20:14:39 -04:00
Melanie a3210d1cf8 Database persistence for keyframes. Contains a Migration. 2013-06-06 03:17:38 +01:00
BlueWall d7fa9f671e Adding standard OpenSim header to source files 2013-05-31 22:03:27 -04:00
BlueWall bf03523323 Fill in fields with default values on profile creation 2013-05-31 10:40:47 -04:00
BlueWall 328883700a UserProfiles
UserProfiles for Robust and Standalone. Includes service and connectors for Robust and standalone opensim plus matching region module.
2013-05-30 17:59:18 -04:00
Melanie 81d8deb1a8 Send up the part missing from the Avination Estate commit.
Warning - contains a small migration.
2013-05-11 01:27:37 +01:00
Diva Canto a517e597f5 Fix wrong sql statement in offline im. 2013-04-28 09:03:09 -07:00
Diva Canto 3bc8017464 Recover a lost "virtual". Downstream projects need this. 2013-04-25 09:23:15 -07:00
Justin Clark-Casey (justincc) e20b0d5695 minor: Make exceptions thrown by MySQLAssetData more consistent. 2013-04-10 00:03:37 +01:00
Justin Clark-Casey (justincc) 4153cfbf14 Change recent MSSQL migrations to drop COLUMN from ALTER TABLE which is either not syntactical or unnecessary.
May fix http://opensimulator.org/mantis/view.php?id=6593
2013-04-02 00:45:29 +01:00
Justin Clark-Casey (justincc) 35843e8ec8 Change the table and field names of XAssetService mysql db tables to be capitalized like Avatars, Friends, etc.
Also fixes access time being set on assets rather than XAssetsMeta
This is to try and be somewhat consistent with other service tables that are mainly in this style.
No migration is supplied, since nobody should be using this service yet except on a test basis.
2013-03-15 23:42:16 +00:00
Justin Clark-Casey (justincc) e9f3cd1a60 Implement access time updates on assets for XAssetService.
This only happens if access time is older than 30 days currently, in order to reduce database updates.
The idea is to give some idea of assets which haven't been accessed for a very, very long time.
These might conceivably be deleteable, though this will be a risk due to caching at other points in the chain.
This is actually currently much less useable on the xasset service since access time is on metadata rather than the data itself.
And many metadata entries may point to the same data.  Probably need to address this.
2013-03-15 23:17:54 +00:00
Justin Clark-Casey (justincc) 9b045e72b6 Add asset name and description truncation warnings to SQLite database plugin for consistency. 2013-02-27 21:41:21 +00:00
Justin Clark-Casey (justincc) 74916ed777 Add more information to warnings logged when asset names and descriptions have to be truncated for database storage
On balance, I still think this is useful because asset names and descriptions can sometimes be helpful in determining what things are.
Even though they are never subsequently (inventory names/descriptions are always used instead).
2013-02-27 21:35:54 +00:00
Diva Canto 4779f7d7d5 Deleted all AssemblyFileVersion directives 2013-02-19 17:14:55 -08:00
Diva Canto 9380d01976 First commit of Diva Groups. The Data bits went to OpenSim.Data core, the rest to Addons.Groups.dll. 2013-02-19 07:26:40 -08:00
Diva Canto 46e182dbf5 Offline IM: moved the Data and MySQL bits to the corresponding places in core, so that it will be easier to plugin a SQLite backend, if anyone is interested in doing that. 2013-02-19 06:37:20 -08:00
Diva Canto 8b1b8a3921 I need these for OfflineIM and Groups. 2013-02-18 12:08:05 -08:00
Oren Hurvitz 85b81ff7f2 Added physics parameters support to MSSQL and SQLite (not tested) 2013-02-09 01:03:58 +00:00
Melanie 6504e3d4ce Rename "Bounciness" to "Restitution" 2013-02-07 03:30:02 +00:00
Melanie 054a9928a0 Fix a bug I brought in by manually editing a diff file. Terrain is if cource not always at 20m. 2013-02-06 18:13:02 +00:00
Melanie e5beb480ea Partial port of Avination's support for the new physics parameters.
Implements the parameters as properties, the serialization and
database storage (MySQL only). Implements llSetPrimitiveParams for
prim physics shape and the other 4 extra params. Only the prim shape type
"None" is currently functional. No support for the Viewer UI (yet), that
will be ported in due course. Lots more to port, this is a large-ish changeset.
2013-02-06 08:03:04 +00:00
Justin Clark-Casey (justincc) 1fc9f282fa Merge branch 'dynamic-attributes2' 2013-02-05 00:35:15 +00:00
Justin Clark-Casey (justincc) 1f1da23097 Bump version and assembly version numbers from 0.7.5 to 0.7.6
This is mostly Bluewall's work but I am also bumping the general version number
OpenSimulator 0.7.5 remains in the release candidate stage.
I'm doing this because master is significantly adding things that will not be in 0.7.5
This update should not cause issues with existing external binary DLLs because our DLLs do not have strong names
and so the exact version match requirement is not in force.
2013-02-05 00:23:17 +00:00
Justin Clark-Casey (justincc) 7a139f8e53 Remove the accidental PrimShapes column that I added back to the SQLite region store 2013-01-25 04:35:06 +00:00
Justin Clark-Casey (justincc) 7789415148 Fix tests by adding DynAttrs add column commands to RegionStore.migrations (these were originally in 021_RegionStore.sql which I might have forgotton to add 2 years ago). 2013-01-25 04:22:32 +00:00
Oren Hurvitz 86802bcf93 Store NULL in the 'DynAttrs' column if the prim doesn't have any dynamic attributes 2013-01-25 04:03:24 +00:00
Oren Hurvitz fdec05a15e Stopped storing dynamic attributes in the PrimShape 2013-01-25 04:03:20 +00:00
Oren Hurvitz 918b062866 Added missing DynAttrs references in MySQL 2013-01-25 04:03:15 +00:00
Justin Clark-Casey (justincc) a6d9c26365 Encapsulate an OSDMap in DAMap (was DynAttrsOSDMap) rather than inheriting from it
This is the easier way to give us control over locking, rather than asking that OSDMap IDictionary methods be virtual
2013-01-25 04:03:11 +00:00
Justin Clark-Casey (justincc) a3e1e6dd61 Implement dynamic attribute persistence on mysql and mssql
mssql is untested
2013-01-25 04:03:09 +00:00
Justin Clark-Casey (justincc) 1bd0b06ec1 Implement Dynamic Attributes for SOP and PBS. Implement storage in SQLite 2013-01-25 04:03:04 +00:00
Oren Hurvitz 5097ba81d4 Added locking in NullRegionData.
This prevents errors when one thread iterates over the regions (e.g., from RegenerateMaptileAndReregister()) while another thread is adding a region.
2013-01-02 22:48:25 +00:00
BlueWall 8efae93b51 Restrict IPresenceData.VerifyAgent
Restrict IPresenceData.VerifyAgent to only return bool result
2012-12-09 15:08:32 -05:00
BlueWall f85b23edea Add agent verification to Presence 2012-12-08 17:33:03 -05:00
Justin Clark-Casey (justincc) 16e4019eca Fix database service unit test failures by temporarily reverting BasicDataServiceTest extending OpenSimTestCase.
Mono 2.4.3 doesn't like this when running nunit, with nunit throwing
AssetTests`2 : System.MemberAccessException : Cannot create an instance of OpenSim.Data.Tests.AssetTests`2[TConn,TAssetData] because Type.ContainsGenericParameters is true.
and similar.  Mono 2.10.8.1 does not have this issue.
So will wait until min version of mono bumps before restoring.
2012-11-26 22:25:36 +00:00
Justin Clark-Casey (justincc) 22d4c52ffc Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests 2012-11-24 03:15:24 +00:00
Justin Clark-Casey (justincc) 82690e1384 Fix bug where loading an OAR with a deeded parcel would always set the parcel owner ID to the estate owner even if the group UUID was present.
Aims to address http://opensimulator.org/mantis/view.php?id=6355
As part of this work, an incomplete IXGroupsData was added which currently only allows store/fetch/delete of group records
(i.e. no membership data etc)
This is subject to change and currently only an in-memory storage implementation exists for regression test purposes.
2012-11-24 02:43:31 +00:00
Justin Clark-Casey (justincc) 350cd58e5e refactor: move common inventory folder version update code to parent class in mysql, mssql and sqlite database plugins 2012-11-15 04:01:30 +00:00
Justin Clark-Casey (justincc) 16dd94b956 Improve inventory folder version updating for mssql database plugin.
I am not in a position to test this so the updates have been done blind.
If it needs any fixing will probably require patches.
2012-11-15 03:39:17 +00:00
Justin Clark-Casey (justincc) 1aa0271239 Implement folder version updating for the sqlite inventory plugin 2012-11-15 03:29:55 +00:00
Justin Clark-Casey (justincc) 94da908813 More consistently dispose of SqliteCommand in OpenSim.Data.SQLite where possible.
Not doing SQLiteInventoryStore since this is no longer used and should disappear in the future.
2012-11-14 04:45:59 +00:00
Diva Canto e4cb7af98a Updated all existing AssemblyVersions's to 0.7.5.*. Many DLLs still don't have an AssemblyInfo file. 2012-11-13 19:26:43 -08:00
Justin Clark-Casey (justincc) 61b816ebba minor: Adjust method doc on IXInventoryData MoveItem() and MoveFolder() to make it clear we're moving to an existing folder. 2012-11-09 01:18:11 +00:00
Justin Clark-Casey (justincc) 75c880a6f3 Update parent inventory folder version numbers when folders are moved/created/deleted to match version numbers cached by viewers.
This is done in the way that one would expect (e.g. moving a folder increments version number on both source and destination parent folders).
This should hopefully improve viewer reuse of its cached inventory information.
Currently MySQL only but will be implement for SQLite/MSSQL if there are no issues.
2012-11-09 01:13:19 +00:00
Justin Clark-Casey (justincc) bf469819a6 Update folder version numbers when moving items and making the Delete(string[], string[]) call (not just string, string).
This is to stop viewer inventory cache version numbers becoming out of sync with grid stored numbers when viewer performs these actions.
If there are no problems with these changes, they will be propogated to SQLite (and MSSQL if that's simple enough).
May also need to do the same on folder store/create/delete and maybe propogate version increments up the folder hierarchy, but that requires investigation.
2012-11-06 23:44:52 +00:00
Justin Clark-Casey (justincc) a8424490ae Increment version number of a folder when an object it contains is deleted.
Not doing this was allowing the viewer inventory cache to become out of sync if an item was directly deleted.
2012-11-06 23:40:33 +00:00
PixelTomsen 20eac8d6d0 SQLite DB: some values of land data will be not saved / loaded
http://opensimulator.org/mantis/view.php?id=6370

Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-10-21 10:41:23 -04:00
Justin Clark-Casey (justincc) 40bf789ad7 Disambiguate use of RegionFlags in NullRegionData
This was not necessary with the nant build but is for xbuild, since xbuild includes associated project DLLs
And so picks up OpenMetaverse.dll even though it isn't referenced by OpenSim.Data.Null.dll
2012-10-09 17:20:01 +01:00
Justin Clark-Casey (justincc) 73c9abf5f2 Move OpenSim.Data.RegionFlags -> OpenSim.Framework.RegionFlags to make it easier for other code to use (e.g. LSL_Api) without having to reference OpenSim.Data just for this. 2012-10-09 01:35:27 +01:00
Diva Canto 7a50705188 Removed the bits about the TOSModule. That module doesn't go into core. WARNING: migration on GridUser withdrawn too, but left the migration number there. 2012-09-27 16:43:18 -07:00
Diva Canto ae58cf4224 TOS module. WARNING: migration in GridUser table. 2012-09-25 20:03:49 -07:00
Justin Clark-Casey (justincc) 3bd3f448a2 Also do other MySQL region settings related calls under m_dbLock, in common with other calls. 2012-08-31 00:33:06 +01:00
Justin Clark-Casey (justincc) 7c6e8fab15 Do Windlight storage and removal calls in MySQL under m_dbLock, as is done with all the other database calls. 2012-08-31 00:29:57 +01:00
Justin Clark-Casey (justincc) 7ea832d47c Fix regression introduced in a0d178b2 (Sat Aug 25 02:00:17 2012) where folders with asset type of 'Folder' and 'Unknown' were accidentally treated as system folders.
This prevented more than one additional ordinary folder from being created in the base "My Inventory" user folder.
Added regression test for this case.
Switched tests to use XInventoryService with mostly implemented TestXInventoryDataPlugin rather than InventoryService
Disabled TestLoadIarV0_1SameNameCreator() since this has not been working for a very long time (ever since XInventoryService) started being used
since it doesnt' preserve creator data in the same way as InventoryService did and so effectively lost the OSPAs.
However, nobody noticed/complained about this issue and OSPAs have been superseded by HG like creator information via the --home save oar/iar switch.
2012-08-29 02:01:43 +01:00
Melanie c7f2debd38 Fix and finish the extra parameters storage system for MySQL 2012-08-15 18:58:32 +01:00
Melanie dc82ad0f7a Add a skeleton for a name value storage associated with regions 2012-08-15 02:06:22 +01:00
Justin Clark-Casey (justincc) 16d5b79d57 minor: remove some recent mono compiler warnings 2012-07-07 00:36:01 +01:00