Commit Graph

564 Commits (2c2f10e156c62aa1d95923ff5309f2be7f08faeb)

Author SHA1 Message Date
Justin Clarke Casey bdee86563c * Check in another patch from http://opensimulator.org/mantis/view.php?id=2710
* This allows removal of the old NHiberate.Mapping.Attributes.dll
* Also add in the files I forgot about last time.  Doh!
2008-12-04 20:48:08 +00:00
Sean Dague 95de4717b6 * Minor test correction, comment removal
From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-12-03 19:19:51 +00:00
Sean Dague b2ab15ba34 Extends Avatar Appearance tests
From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-12-03 19:19:39 +00:00
Justin Clarke Casey dde32f1130 * Reapply http://opensimulator.org/mantis/view.php?id=2710
* This patch gets NHibernate working
*** PLEASE NOTE: This patch now requires the libmono-oracle2.0-cil library to be installed on Ubuntu (to stop the System.Data.Oracle missing failure) ***
* Not sure what the dependency is on other distros.  Adding this info to http://opensimulator.org/wiki/Build_Instructions would be most welcome
* Adds Castle.* libraries that were missing last time (note, dlls have been added from http://downloads.sourceforge.net/nhibernate/NHibernate-2.0.1.GA-bin.zip)
2008-12-02 15:22:58 +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
Justin Clarke Casey 80520206fc * Unforunately it turns out not to be that simple. Revert the rest of r7560 for now. 2008-12-01 18:42:14 +00:00
Charles Krinke 01fc0492d0 Mantis#2730. Thank you kindly, StrawberryFride for a patch that:
MSSQL Fix to accommodate random ParentIDs. uint values now 
cleanly converted to ints and vice versa to hopefully prevent 
outofrange exceptions on prim storage.
2008-12-01 15:03:57 +00:00
Adam Frisby 4ed7ca62b1 * From Mantis#2701 - Implements NHibernate data adapter, adds support for MsSql2005 to NHibernate.
* Patch courtesy of Adminotech and realXtend. Thanks!
2008-12-01 07:50:38 +00:00
Homer Horwitz 96921c402c Try to fix Mantis#2727. SQLite seems to be able to store bigger numbers in
an INTEGER column (using 6 bytes), but the mapping was wrong.
Question: Should we move localIDs to int instead of uint to save some bytes?
2008-11-30 22:27:22 +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 f1f4b16bc8 Change the max value of the bytes in tests to 127. MySQL bytes are signed
by default
2008-11-26 12:34:32 +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 bd6f58184a Reduce the numerical range of text values to match what MySQL offers 2008-11-26 11:27:02 +00:00
Melanie Thielker c7d39fb4e3 Comment one more field that can't be tested that way anymore 2008-11-26 10:55:06 +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
Justin Clarke Casey 759a667247 * Make a step on removing direct access to TaskInventoryDictionary from other packages 2008-11-25 17:15:21 +00:00
Justin Clarke Casey 11f7471d9c * Remove direct access to Inventory.Serial 2008-11-25 17:01:18 +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 c0cd681608 * Comment out unused access time method in MSSQL
* This should probably be being called in FetchAsset() instead as for all the other databases, but I lack the means to test MSSQL
2008-11-21 21:24:39 +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 b0ee8fc271 Mantis#2658. Thank you kindly, StrawberryFride for a patch that:
Keeping up with MySQL and SQLite. Small code changes and 
another resource file to add.
2008-11-19 23:57:19 +00:00
Charles Krinke 9babdb1095 Mantis#2657. Thank you kindly, StrawberryFride for a patch that:
Added access_time and create_time, plus the new sun position 
data to MSSQL code.
2008-11-19 18:36:04 +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
Melanie Thielker f518ca7feb Reapply r7369 r7367 r7366 r7370 r7381. This brings it back up to the new
libOMV.
2008-11-19 06:25:34 +00:00
Melanie Thielker 3234472d62 Reverting the texture sending patch and the new libOMV. This makes this
release a direct descendant of the stable 7364, with all the features and
none of the issues.
This omits the following patch chain: r7383 r7382 r7381 r7377 r7375 r7373
r7372 r7370 r7369 r7368 r7367 r7366
2008-11-19 06:15:21 +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
Sean Dague 99fb0d7b33 Extended Agent Tests
From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-11-18 12:48:29 +00:00
Justin Clarke Casey c25a0ea792 * Update libOMV to r2359. This is necessary for the progressive texture patch
* Update libopenjpeg as well for this patch.
* Appears to be okay on a very short sniff test
* Source code will be placed in opensim-libs shortly
2008-11-17 21:00:34 +00:00
Dr Scofield 68019e8d98 cleaning up warnings in MSSQL code. 2008-11-17 11:07:18 +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 9a6cdf662b Mantis#2626: Thank you Ruud Lathrop, for a patch that cleans up MSSQL code. 2008-11-15 21:27:10 +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
Jeff Ames e40fe2db26 Update svn properties, minor formatting cleanup. 2008-11-15 02:21:52 +00:00
Melanie Thielker 5214d39e7c Mantis #2618
Thank you, StrawberryFride, for a patch that adds group permission support
to MSSQL. Contains a migration, back up your database.
2008-11-14 19:36:29 +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
Melanie Thielker 9960637545 Try to make the test pass again 2008-11-14 17:53:58 +00:00
Melanie Thielker edee11ff87 Reapplying a revised version of Christopher Yeoh's (IBM) patch for allow
inventory drop. Also adds a new flags, "propagate_permissions" to
OpenSim.ini to control that feature.
2008-11-14 17:24:56 +00:00
Dr Scofield 5c21ec6d10 reverting #7295, as it still fails a test case (as pointed out very
kindly by sean) --- lesson learned: just running a "make test" is not
sufficient, you need to precede it by a "make clean".
2008-11-14 13:03:18 +00:00
Dr Scofield 5e20e32b69 From: Christopher Yeoh <cyeoh@au1.ibm.com>
This patch makes llAllowInventoryDrop work with the permissions module
enabled. Changes include:

- Enabled PropagatePermissions when permissions module serverside perms
  is on

- change ownership of item when item is dropped into an object.
  Ownership changes to the owner of the object the item is dropped into

- propagation of permissions if the permissions module enabled (eg
  next-owner mask applied)

- CHANGED_ALLOWED_DROP is now passed to the change script event if an
  item was allowed to be dropped into the object only because
  llAllowInventoryDrop is enabled (instead of CHANGED_INVENTORY being
  passed).

- Sets object flags correctly when llAllowInventoryDrop is called so
  clients are notified immediately of the change in state. Am not
  sure that calling aggregateScriptEvents is the right way to do it,
  but it works and seems to be the only way without making further
  changes to update LocalFlags
2008-11-14 10:55:14 +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
Jeff Ames 8da726c3a8 Update svn properties. Add copyright headers. Minor formatting cleanup. 2008-11-09 01:31:38 +00:00
Charles Krinke 62bc9c2e8e Mantis#2591. Thank you kindly, Ruud Lathrop for a patch that:
This patch is two script that fixes a issue when adding more 
then 1 avatar to estateban/estatemanager list. It removes a 
key and adds a index to the tables.
2008-11-09 00:53:54 +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
Tedd Hansen 9511a8c763 Work in progress on SECS stuff. Have been holding it off until after 0.6 release. Still messy as hell and doesn't really work yet. Will undergo dramatic changes. AND MOST IMPORTANTLY: Will be conformed to work in coop with todays DNE and XEngine, hopefully one day providing a common interface for all components. 2008-11-08 17:35:48 +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
Jeff Ames 638fe7a7b5 Update svn properties, minor formatting cleanup. 2008-11-05 15:15:41 +00:00
Sean Dague 8bacdbd49c add a test that ensures that databases work if email is null.
From: Sean Dague <sdague@gmail.com>
2008-11-05 13:23:25 +00:00
Dahlia Trimble 6d195ce3ce added missing file from mantis #2555 2008-11-05 10:38:37 +00:00
Justin Clarke Casey 349f6ec3e5 * Apply http://opensimulator.org/mantis/view.php?id=2555
* Add new e-mail field to users table for MSSQL
* Thanks StrawberryFride
2008-11-04 21:44:57 +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 972143b592 - Added stronger persistence tests for BasicUserTests
From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-11-04 18:53:13 +00:00
Sean Dague 45dd97a262 - Stronger inventory tests
From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-11-04 18:53:06 +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
Justin Clarke Casey 9f9d97c57b * minor: remove mono warning 2008-10-30 19:32:36 +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
Jeff Ames b2d6b0a3d4 Update svn properties, minor formatting cleanup. 2008-10-27 01:43:59 +00:00
Charles Krinke 8cb889cb0e Thank you kindly, Ruud Lathrop for a patch that solves:
Primary Key violation when just linked a lot of prims using MSSQL.
2008-10-27 00:46:17 +00:00
Melanie Thielker af7fcb540c Add a resource file on Strawberry's patch I missed 2008-10-18 16:31:05 +00:00
Melanie Thielker c3ba97c80a Thank you, Strawberry Fride, for a patch that brings MSSQL even with MySQL 2008-10-18 13:04:35 +00:00
Melanie Thielker efe3f3eb2a Megapatch. :) Fix skull attachment editing. Streamline Object terse updates.
Add rezzing time to objects. Add Object return and traffic fields to land
database. Add plumbing for auto return. Implement auto return.
Contains a migration. May contain nuts.
2008-10-18 05:51:36 +00:00
Jeff Ames f5c9600eb7 Update svn properties, minor formatting cleanup. 2008-10-17 02:50:39 +00:00
Sean Dague a29d8b9abb - Removed debug print method 2008-10-16 19:05:32 +00:00
Sean Dague b61f124cc3 more fun with rebasing 2008-10-16 18:41:24 +00:00
Sean Dague 43928d5253 resorting out this merge from arthur, sorry for so many commits here. 2008-10-16 17:46:46 +00:00
Sean Dague 8795bb623d - Enforced no user or agent with UUID 0 on agent DB insertion 2008-10-16 17:46:43 +00:00
Sean Dague 24822ab890 - New attempt after merging problem 2008-10-16 15:58:06 +00:00
Sean Dague fa3d8220f2 - Enforced no user or agent with UUID 0 on agent DB insertion 2008-10-16 15:58:05 +00:00
Sean Dague b9a736f0b8 - Removed a Console.Writeline and added a Test that will be changed
if the last commit is accepted
2008-10-16 15:58:03 +00:00
Sean Dague 8621303ea9 - Removed debug print method 2008-10-16 15:58:01 +00:00
Sean Dague 72725a0894 - Enforced no user or agent with UUID 0 on agent DB insertion 2008-10-16 15:57:59 +00:00
Sean Dague ceb5830142 clean up a merge conflict and remove a console message 2008-10-15 21:00:08 +00:00
Justin Clarke Casey fac4d02d7e * minor: comment out persisting prim inventory log messages 2008-10-15 19:54:07 +00:00
Sean Dague 63ef14bd8c - Added User Appearance Set and Get tests 2008-10-15 18:15:46 +00:00
Sean Dague f2eca571b8 - Removed a Console.Writeline and added a Test that will be changed
if the last commit is accepted
2008-10-15 18:15:45 +00:00
Sean Dague fa8c0d7683 - Makes MySQL reject inserting UUID 0
- Makes SQLite mimick MySQL default behavior on first
  and last name already on db: it does not insert the
  new record.
- Added tests for UUID 0 and for new UUID with existing
  first and last name.
2008-10-15 18:15:43 +00:00