Commit Graph

15290 Commits (90a39379f0976a00582e2096da4498395d71c109)

Author SHA1 Message Date
Diva Canto 0b9bf236dd On more virtual method 2012-10-01 15:55:24 -07:00
Melanie 503ce70f74 Allow setting connection limits, part 2 2012-09-30 16:31:23 +01:00
Melanie 060d6fe8f4 Allow setting max connections for an endpoint 2012-09-30 16:30:16 +01:00
Melanie 7cc89cdadc Add using clause I missed 2012-09-30 15:57:49 +01:00
Melanie f8a4b61954 Allow up to 12 simultaneous connections to a given endpoint rather than 2 2012-09-30 15:49:51 +01:00
Diva Canto 91a5c602e3 Revert "Added request.Proxy=null everywhere, as discussed in http://stackoverflow.com/questions/2519655/httpwebrequest-is-extremely-slow."
But the patch is here, in case anyone wants to try it.

This reverts commit 531edd51d8.
2012-09-30 07:48:03 -07:00
Diva Canto 531edd51d8 Added request.Proxy=null everywhere, as discussed in http://stackoverflow.com/questions/2519655/httpwebrequest-is-extremely-slow.
Thanks R.Gunther (rigun@rigutech.nl) https://lists.berlios.de/pipermail/opensim-users/2012-September/010986.html
2012-09-30 07:22:55 -07:00
Diva Canto 14a4b146bf Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-30 06:52:19 -07:00
Diva Canto 5b69872655 Made a method of GridUserService virtual so it can be overridden. 2012-09-30 06:51:49 -07:00
Justin Clark-Casey (justincc) 4e9509dafa Get rid of some unnecessary casts in RemoteAdminPlugin.
This was stopping http://code.google.com/p/opensimtools/wiki/RemoteAdminPHPClass from working with some methods (e.g. create_user).
However, this casting has been around for at least 2 years so I'm puzzled that it worked in the first place, though it probably is extremely old sample code.
2012-09-29 02:57:28 +01:00
Justin Clark-Casey (justincc) f457952755 Fix bug where debug http level 6 could not be specified. Also converts newlines at this level to '\n' to enable them to be logged. 2012-09-29 02:38:21 +01:00
Justin Clark-Casey (justincc) 818379ba14 Fire EventManager.TriggerOnAttach (and hence LSL attach event) when an object is attached from the scene.
Enables previously disabled regression test.
Based on SingpostMarv's patch in http://opensimulator.org/mantis/view.php?id=6302 but I prefer a simpler approach that does not expose a resume scripts option right now.
2012-09-29 01:14:23 +01:00
Justin Clark-Casey (justincc) fae869c4ca Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-29 00:09:12 +01:00
Justin Clark-Casey (justincc) d588467d5b Extend attachment regression test to check for appropriate attach event firing.
This reveals that the event is not being fired when an object is attached from ground, which is incorrect.
This check is temporairly disabled.
2012-09-29 00:07:11 +01:00
Robert Adams 76e9cc41bd BulletSim: remember to release the physical body and shape when a prim is destroyed. This fixes many problems with physical linksets. 2012-09-28 12:34:50 -07:00
Robert Adams 6f89975526 BulletSim: add separate runtime and taint-time linkset children lists to keep the creation of constraints separate from runtime. 2012-09-27 22:02:13 -07:00
Robert Adams 74dea4cfd5 BulletSim: rename some constraint variables to be consistant with other name use.
Added callbacks for shape and body changes in GetBodyAndShape() so the linkset
    constraints can be picked up and restored. A better design might be to have
    a "prim shape changed" event. Think about that.
Added constraint types to general constraint class.
2012-09-27 22:02:08 -07:00
Robert Adams 7b65985047 BulletSim: remove the trailing spaces from lines to make git happier 2012-09-27 22:02:03 -07:00
Robert Adams 5781d4d52d BulletSim: remove the unused body management code from BSPrim. There is no going back now. 2012-09-27 22:01:57 -07:00
Robert Adams f82b903dee BulletSim: Fix linkset crash. Caused by the different body and shape
pointers at runtime and at taint-time. Now passes the body into the
    taint.
Vehicles zero inertia when active to eliminate Bullet's contribution
    to vehicle motion.
2012-09-27 22:01:52 -07:00
Robert Adams 4589bc84a3 BulletSim: Terrain sets proper collision flags on creation.
Static objects are set to ISLAND_SLEEPING rather than DISABLE_SIMULATION.
    Might reconsider this and, alternatively, have dynamic objects force activation.
Clean up use of DetailLog().
2012-09-27 22:01:47 -07:00
Robert Adams 735d89e369 BulletSim: btGhostObjects working to make 'volume detect' work.
Rearrangement and cleanup of shape collection code. Much more readable.
Enabling and use of collision filters and masks.
Addition of ID to body creation BulletSimAPI calls so always set in
    shape for collision reporting.
Change default of ShouldSplitSimulationIslands and ShouldRandomizeSolverOrder
    from 'false' to 'true'. When 'false', this suppresses NO_CONTACT_RESPONSE
    which makes volume detect fail.
2012-09-27 22:01:42 -07:00
Robert Adams d016051fa0 BulletSim: renamed members of BulletShape, BulletSim and BulletBody
so the members case is consistant. Caused modifications everywhere.
New logic in BSShapeCollection to track use and sharing of shapes.
    I just reslized, though, that shapes cannot be shared because the
    shape's UserPointer is the localID of the prim and is required
    for tracking collisions. More changes coming.
Added DuplicateCollisionShape2() to API and changed BuildNativeShape2
    to take a ShapeData structure so don't have to pass so many parameters.
    This matches the latest version of BulletSim.dll.
Additions and removal of DetailLog() statements for debugging.
2012-09-27 22:01:37 -07:00
Robert Adams 42802669dd BulletSim: fix regression that caused cylindar shapes to have a box collision shape 2012-09-27 22:01:31 -07:00
Robert Adams 22290ef35a BulletSim: complete code for managed code shape and body tracking. Not debugged.
Eliminate some null exceptions created adding the above code.
Add and remove some detailed logging statements.
2012-09-27 22:01:26 -07:00
Robert Adams a27e4ce6cb BulletSim: add class and infrastructure for shape and object
tracking in the C# code. Needed for the changing body type
    (to and from GhostObjects) for volumeDetect.
2012-09-27 22:01:21 -07:00
Robert Adams 91efccabdc BulletSim: Convert BSCharacter to use common BSPhysObject code and variables.
Fix avatar height calculation to properly account for the capsule ends.
Rearrange some locking in TerrainManager to eliminate possible race conditions.
Move DetailLog() definition into common BSPhysObject class.
Some variable renaming to make usage clearer (refactor.rename makes this so easy).
2012-09-27 22:01:16 -07:00
Robert Adams ee7cda261c BulletSim: move a bunch of common logic out of BSPrim and BSCharacter
and into the parent class BSPhysObject.
Rework collision logic to enable extra collision after done colliding.
Rename 'Scene' to 'PhysicsScene' to differentiate it from the simulator 'Scene'.
2012-09-27 22:01:11 -07:00
Justin Clark-Casey (justincc) b5af17c8e3 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-28 01:54:39 +01:00
Justin Clark-Casey (justincc) 3db10fdbef Lock GDI+ portion og VectorRenderModule.GetDrawStringSize() to prevent concurrent thread use provoking mono crashes.
Same rationale as commit 13690582.
2012-09-28 01:50:21 +01:00
Diva Canto 6511c3b5c6 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-27 16:43:38 -07: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
Justin Clark-Casey (justincc) 2bf42f30af Add MaxPrimsUndo config setting to [Startup] section of OpenSim.ini.
This controls how many undo steps the simulator will store for each prim.
Default is now 20 rather than 5 as it briefly was.
The default number could be increased through this is a memory tradeoff which will scale with the number of prims in the sim and level of activity.
2012-09-27 00:12:34 +01:00
Justin Clark-Casey (justincc) b9934fc4db Don't store undo states if a scene object is manipulated when it is not in a scene.
Adds regression test for this.
2012-09-26 23:31:10 +01:00
Justin Clark-Casey (justincc) 31c636f1e4 refactor: Change control structures in SOP.StoreUndoState() to reduce nesting. 2012-09-26 23:25:50 +01:00
Justin Clark-Casey (justincc) 36e3123069 Make it possible to rescale SOGs when they are not in a scene. 2012-09-26 23:17:21 +01:00
Justin Clark-Casey (justincc) 327320d1a7 Enforce existing 5 action hardcoded undo limit.
This was present in the code but not enforced, which led to a memory leak over time as part properties were changed, whether by viewer, script or another source.
This commit enforces that limit, which will soon become configurable.
Regression test for undo limit added
Should help with http://opensimulator.org/mantis/view.php?id=6279
2012-09-26 22:49:44 +01:00
Justin Clark-Casey (justincc) 21f30a1b5f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-26 22:49:05 +01:00
Justin Clark-Casey (justincc) 90dd5844d6 Add basic undo/redo regression tests. 2012-09-26 21:28:43 +01:00
Diva Canto 3c77b8f463 Use GridUser properly for foreign users. 2012-09-26 12:40:41 -07:00
Diva Canto 80133f9ebe Show the user's home url too on the console command. 2012-09-26 11:27:31 -07:00
Diva Canto 2f61763923 Not really a change, just added a reminder to fix something here. 2012-09-26 11:26:51 -07:00
Diva Canto 7d2cd0d935 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-25 20:04:10 -07:00
Diva Canto ae58cf4224 TOS module. WARNING: migration in GridUser table. 2012-09-25 20:03:49 -07:00
Diva Canto 495a3e7daf Oops, that should be inside the curly bracket. 2012-09-25 19:54:42 -07:00
Justin Clark-Casey (justincc) ddd9384b39 Fix very recently introduced race condition where a CreateNewItem outracing an UploadAsset request could throw an exception because m_asset did not yet exist.
This was accidentally introduced in 4fc0cfb
This commit also consistently removes the AssetXferUploader when the transaction completes, no matter if it completed on asset upload or item operation.
The amount of data being retained was small, since this was clothing/bodypart metadata in the asset rather than textures themselves.
2012-09-25 23:30:25 +01:00
Justin Clark-Casey (justincc) b96a53962b Comment out old m_storeLocal from AssetXferUploader.
This was only used if none of new item, update item or update task item had been set.
But since all transactions go through these paths this old code is redundant.
2012-09-25 23:13:45 +01:00
Justin Clark-Casey (justincc) eb5bec96e4 Insert transaction ID into AssetXferUploader constructor rather than at UploadAsset() to prevent item creation failure when NewInventoryItem thread reachs the object first.
This was preventing the previous race condition fix in 4fc0cfb from actually working.
This commit also removes some of the pointless transaction id checks - these conditions are already being enforced in AgentAssetsTransactions.
2012-09-25 22:54:20 +01:00
Justin Clark-Casey (justincc) 2f795e4fa6 Move UDP update task item code to AssetXferUploader to match existing create user item and update user item mechanisms
This is done for consistency and to allow removal or some access methods that increase code complexity.
However, this path has not been used for a long time, not even by LL 1.23 - viewers use caps http upload for this instead
2012-09-25 22:08:11 +01:00
Justin Clark-Casey (justincc) 4fc0cfba3c Fix occasional race condition failure when creating new clothing/body parts in the viewer or updating existing assets.
On creating these items, the viewer sends a UDP AssetUploadRequest followed by a CreateInventoryItem.
It was possible for the CreateInventoryItem/UpdateInventoryItem to occasionally outrace the AssetUploadRequest and fail to find an initialized Xfer object, at which point the item create would fail.
So instead we always set up a Xfer object on either the asset or inventory item update request.
This does not introduce a new race because code already exists to delay the item operation until the asset is uploaded if necessary (but this only worked if the xfer object already existed)
2012-09-25 21:35:39 +01:00
Diva Canto 77355295da Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-25 10:46:42 -07:00
Diva Canto 4ec2fc4cc2 Deleted extraneous debug message 2012-09-25 10:46:21 -07:00
SignpostMarv 020103c51e Documenting object-related events 2012-09-24 22:59:02 +01:00
Justin Clark-Casey (justincc) ac02cadbdb Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-24 22:52:33 +01:00
SignpostMarv 1cfd63d0b4 Documenting LSL script-related events 2012-09-24 22:44:37 +01:00
Diva Canto 1c42337381 HG Rez object: warn the user if the item or asset cannot be found. 2012-09-22 14:41:19 -07:00
Diva Canto 87d810217e Guard against inventory get failures. 2012-09-22 14:01:51 -07:00
Diva Canto 772aedc731 Make BaseHttpServer throws say something useful. 2012-09-22 14:01:07 -07:00
Diva Canto fb6d6e5cca HG 2.0: User Agent Service now can also control where the local users can go. Domain-name and user-level based. \o/ 2012-09-22 11:11:48 -07:00
Diva Canto 48f4b32d7f More HG 2.0: access control at the Gatekeeper. \o/ 2012-09-21 21:03:14 -07:00
Diva Canto ebd99c9e3e Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-21 17:59:42 -07:00
Diva Canto 21a6ef5bb6 This fixes HG attachments' missing assets (textures, etc).
Also, further improvements on HGUuidGatherer: if the assets are already in this grid don't fetch them again.
2012-09-21 17:58:44 -07:00
Michelle Argus a6f7328216 Remove deprecated parameters for region_id.
Remove deprecated parameters for region_id as anounced in january 2012.
2012-09-22 01:30:38 +01:00
Justin Clark-Casey (justincc) b36ef60aca Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-22 01:05:33 +01:00
SignpostMarv 8d7b1f8aa0 Documenting non-LSL script-related events 2012-09-22 00:57:29 +01:00
Diva Canto b0da4b8d13 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-21 16:45:35 -07:00
Diva Canto cfa022700d Moved the small HGUuidGatherer class to the file where its parent class is. No need to keep 2 separate files. 2012-09-21 16:45:16 -07:00
Justin Clark-Casey (justincc) 9ab5c5040d Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-22 00:26:32 +01:00
Justin Clark-Casey (justincc) 5df3944607 Fix llListFindList() returning no match when there is a match with a script constant component in the source list.
Adds regression test for this case.
Based on http://opensimulator.org/mantis/view.php?id=6156
Thanks SignpostMarv.
2012-09-22 00:23:25 +01:00
Diva Canto fb2ace6fff Removed redundant asset fetches on HGAssetMapper. The UuidGatherer already downloads the assets, so we don't need to do it again... 2012-09-21 15:55:58 -07:00
Diva Canto f931c0a868 Minor: may avoid crashes of sims that still don't have this configuration section. 2012-09-21 15:04:41 -07:00
Diva Canto f4cc19968c Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-21 07:45:26 -07:00
Diva Canto b542622b3a HG 2.0: added asset import/export policies at the sim too. 2012-09-21 07:44:18 -07:00
Diva Canto 5f97b3e1d9 Minor: change the return value of unsuccessful posts to string.Empty. 2012-09-21 06:41:32 -07:00
Diva Canto e379566e6e Improvement over last commit: refactor the asset permissions code, so that it can be used by both the HG Asset Service and the simulator. Also renamed the config vars to something more intuitive 2012-09-20 19:50:57 -07:00
Justin Clark-Casey (justincc) 80f486c778 minor: Make slow outgoing request log messages consistent with other log messages 2012-09-21 01:59:28 +01:00
Justin Clark-Casey (justincc) 632a42e2b1 Rename UuidGather.m_assetCache to m_assetService. If HGUuidGatherer hasn't been instantiated with an assetServerURL then call down to overriden UuidGatherer.GetAsset() instead of calling m_assetService.GetAsset() itself - these two codepaths are now identical. 2012-09-21 01:57:13 +01:00
Justin Clark-Casey (justincc) bceef401fa Simplify UuidGatherer by performing asset fetch synchronously rather than using the async call but waiting for completion anyway! 2012-09-21 01:36:23 +01:00
Justin Clark-Casey (justincc) 1b0abf8f0c Comment out the long unused afaik HTTP agent handlers.
As far as I know, this was only used by the IBM Rest modules, much of which has been commented out for a very long time now.  Other similar code uses HTTP or stream handlers instead.
So commenting this out to reduce code complexity and the need to make this facility consistent with the others where it may not be used anyway.
If this facility is actually being used then please notify me or uncomment it if you are core.
2012-09-21 00:29:13 +01:00
Justin Clark-Casey (justincc) e29d563557 Add request number counting to incoming HTTP requests in the same way that this was already being done for outgoing HTTP requests.
This allows us to associate debug logging messages with the right request.
It also allows us to put a request number on 'long request' logging even if other debug logging is not enabled, which gives us some idea of whether every request is suffering this problem or only some.
This is a separate internal number not associated with any incoming number in the opensim-request-id header, this will be clarified when logging of this incoming request number is re-enabled.
This commit also adds port number to HTTP IN logging to allow us to distinguish between different request numbers on different ports.
2012-09-21 00:09:17 +01:00
Diva Canto 33aa6d172f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2012-09-20 15:51:27 -07:00
Diva Canto 3089b6d824 More HG2.0: Added permission policies in HGAsset Service based on asset types. The policies are given in the config. This is only half of the story. The other half, pertaining to exports/imports made by the sim, will be done next. 2012-09-20 15:49:22 -07:00
Justin Clark-Casey (justincc) a5b3989e5d Insert a new log level 4 for HTTP IN and HTTP OUT that will log how long the request took.
This is only printed if debug http level >= 4 and the request didn't take more than the time considered 'long', in which case the existing log message is printed.
This displaces the previous log levels 4 and 5 which are now 5 and 6 respectively.
2012-09-20 23:18:19 +01:00
Justin Clark-Casey (justincc) 387a1bb283 Add ability to turn on/off logging of outgoing HTTP requests flowing through WebUtil.
This is for debugging purposes.
This is controlled via the "debug http" command which can already log incoming requests.
This now gains a mandatory parameter of in, out or all to control what is logged.
Log messages are also shortened and labelled and HTTP IN or HTTP OUT to be consistent with existing UDP PACKET IN and PACKET OUT messages.
2012-09-20 23:17:44 +01:00
Justin Clark-Casey (justincc) b481a78234 Don't fail to create an IRC nick if nick randomization is disabled in the IRC module.
Patch from http://opensimulator.org/mantis/view.php?id=6293
Thanks Starflower.
2012-09-20 02:01:01 +01:00
SignpostMarv d667f9d260 Documentation of teleport-related events 2012-09-20 01:56:18 +01:00
SignpostMarv 696b3f66c4 minor tweaks to existing comments for IDE goodness 2012-09-20 01:50:40 +01:00
SignpostMarv 49e2872f9e Documentation of agent-related events 2012-09-20 01:50:40 +01:00
SignpostMarv 61f4523e01 Documentation of object-related events 2012-09-20 01:48:50 +01:00
SignpostMarv a74167bb06 Documentation of OnPluginConsole 2012-09-20 01:47:03 +01:00
Justin Clark-Casey (justincc) f2a9d26118 Make ResendAppearanceUpdates = true by default in [Appearance] in OpenSimDefaults.ini.
This resends appearance uuids to avatars in the scene once a minute.
I have seen this help in the past resolve grey appearance problems where viewers have for unknown reasons sometimes ignored the packet.
The overhead is very small since only the UUIDs are sent - the viewer then requests the texture only if it does not have it cached.
This setting will not help with cloudy avatars which are usually due to the viewer not uploading baked texture data or uploading something that isn't valid JPEG2000
2012-09-20 01:40:05 +01:00
Justin Clark-Casey (justincc) 967d42d393 Correctly override and call base OpenSimTestCase.SetUp() method in GridConnectorsTests and ArchiverTests.
Remove unrelated compile warning from AttachmentsModuleTests.
2012-09-19 01:06:42 +01:00
BlueWall 9d973ec3b3 Cleanup from prev. commit
Make correct defaults to Phys/nonPhys prims to fix errors in prev. commit
2012-09-18 10:12:32 -04:00
BlueWall d29fc53052 Fix some inconsistencies in configurartion: NonPhys prims
Fix inconsistencies between configuration parameter names and their description names. Changing the configuration parameters for non physical prim size min-max from Nonphys* to NonPhys*.

  Please update your OpenSim.ini and Regions.ini to reflect these changes.
2012-09-18 09:53:45 -04:00
Mic Bowman 91312daeb2 Moving ScriptModuleComms into the CoreModules tree. 2012-09-17 09:04:54 -07:00
SignpostMarv 0e5f5538bc Documentation of IScriptModuleComms.RegisterConstant and IScriptModuleComms.LookupModConstant
Signed-off-by: Melanie <melanie@t-data.com>
2012-09-17 14:15:52 +01:00
SignpostMarv f9721573d9 Implementing ability to register script constants and invocations on a region module automatically 2012-09-17 14:15:47 +01:00
SignpostMarv c7948a669a preventing a null reference exception from being thrown
Signed-off-by: Melanie <melanie@t-data.com>
2012-09-17 13:29:15 +01:00
SignpostMarv 5e626ce55d script invocations cannot have void return type 2012-09-17 13:29:01 +01:00
Diva Canto 380962d359 HG2.0: Generalized the allowed HG appearances to be more than 1. 2012-09-16 16:45:57 -07:00