Commit Graph

6964 Commits (424792b39b940d93fd3fbb5fc2740cd5659aad39)

Author SHA1 Message Date
Justin Clarke Casey 424792b39b * Rename scene tests to scene object tests since that is what they are actually concerned with 2008-11-12 21:12:46 +00:00
Justin Clarke Casey 2c7ac33650 * test: Add basic synchronous object remove test 2008-11-12 20:35:35 +00:00
Justin Clarke Casey cec112c87a * refactor: as per a recent opensim-dev thread, rename InnerScene to SceneGraph to make it more descriptive of its intended function 2008-11-12 20:16:46 +00:00
Justin Clarke Casey 1ac613a948 * Update Mono.Addins.dll to 0.4, as per sdague's suggestion
* Everything appears to be okay
2008-11-12 19:33:20 +00:00
Justin Clarke Casey b636bb0f9e * Stop the pointless passing of a scene's own region handler back to it in region comms
* Some scene methods ignored it, others did nothing if the region handler given did not match their own (which would never be triggered)
2008-11-12 19:12:33 +00:00
Melanie Thielker 724390e413 Change HTTP server backlog/acceptors to 64, per Adam Z 2008-11-12 18:59:38 +00:00
Justin Clarke Casey e2ab576572 * Stop locking the scene presences dictionary for the entire agent crossing part of the login sequence
* This may alleviate a little the freezing experienced by existing avatars when a new client logs in
* Race condition risks look minimal since one wouldn't expect another thread to start fiddling with that presence
2008-11-12 18:12:18 +00:00
Dr Scofield 4b5e09a36b From: Alan Webb (alan_webb@us.ibm.com)
Fix the broken llSetTimerEvent implementation (sec == 0 was not
possible anymore).
2008-11-12 11:02:55 +00:00
Jeff Ames 0e21182a09 Update svn properties. 2008-11-12 10:01:54 +00:00
Melanie Thielker c71f0899c2 Revamp inventory transfer module, step 1. Inventory will now be saved if
destination user is offline/out of range. No more eternal cache is needed
for tracking IDs. Code cleanup. Removed some casts from IScene to Scene.
Decline now properly places item in trash rather than deleting it outright.
2008-11-12 06:22:31 +00:00
Teravus Ovares c453a41fb5 * Set defaults on the allowed LSL Compilers to 'lsl' unless you've specified otherwise. 2008-11-12 04:49:06 +00:00
Teravus Ovares 29fe003152 * Updates defaults to disclude cs/vb/js from the allowed compilers by default 2008-11-12 03:56:03 +00:00
Melanie Thielker c34805d573 Add the missing bits that got lost in the prim clamping commit. This should
actually make it work
2008-11-12 01:40:38 +00:00
Justin Clarke Casey 70ad3ecd5e * Create TestScene to get at the async object deleter for use in a future test 2008-11-11 21:31:39 +00:00
Justin Clarke Casey a814ac3d67 * Put an Enabled switch on the async object deleter for future testing purposes 2008-11-11 20:33:29 +00:00
Melanie Thielker 47a5d71b7e Prevent pieces from other people's HUDs from displaying at the center of
every user's HUD
2008-11-11 19:08:59 +00:00
Justin Clarke Casey 4245cd90de minor: refactor some SceneTests code for future tests 2008-11-11 18:21:43 +00:00
Justin Clarke Casey 2b97c84d1d * minor: remove log message that gives wrong user server 'version' 2008-11-11 18:15:30 +00:00
Justin Clarke Casey 50e3eb31b0 * Restore storing null to represent 'missing asset' requests in the AssetCache
* If we don't do this then callers to the polling GetAsset wait the full polling time before returning
2008-11-11 17:54:21 +00:00
Adam Frisby 1493f7349f * Minor typing fixes in AssetCache - now uses base types for nearly everything.
* Code Cleanliness Fixes in LLClientView
* Using field instead of local variable for handlerUpdatePrimGroupRotation (if you notice any new oddities with prim group rotation after this patch, please mantis)
2008-11-11 17:48:36 +00:00
Justin Clarke Casey 97816f8c90 * Implement basic region filtering as described in https://lists.berlios.de/pipermail/opensim-dev/2008-November/003468.html
* This is done by sending a 'major interface version' number on sim registration.  Developers must increment this every time they make a change that would make the previous 
OpenSim revision failure incompatible with the new one (non-fatal incompatibilities are fine).
* This number resides in OpenSim.Framework.Servers.VersionInfo.MajorInterfaceVersion
* This allows the grid service to stop older, incompatible regions from connecting
2008-11-11 17:02:46 +00:00
Charles Krinke 851b72570a Mantis#2604. Thank you kindly, Diva for a patch that:
This patch changes a couple of methods in Scene.Inventory to virtual, 
so they can be overridden in subclasses. DeleteToInventory now returns 
the UUID of the newly created asset, so that further actions on it can 
be pursued in subclasses. This will make my life easier for making 
inventory accessible in the hypergrid.
2008-11-11 15:18:16 +00:00
Mike Mazur 32b9975468 If the proxy is on, we need to ignore the extra 6 bytes in the packet. 2008-11-11 03:41:28 +00:00
Melanie Thielker 89570e1637 Add ClampPrimSize option to ensure no prim can exceed the set size. This
will allow people who don't want megaprims in their sim to prevent them
from being created. Any prim rezzed or pulled across the border will be
clamped to the size specified in OpenSim.ini if this option is set.
2008-11-11 03:10:28 +00:00
Melanie Thielker 7af1afb6df Fix a nullref in attachment packing 2008-11-11 02:24:33 +00:00
Melanie Thielker 302d65569f Allow gods to terraform without limits. Respect the Allow Others To
Terraform flag in land.
2008-11-11 01:47:40 +00:00
Melanie Thielker 7eda940e7f Fix llList2Integer to have the same semantics as an (integer) cast. Handle
mixed number/letter content properly.
2008-11-11 01:02:48 +00:00
Jeff Ames 5276c4bdf8 Update svn properties, minor formatting cleanup. 2008-11-11 00:52:47 +00:00
Teravus Ovares d145700115 * Commit allows downloading of the .raw terrain from the estate tools.
* Implements the SendInitiateDownload method in IClientAPI 
* Uses the ITerrainModule Interface to write a terrain file to disk then uses a FileStream to read the binary file from the disk and put it in a byte array. and save to the xFer list.
* It then tells the client to download the file and the client initiates an Xfer request.
2008-11-10 23:56:58 +00:00
Sean Dague 28caaf850c fix README.txt to be 0.6
From: Sean Dague <sdague@gmail.com>
2008-11-10 22:10:07 +00:00
Sean Dague 66ca0ffd37 update autobuilder to 0.6.1
From: Sean Dague <sdague@gmail.com>
2008-11-10 22:09:14 +00:00
Justin Clarke Casey 4c731dd44e * Remove mono warnings
* Remove duplicate test part
2008-11-10 21:12:53 +00:00
Justin Clarke Casey 0bda2cf5bc * refactor: clean up SOG xml2 reloading to reuse more code 2008-11-10 21:06:26 +00:00
Melanie Thielker 58e74b554f Restore the independent LocalID numbering for avatars. Fixes an issue where
it becomes impossible to cross back into a region you came from, or freeze
several seconds after region crossings.
2008-11-10 20:58:24 +00:00
Justin Clarke Casey b044a0f139 * refactor: Make xml (orig format) loading method reuse existing set root part method
* miscellaneous doc/log message changes
2008-11-10 20:54:34 +00:00
Sean Dague d52946dd0d fix unit tests use SetRootPart now
From: Sean Dague <sdague@gmail.com>
2008-11-10 20:46:47 +00:00
Sean Dague 03382c55cb make things compile, but the test still fails because of the root part
changes
2008-11-10 20:42:23 +00:00
Sean Dague 60299d172b Lock tests on EntityList.cs, multithreaded object addition
and removal.

From: Arthur Rodrigo S Valadares <arthursv@linux.vnet.ibm.com>
2008-11-10 20:28:57 +00:00
Justin Clarke Casey 13cf89bf3b * minor: remove useless exception catch 2008-11-10 20:10:23 +00:00
Justin Clarke Casey 0e180b0ad3 * refactor: Expose SOG.SetRootPart for outsiders to use rather than setting RootPart and adding the part separately
* Make RootPart read only
2008-11-10 20:04:55 +00:00
Homer Horwitz 014eb26426 Removed some debug output I forgot to remove... 2008-11-10 19:55:30 +00:00
Justin Clarke Casey adf1c40ba3 * Take out the 1 second sleep debugging line in ScenePresence 2008-11-10 19:48:06 +00:00
Justin Clarke Casey 2d89e562d7 * Refactor the callers of SOG.SetPartAsRoot() to use common code 2008-11-10 19:47:13 +00:00
Justin Clarke Casey c220b4b8b4 * minor: Remove old dead and buried datastore code 2008-11-10 19:32:18 +00:00
Justin Clarke Casey 0f22013ae4 minor: remove mono compiler warnings 2008-11-10 19:06:01 +00:00
Justin Clarke Casey 5d1d5a22a9 * Extend basic scene test to retrieve the object from the scene and match uuids
* Decouple sog and sop by removing the need to pass the sog to the sop when it is created - most of the code was doing this operation (and hence duplicating it) anyway
* Remove unused constructors
2008-11-10 18:10:00 +00:00
Dr Scofield 6df113845e this changeset adds an option to RemoteAdmin to limit the number of
regions that XmlRpcCreateRegion will create: if region_limit is != 0
then XmlRpcCreateRegion will only create a new region if the number of
regions already existing is below region_limit.
2008-11-10 17:37:28 +00:00
Melanie Thielker 2589acc5d1 Keep dropped prims from being temp-on-rez and getting cleaned up 2008-11-10 16:11:22 +00:00
MW d01cd9c84f another small bit of startup refactoring 2008-11-10 15:17:50 +00:00
Sean Dague bfc2d8c231 From: Christopher Yeoh <cyeoh@au1.ibm.com>
This patch addresses mantis bug 2576.

 http://opensimulator.org/mantis/view.php?id=2576

Briefly, if you call llDie from many scripts at the same time (say a
build is cleaning up excess objects) then OpenSim deadlocks. Avatars
are unable to move, and whilst the console is active you can't do much
without it also locking up. This only occurs with the XEngine script
engine enabled.

I have attached a patch which works, but I'm not sure its the right way
to address the problem. The fundamental problem is that a lock on a
SceneObjectGroup's m_parts is taken when the object is deleted, a
callback to the script engine occurs and a fair way down the callchain,
potentially there are locks taken on several other SceneObjectGroup's
m_parts. Deadlock then occurs if you get unlucky enough
to get in the situation where with several llDie's are called and
SceneObjectGroups
have taken a lock on their own m_parts, and end up waiting on each
other's
locks to become available.

The patch adds a lock at a high level so that that the removal of script
instances
from an object only occurs once per scene at a time. This avoids the
potential
of deadlock. Theoretically there could be some performance hit but
AFAICT
the path taken is not a common occurrence.

Would welcome any suggestions for a better solution, otherwise feel free
to apply  :-)

Note this patch was built against the 0.6.0 freeze as trunk was
rather broken for me this morning (creating a script killed the client
connection).
2008-11-10 12:42:22 +00:00