SignpostMarv
ee7478fa16
sending more user-friendly messages to the script error window rather than the thrown exceptions.
...
Signed-off-by: Melanie <melanie@t-data.com>
2012-07-16 21:32:38 +01:00
dahlia
5d3723a47f
update PrimMesher.cs to dll version r72 which fixes some path errors in sliced linear prims. Addresses Mantis #6085
2012-07-13 21:22:15 -07:00
SignpostMarv
84b7ae2573
acting on feedback from justincc
2012-07-14 01:45:34 +01:00
SignpostMarv
423101b425
acting on feedback from justincc
2012-07-14 01:45:34 +01:00
SignpostMarv
e3453dd9ca
added in some extra variables, it sometimes thinks it is on the same parcel :(
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
SignpostMarv
b6cd3b625e
adding workaround for silent failure if position is outside the bounds of a region, implementing parcel prim count check.
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
SignpostMarv
8d59385eea
Implementation of llSetRegionPos(). Does not implement failure on object entry/prim limit/access restrictions.
...
Signed-off-by: SignpostMarv <github@signpostmarv.name>
2012-07-14 01:45:34 +01:00
Justin Clark-Casey (justincc)
ec6a195e40
When generating a Warp3D texture, set the detailTexture[i] variable on resize from the JPEG2000 original rather than only saving it to disk.
...
This appears to be the cause of the warp 3d exception seen when starting a new region for the first time.
Subsequent starts were okay because resized saved bitmap was correctly retrieved from disk.
Should fix http://opensimulator.org/mantis/view.php?id=5204 and http://opensimulator.org/mantis/view.php?id=5272
2012-07-14 01:11:30 +01:00
Justin Clark-Casey (justincc)
2954ceccae
Remove a callstack print out I accidentally left in 2 commits ago in 9ccb578
2012-07-13 01:08:49 +01:00
Justin Clark-Casey (justincc)
884d603cac
Rather than instantiating a UTF8 encoding everywhere when we want to supress the BOM, use a single Util.UTF8NoBomEncoding.
...
This class is thread-safe (as evidenced by the provision of the system-wide Encoding.UTF8 which does not suppress BOM on output).
2012-07-13 01:03:28 +01:00
Justin Clark-Casey (justincc)
9ccb578721
Don't cache regions data on the other unused LocalGridServiceConnector that the module code still sets up even if we're using one directly instantiated from the RemoteGridServiceConnector.
...
Also improves log messages to indicate which regions are sending/receiving various neighbour protocol messages.
2012-07-13 00:44:00 +01:00
Justin Clark-Casey (justincc)
d6f54b25cd
Stop redundantly passing in the endpoint to the LLClientView constructor.
...
This can always be retrieved via the LLUDPClient and is so done in various places already.
2012-07-12 23:48:42 +01:00
Justin Clark-Casey (justincc)
dda999a22c
Remove IClientIPEndpoint client interface for now.
...
This may well come back in the future when this subinterface is actually used but it currently isn't and I feel the name was poor.
Everything uses IClientAPI.RemoveEndPoint which also returned the full endpoint rather than just the ip address.
2012-07-12 23:43:02 +01:00
Justin Clark-Casey (justincc)
3b3d9967b1
Remove IClientAPI.GetClientEP() in favour of existing identical IClientAPI.RemoteEndpoint.
2012-07-12 23:29:57 +01:00
Justin Clark-Casey (justincc)
75ab9b4b88
Change very recent AllowedViewerList and BannedViewerList config setting names in OpenSim.ini.example to AllowedClients and BannedClients to match long-existing settings in [LoginService]
...
Also changes separator from comma to bar to match existing [LoginService] config features.
Divergence of config names for identical facilities in different places makes for an unnecessarily confusing user experience.
2012-07-12 23:18:30 +01:00
Justin Clark-Casey (justincc)
15283d35f1
Extend "show circuits" to show circuit code, ip and viewer name.
...
Also change to use standard table formatting
"show circuits" and "show connections" console commands are very similar but access different data structures.
2012-07-12 23:09:36 +01:00
Justin Clark-Casey (justincc)
6a0de355e0
Add active status to "show connections"
2012-07-12 22:37:48 +01:00
Justin Clark-Casey (justincc)
65a25ee510
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-07-12 22:35:38 +01:00
Justin Clark-Casey (justincc)
ca412032e8
Put output for "show connections" command into standard table format.
...
Also moves into own method.
2012-07-12 21:36:33 +01:00
Robert Adams
743437262e
Many explanitory comments added to the link and delink code in
...
SOG and SOP. Should have no functionality changes.
2012-07-11 16:12:38 -07:00
Justin Clark-Casey (justincc)
916e3bf886
Where possible, use the system Encoding.ASCII and Encoding.UTF8 rather than constructing fresh copies.
...
The encodings are thread-safe and already used in such a manner in other places.
This isn't done where Byte Order Mark output is suppressed, since Encoding.UTF8 is constructed to output the BOM.
2012-07-11 22:54:22 +01:00
Justin Clark-Casey (justincc)
33cff9b9d7
Allow XEngine StartDelay to be configured in the [XEngine] config section.
...
This is only currently meant for use by regression tests that don't have any issues if XEngine is started up quickly, since no other operations will be occuring simultaneously.
Therefore, this is not yet documented externally.
2012-07-11 21:55:18 +01:00
Justin Clark-Casey (justincc)
0e611c47d3
Remove WorldComm module from the regression TestCompileAndStartScript() since the infrastructure no longer fails if this module isn't present, at least on the tested codepaths
2012-07-11 21:46:46 +01:00
Justin Clark-Casey (justincc)
fc24563206
Add regression TestDetachScriptedAttachmentToInventory()
...
This currently only does a relatively crude check for a ScriptState node in the serialized xml
2012-07-11 21:43:35 +01:00
Justin Clark-Casey (justincc)
14d05dc2a9
Add regression TestRezScriptedAttachmentsFromInventory() though this currently only checks for the presence of script items, not for started scripts
2012-07-11 19:54:40 +01:00
Justin Clark-Casey (justincc)
337ea019bd
If a part has a sit target and an avatar is already sitting, allow another avatar to sit in the position given if no sit target was set.
...
Previous behave was that the second avatar could not sit.
This matches behaviour observed on the LL grid.
2012-07-10 23:55:22 +01:00
Justin Clark-Casey (justincc)
cdea572d2e
refactor: move management of SOP.SitTargetAvatar into SOP.AddSittingAvatar() and SOP.RemoveSittingAvatar()
2012-07-10 23:50:04 +01:00
Justin Clark-Casey (justincc)
11e0ad6dc8
Revert "refactor: Add SOP.IsSitTargetOccupied to improve readability"
...
This reverts commit c8f0d476d2
.
On reconsideration, I think this is less readable since immediately following code still sets SitTargetAvatar directly
2012-07-10 23:39:05 +01:00
Justin Clark-Casey (justincc)
c8f0d476d2
refactor: Add SOP.IsSitTargetOccupied to improve readability
2012-07-10 23:34:40 +01:00
Justin Clark-Casey (justincc)
69a6f6e3cd
refactor: use sit orientation argument passed in to SP.SendSitResponse() rather than creating a new copy
...
There are no issues with side-effects since this is a struct.
2012-07-10 23:26:40 +01:00
Justin Clark-Casey (justincc)
e8347b7095
Move common code to detect whether a part has a valid sit target into a SOP property rather than being repeated in SP.
...
This also makes the detection in SP.FindNextAvailableSitTarget() and SendSitResponse() identical.
Previously they varied slightly (SendSitResponse didn't check for an older type of invalid quaternion) but the practical effect is most probably zero.
2012-07-10 23:21:39 +01:00
Justin Clark-Casey (justincc)
506437b684
Remove log line accidentally left in SP.SendSitResponse()
2012-07-10 23:06:34 +01:00
Justin Clark-Casey (justincc)
9f01c3d408
Disable logging in regression test in OSSL_ApiAttachmentTests
2012-07-10 23:04:44 +01:00
Justin Clark-Casey (justincc)
58869e5aa0
Fix recent SOP.GetSittingAvatars() to return null if there are no sitting avatars rather than throwing an exception.
...
Extends sitting avatar regression tests to test new sitters information
2012-07-10 23:03:52 +01:00
Justin Clark-Casey (justincc)
f3134b5cf6
When an attachment is detached to inv or derezzed, stop the scripts, update the known item with script state still in the script engine and then remove the scripts.
...
This is to fix a regression starting from 5301648
where attachments had to start being deleted before persistence in order to avoid race conditions with hud update threads.
2012-07-10 22:41:11 +01:00
Justin Clark-Casey (justincc)
eb5ec4a786
If a script is being stopped manually, then give the scriptpool thread 1 second to finish normally before forcibly aborting.
...
This is to avoid the worst of the problems in mono 2.6, 2.10 where an aborted thread does not always release all its locks.
This very short grace period is identical to the existing behaviour when a script is removed from the scene.
2012-07-10 21:42:51 +01:00
Justin Clark-Casey (justincc)
c8af20f966
This script allows an object to be attached directly from prim inventory to another avatar in the scene.
...
Very useful in serious game/environment scenarios where its only allowed for trusted creators.
Threat level Severe
2012-07-09 23:08:41 +01:00
Justin Clark-Casey (justincc)
d6f563794e
Don't allow a prim to be sat upon if its part of an attachment
2012-07-09 21:43:44 +01:00
Justin Clark-Casey (justincc)
2eaa6d5ace
Do not allow a script to attach a prim if its being sat upon.
...
This prevents a stack overflow where a get position on the avatar will refer to the attachment which will in turn refer back to the avatar.
This required recording of all sitting avatars on a prim which is done separately from recording the sit target avatar.
Recording HashSet is null if there are no sitting avatars in order to save memory.
2012-07-09 21:24:32 +01:00
Justin Clark-Casey (justincc)
112cddc9ca
minor: rearrange INITIALIZATION COMPLETE log message so that it's clear init is only complete for a particular region at a time
2012-07-07 00:53:17 +01:00
Justin Clark-Casey (justincc)
16d5b79d57
minor: remove some recent mono compiler warnings
2012-07-07 00:36:01 +01:00
Justin Clark-Casey (justincc)
1201307c73
Remove duplicate Warp3DImageModule entry in CoreModulePlugin.addin.xml
...
This was causing 2 copies of the module to be created for each scene.
Probably no bad consequences other than a small waste of memory (both for the module and for the warp3D renderer it loaded)
2012-07-07 00:26:25 +01:00
Justin Clark-Casey (justincc)
a85741ac37
minor: Make WORLD MAP category log lines consistent
2012-07-07 00:14:16 +01:00
Justin Clark-Casey (justincc)
3bd134474b
minor: Get RegionReady module to shout initialization complete status to draw the eye
2012-07-07 00:09:33 +01:00
Justin Clark-Casey (justincc)
b19ead5f9e
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-07-07 00:05:16 +01:00
Justin Clark-Casey (justincc)
7ff4eec79c
Remove redundant SetScene() function in Scene.AddSceneObject()
...
This is always done later on in SceneGraph.AddSceneObject() if the call hasn't failed due to sanity checks.
There's no other purpose for this method to exist and it's dangerous/pointless to call in other conditions.
2012-07-07 00:02:45 +01:00
Robert Adams
7aff238eee
Merge branch 'bulletsim2'
...
Cleanup preceeding major work. No major functional changes.
Collisions reported to simulator more efficiently.
BulletSim binaries updated using a more recent version of Bullet (v2.80-r2527).
2012-07-06 15:59:09 -07:00
Justin Clark-Casey (justincc)
f1f390cfdf
Remove now duplicate interregion object check that should have been removed a few commits ago in 43a2da9
2012-07-06 23:22:40 +01:00
Justin Clark-Casey (justincc)
74014a3854
minor: Remove some wrong comments in attachments regression tests
2012-07-06 23:13:00 +01:00
Robert Adams
e4a6611865
Clean up collision reporting code so they are properly passed to
...
the simulator in batches.
More comments.
2012-07-06 15:09:19 -07:00
Justin Clark-Casey (justincc)
056c9a59b2
Add assert to attachment regression tests to check that number of objects in the scene graph
2012-07-06 23:07:50 +01:00
Talun
ae1f2114f5
Mantis 6077 trim NPC chat on channel zero.
...
This patch trims leading and trailing spaces from NPC chat and
suppresses the sending of empty chat strings on open chat channel 0.
2012-07-06 22:49:18 +01:00
Talun
1b1f841c6a
Mantis 6063 osNpcTouch.
...
Allow NPCS to touch obects.
2012-07-06 22:37:19 +01:00
Justin Clark-Casey (justincc)
43a2da9edb
Pull prim crossing/teleport checks up into Scene.IncomingCreateObject() from Scene.AddObject()
...
Only IncomingCreateObject() needs these checks. General object adding does not need to perform crossing perm checks
2012-07-06 22:33:16 +01:00
Justin Clark-Casey (justincc)
f6e5791ecd
refactor: extract method UpdateUserInventoryWithAttachment() from AttachObject() for better code comprehension
2012-07-06 22:07:19 +01:00
Justin Clark-Casey (justincc)
843112340e
Log MONO_THREADS_PER_CPU value on simulator startup, or "unset" if it is not set
2012-07-06 00:37:45 +01:00
Justin Clark-Casey (justincc)
7e73f609e5
Log warning if time between invocations of the watchdog thread is twice the timer setting.
...
This is to help detect situations where thread timeout warnings are being generated because of general machine issues rather than deadlock, network or other problems.
2012-07-05 23:15:59 +01:00
Justin Clark-Casey (justincc)
db9616f7ba
minor: add client name to various login service log messages to disambiguate messages from concurrent logins. Also adds destination resolution debug log message showing region endpoint.
...
Adding endpoint to the log helps to find issues where the region external host information has been wrongly configured
2012-07-05 21:30:20 +01:00
Justin Clark-Casey (justincc)
8674604ff5
regrade osFormatString, osMatchString and osReplaceString to VeryLow.
...
I can't see that these present any real hazard to sim functioning.
2012-07-05 21:10:59 +01:00
SignpostMarv
510e809aba
porting console commands from raw2sculpt 3.2
2012-07-05 00:16:31 +01:00
Justin Clark-Casey (justincc)
951b45b80f
Add OSSL function osForceAttachToAvatarFromInventory()
...
This works like osForceAttachToAvatar() but allows an object to be directly specified from the script object's inventory rather than forcing it to be rezzed in the scene first.
Still only attaches objects to the owner of the script.
This allows one to bypass the complicated co-ordination of first rezzing objects in the scene before attaching them.
Threat level high.
2012-07-05 00:05:06 +01:00
Justin Clark-Casey (justincc)
7b327848d0
Use GetInventoryItem() in llRezAtRoot rather than iterating through a cloned dictionary
2012-07-04 22:21:47 +01:00
Justin Clark-Casey (justincc)
2f998fce1f
refactor: In llGetNotecardLine() use existing GetInventoryItem() rather than inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
2012-07-04 22:00:39 +01:00
Justin Clark-Casey (justincc)
1816ecb747
refactor: In llGetNumberOfNotecardLines() use existing GetInventoryItem() rather than inspecting a clone of the TaskInventory dictionary that was not cloned thread-safe
2012-07-04 21:57:57 +01:00
Justin Clark-Casey (justincc)
eacba4fc0b
refactor: use existing GetInventoryItem() in GetScriptByName(), itself renamed from ScriptByName()
2012-07-04 21:54:30 +01:00
Justin Clark-Casey (justincc)
9fac7fd932
refactor: In llGetInventoryType() use existing GetInventoryItem()
2012-07-04 21:50:52 +01:00
Justin Clark-Casey (justincc)
f2b0377c28
refactor: In llGetInventoryCreator() use existing GetInventoryItem()
2012-07-04 21:49:21 +01:00
Justin Clark-Casey (justincc)
d933bdbd59
refactor: In llGetInventoryPermMask() use existing GetInventoryItem()
2012-07-04 21:47:20 +01:00
Justin Clark-Casey (justincc)
f9fa34408d
refactor: in llGetInventoryPermMask use existing GetInventoryItem()
2012-07-04 21:42:04 +01:00
Justin Clark-Casey (justincc)
857494f6bd
refactor: In llRemoteLoadScriptPin() use existing GetInventoryItem()
2012-07-04 21:36:44 +01:00
Justin Clark-Casey (justincc)
dff7cae2ee
refactor: replace use of LSL_Api.GetTaskInventoryItem() with existing GetInventoryItem()
2012-07-04 21:33:35 +01:00
Justin Clark-Casey (justincc)
0e3fce9b5c
refactor: In llGetInventoryKey() use existing GetInventoryItem()
2012-07-04 21:25:58 +01:00
Justin Clark-Casey (justincc)
4b2b14dad1
In llMessageLinked() use GetInventoryItems() rather than cloning TaskInventory directory
...
GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe
2012-07-04 21:22:43 +01:00
Justin Clark-Casey (justincc)
3769739ca7
In llRequestInventoryData() use GetInventoryItems() rather than cloning TaskInventory directory
...
GetInventoryItems() returns a new list and so is equivalent, and creates this list under lock whereas Clone() is not thread-safe
2012-07-04 21:19:16 +01:00
Justin Clark-Casey (justincc)
3717812ce0
refactor: In llCollisionSound() use existing GetInventoryItem() method rather than have it iterate through TaskInventory itself.
2012-07-04 21:15:00 +01:00
Justin Clark-Casey (justincc)
ae64d089c6
refactor: In llRemoveInventory() use existing GetInventoryItem() method rather than have it iterate through TaskInventory itself.
2012-07-04 21:05:51 +01:00
Justin Clark-Casey (justincc)
58b13d51a7
refactor: make llGiveInventory() use existing GetInventoryItem() method rather than iterate through TaskInventory itself.
2012-07-04 20:57:48 +01:00
Justin Clark-Casey (justincc)
5691a8b860
refactor: rename Watchdog.WATCHDOG_TIMEOUT_MS to DEFAULT_WATCHDOG_TIMEOUT_MS to reflect what it actually is
2012-07-04 00:15:03 +01:00
Justin Clark-Casey (justincc)
f7b4802577
Correct spelling mistake m_BanedViewers to m_BannedViewers
2012-07-03 23:26:02 +01:00
Justin Clark-Casey (justincc)
8183c2926d
minor: Add some method doc to HasGroupChanged and Schedule GroupForFull/PartUpdate() to indicate when region modules need to invoke them
2012-07-03 23:19:11 +01:00
Justin Clark-Casey (justincc)
3c9b9a848f
Fix issue in database tests where sogs being stored are not in a scene.
...
This puts an extra m_part.ParentGroup.Scene == null check at the top of SceneObjectPartInventory.QueryScriptStates()
2012-07-03 22:58:58 +01:00
Michelle Argus
3399596e0e
Adds a list of viewers that are allowed or banned from the region.
...
Signed-off-by: Melanie <melanie@t-data.com>
2012-07-02 18:45:11 +01:00
Melanie
d32cf21576
Add preservation of running state of scripts when drag-copying.
2012-07-01 18:30:59 +01:00
Justin Clark-Casey (justincc)
1926de5a05
Remove some mono compiler warnings
2012-06-30 01:25:39 +01:00
Justin Clark-Casey (justincc)
a4551b027b
Removing unused handling of incoming create object by userID and itemID only.
...
It appears this was never actually used since attachments were rezzed in other code.
This was never available on remote simulator comms, only local.
2012-06-30 01:14:49 +01:00
Justin Clark-Casey (justincc)
56c776066c
Remove code listed for removal in 0.7.3 that handled script restart for incoming attachments from pre-fatpack regions (versions of OpenSimulator more than a year old)
2012-06-30 01:06:37 +01:00
Justin Clark-Casey (justincc)
0229e90dcc
Move update of the final optional ODE total frame stat inside the OdeLock rather than outside to avoid a very occasional race condition with the stat collection thread
2012-06-29 01:02:35 +01:00
Justin Clark-Casey (justincc)
e420f815dc
refactor: rename _collisionEventPrim to m_collisionEventActors and _collisionEventPrimChanges to m_collisionEventActorsChanges to reflect their actual contents.
...
These dictionaries handle all actor types, not just physical prims.
2012-06-29 00:54:40 +01:00
Justin Clark-Casey (justincc)
1a7be7b00e
Fix a regression where we stopped removing avatars from collision event reporting on logout, rather than stopping clearing their collision events.
...
This occurred in b18c8c8
(Thu May 17 2012).
This was a cause of very occasional race conditions and likely memory leakage as clients came and went from the region.
2012-06-29 00:36:50 +01:00
Justin Clark-Casey (justincc)
0f6b7b6a41
If a link points to a non-existing item in FetchInventory caps, then don't try to add it to the return data rather than suffering an exception later on
2012-06-29 00:11:44 +01:00
Justin Clark-Casey (justincc)
f202c36106
Add IScene.Name for code clarity to replace the RegionInfo.RegionName used in many, many log messages.
2012-06-29 00:03:22 +01:00
Justin Clark-Casey (justincc)
bfa6896678
Change AttachmentsModule.DetachSingleAttachmentToInv() to accept a SOG directly instead of an item ID to then shuffle through attachments, saving CPU busywork.
...
Almost all callers already had the sog to hand.
Still checking that it's really an attachment, but now by inspecting SOG.AttachedAvatar
2012-06-28 23:31:23 +01:00
Justin Clark-Casey (justincc)
571fd966cb
Rather than iterating through all SOGs in the scene looking for the one that matches out fromItemID on detach, go through the agent's attachment sog list instead.
2012-06-28 23:01:12 +01:00
Justin Clark-Casey (justincc)
f263d6a910
Remove code that tried to delete an attachment back to inventory if RezSingleAttachmentFromInventoryInternal() returned null.
...
null would only ever be returned if the item couldn't be located within inventory and this would happen immediately.
In this case, derezzing wouldn't work anyway since there is no item to derez.
2012-06-28 22:48:49 +01:00
Justin Clark-Casey (justincc)
972b0b52f9
If rest of first line after colon is blank then still warn about running in XEngine if engine specified does not exist.
...
This is to take account of situations where the user was intending to specify a script engine using colon using its default language.
This probably generates few false positive as scripts are less likely to end a first line colon with a comment for other purposes.
2012-06-28 21:30:36 +01:00
Justin Clark-Casey (justincc)
25baa2d894
Avoid reporting false positives when a colon is in a comment in the first line of a script where the user was not trying to select a different script engine.
...
This works by only posting the "Selected engine unavailable" message if we're falling back on XEngine and the language is one handled by XEngine.
In cases where the language is not handled or not allowed, the user will still be notified by the later compiler error.
This avoids the overwhelming majority of false positives where the first line contains a : for other reasons (e.g. source control systems, vim settings, etc.)
Ultimately, I think it would be better to detect script language/engine with a mechanism that didn't just rely on : detection (e.g like #! in unix scripts).
2012-06-28 01:01:18 +01:00
Justin Clark-Casey (justincc)
f9769a9fcb
minor: reuse colon index calculation in XEngine.OnRezScript. The index if a colon is found on the first line will always be the same as for the whole script.
2012-06-28 00:37:23 +01:00
Justin Clark-Casey (justincc)
bb48060b44
Fix issue in InventoryArchiveTestCase where it didn't call down to OpenSimTestCase.SetUp()
2012-06-27 00:50:36 +01:00
Justin Clark-Casey (justincc)
d043213317
refactor: Move ScenePresence <-> AgentData attachments copying code into AttachmentsModule.
2012-06-27 00:41:46 +01:00
Justin Clark-Casey (justincc)
5bec5bcf71
Automatically disable log4net before each regression test so that logging is confined to a single test if it's turned on.
...
This involves making test classes inherit from a common OpenSimTestCase.
This will be applied to more classes as required.
2012-06-27 00:01:51 +01:00
Justin Clark-Casey (justincc)
87ca820f9b
Replace "kill uuid" console command with the more consistent "delete object uuid", which was present in the last opensim release.
2012-06-26 23:28:48 +01:00
Justin Clark-Casey (justincc)
0b29877790
Fix output for help on some object region console commands
2012-06-26 23:15:15 +01:00
Justin Clark-Casey (justincc)
97437feb06
Show region positions in "show regions" robust console command
2012-06-26 23:05:10 +01:00
Justin Clark-Casey (justincc)
2524517986
minor: correct GridService "show regions" cibsike cinnabd usage statement
2012-06-26 22:54:41 +01:00
Justin Clark-Casey (justincc)
99954c1498
refactor: Remove unnecessary AttachmentModuleTests.m_userId in favour of local variables
2012-06-26 22:53:08 +01:00
Justin Clark-Casey (justincc)
2b82c421ad
refactor: Use local attachment module variables instead of global m_attMod.
...
This also avoids confusion between tests where one sets up m_attMod and another accidentally uses it after failing to set one up itself.
2012-06-26 22:31:25 +01:00
Justin Clark-Casey (justincc)
4329cc7b8a
refactor: make m_presence a local variable in all AttachmentsModuleTests since it doesn't need to be global and some tests set up more than one sp
2012-06-26 22:21:54 +01:00
Justin Clark-Casey (justincc)
32a4ce94f0
Add regression test to check that attachments in source region are deleting when an agent teleports to a neighbouring region
2012-06-26 22:16:44 +01:00
Justin Clark-Casey (justincc)
340005c5bf
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-06-26 22:12:39 +01:00
Justin Clark-Casey (justincc)
4b6c3fd4bb
If crossing attachments into another region pre-fatpack, clone objects before changing properties to avoid hud display race condition with update threads.
...
This matches behaviour in fatpack crossing, where attachments are cloned before their properties are changed.
This only applies to crossings to simulators running code released before April 2011.
2012-06-26 21:06:47 +01:00
BlueWall
988112d446
Add stub for llCastRay
2012-06-26 15:15:25 -04:00
Justin Clark-Casey (justincc)
1f22b29ca3
Add much easier ConsoleDisplayTable AddColumn() and AddRow() methods.
...
Use these for new "show regions" command rather than old cumbersome stuff.
2012-06-26 00:40:46 +01:00
Justin Clark-Casey (justincc)
5292b8b8be
Add "show regions" console command to ROBUST to show all regions currently registered.
...
Command is not added in standalone, which has its own version of "show regions" that can also show estate name
2012-06-26 00:34:37 +01:00
Justin Clark-Casey (justincc)
854f2a913c
Add "show region at" command to grid service to get the details of a region at a specific location. "show region" command becomes "show region name" to disambiguate
...
This is the same format as used by "show object name", etc.
"deregister region" also becomes "deregister region id"
2012-06-25 23:55:14 +01:00
Justin Clark-Casey (justincc)
f5316984ab
minor: update currently commented out log message at top of AvatarFactoryModule.SetAppearance() for future use
2012-06-25 23:31:22 +01:00
Justin Clark-Casey (justincc)
e5b739aaeb
When attachments are being saved and deleted for a closing root agent, delete first to avoid a hud race condition with update threads.
...
If delete doesn't occur first then the update thread can outrace the IsAttachment = false necessary to save attachments and send hud artifacts to other viewers.
2012-06-25 22:48:13 +01:00
Justin Clark-Casey (justincc)
5301648cff
In AttachmentsModule.DetachSingleAttachmentToInvInternal(), remove attachment before changing properties for correct inventory serialization.
...
Serialization of attachments requires IsAttachment = false so that correct positions are serialized instead of avatar position.
However, doing this when a hud is still attached allows race conditions with update threads, resulting in hud artifacts on other viewers.
This change sets SOG.IsDeleted before serialization changes take place (IsDeleted itself is not a serialized property).
LLClientView then screens out any deleted SOGs before sending updates to viewers.
2012-06-25 21:08:19 +01:00
BlueWall
6d3ee8bb39
Fix script "Running" behavior
...
Unchecking "Running" box in script editor now persists. This fixes http://opensimulator.org/mantis/view.php?id=6057
2012-06-23 04:15:14 -04:00
Justin Clark-Casey (justincc)
78143769bf
Resolve various race conditions between accessing and removing external script URLs by more consistently locking on m_UrlMap
2012-06-22 23:49:52 +01:00
Justin Clark-Casey (justincc)
dca04c7b61
Avoid a race condition where an incoming request to a script external URL can trigger an exception is the URL was being removed at the same time.
...
This involves three steps
1) Return gracefully in UrlModule.HttpRequestHandler() instead of throwing an exception when the url cannot be found in its index
2) Return true instead of false in HasEvents() if no matching request is found in the map. This call will only happen in the first place for raced requests.
3) Return a 404 in GetEvents() if the request is not in the index, rather than a blank 200 OK.
Many thanks to Tom Haines in http://opensimulator.org/mantis/view.php?id=6051 for doing some of the work on this.
2012-06-22 23:16:18 +01:00
Justin Clark-Casey (justincc)
80a41e670d
Avoid race condition between m_PrimObjects iteration in XEngine.PostObjectEvent and places where the list is modified by extending the m_PrimObjects lock.
2012-06-22 02:23:25 +01:00
Justin Clark-Casey (justincc)
9f3feeff8d
If starting scripts on initial sim start, provide INFO level log feedback each time 50 scripts have been started.
...
This is to provide an indication of what's happening now that the default isn't to report every single script start.
Changes XEngine logging level in OpenSim.exe.config from WARN to INFO.
2012-06-22 02:10:27 +01:00
Justin Clark-Casey (justincc)
f907182ab2
Eliminate unnecessary extra call to TriggerEmptyScriptCompileQueue in XEngine.DoOnRezScriptQueue()
...
The later invocation of this function will happen on an empty compile queue.
2012-06-22 01:57:14 +01:00
Justin Clark-Casey (justincc)
4cf49369b5
Stop flicking IsAttachment false and then true in AttachmentsModule.UpdateAttachmentPosition() in order to avoid a hud update race condition.
...
Previously, setting IsAttachment to false then true was necessary to serialize the updated attachment object information.
However, UpdateAttachmentPosition no longer does this update.
Whilst IsAttachment is set to false there is a race condition where the update thread can wrongly send hud object updates to clients that do not own the hud, resulting in screen artifacts.
2012-06-22 01:43:26 +01:00
Justin Clark-Casey (justincc)
fda39c11bf
Fix bug where attachments would not retain position if just rotated and not moved.
...
This was because we were not setting AttachedPos in SOG.UpdateGroupPositionPR, unlike UpdateGroupPosition
2012-06-22 01:33:27 +01:00
Justin Clark-Casey (justincc)
798846c5b6
refactor AttachmentsModule tests to use a common method for standard attachment item setup
2012-06-22 00:40:04 +01:00
Justin Clark-Casey (justincc)
06617ffd06
Add regression test for updating attachment position
2012-06-22 00:18:30 +01:00
Justin Clark-Casey (justincc)
d24122b706
Add item id, name, prim name and id to log message when state exists but loading fails.
...
Drop logging about memory limit exceeded to warn from error
2012-06-21 02:24:44 +01:00
Justin Clark-Casey (justincc)
afcabf5244
Retrigger build - last jenkins run was glitched
2012-06-21 02:13:03 +01:00
Justin Clark-Casey (justincc)
5709bed548
Add state file location to errors logged when there's some issue with retrieving state (e.g. exceeds memory limit)
2012-06-21 02:09:14 +01:00
Justin Clark-Casey (justincc)
68ea096f1b
Use HasPrivateAttachmentPoint properties in SOG.DeleteGroupFromScene() instead of magic numbers
2012-06-20 23:25:07 +01:00
Justin Clark-Casey (justincc)
714db90832
refactor: use SOG.HasPrivateAttachmentPoint in SOP.SendTerseUpdateToClient() instead of attachmentpoint magic numbers.
2012-06-20 22:46:01 +01:00
Justin Clark-Casey (justincc)
b23425c7c4
As with LLSDInventoryItem from commit 01a2b0b
, send type values in LLSDInventoryFolder for inventory CAPs as integers rather than strings.
...
Should also resolve some issues with exceptions being thrown in some inventory fetches.
2012-06-20 02:28:00 +01:00
Justin Clark-Casey (justincc)
9ec9dafae6
Lower warn logging on not having friends/group module on permissions to debug.
...
It's a valid configuration not to have these modules, but I think it's still worth logging the fact that certain permissions won't work (always return true)
2012-06-20 01:33:25 +01:00
Justin Clark-Casey (justincc)
6c312bce7f
minor: Lower flotsam asset cache warning about not having a FlotsamCache.ini to debug
...
It's perfectly okay not to have this section.
2012-06-20 01:30:20 +01:00
Justin Clark-Casey (justincc)
4cfaa01c0a
Remove STARTUP COMPLETE message from the startuplogo.txt file and into main logging
2012-06-20 01:06:55 +01:00
Justin Clark-Casey (justincc)
6b3f9fcde0
Comment out the neighbour and land in connectors from info logging that they are starting up
2012-06-20 00:42:54 +01:00
Justin Clark-Casey (justincc)
625e5e913a
Comment out recently added log message detailing number of scripts started when compile queue empties for now
2012-06-20 00:25:18 +01:00
Justin Clark-Casey (justincc)
881e92a726
Raise some IO associated Exception logging in XEngine to error level, in line with other similar cases.
...
Remove more unnecessary Close() calls - these are being triggered by the Dispose() called when exiting the using statement for these sdk io objects.
2012-06-20 00:19:50 +01:00
Justin Clark-Casey (justincc)
0fa303b1cf
Log how many scripts are candidates for starting and how many are actually started.
...
Adds DebugLevel infrastructure to XEngine though currently commented out and unused.
2012-06-20 00:10:19 +01:00
Justin Clark-Casey (justincc)
9737e6d52e
If RegionReady is active, don't falsely say that logins are enabled in the main scene loop before RegionReady is signalled when initial script compilation finishes.
...
Also raises this logging level to Info from Debug since this information is of high importance. This matches the behaviour of the RegionReady module
2012-06-20 00:07:03 +01:00
Justin Clark-Casey (justincc)
e23d7ff9c0
minor: If logging because mesh/sculpt data isn't present for an object, log object UUID rather than local id, since UUID doesn't potentially vary between simulator starts.
2012-06-20 00:05:48 +01:00
Justin Clark-Casey (justincc)
ef686ead37
Like the assembly and text files, only write the c#-lsl linemap in XEngine.SetXMLState() if the trust binaries flag is set.
...
This doesn't affect other locations where the map is written, such as on script compilation.
2012-06-19 02:11:46 +01:00
Justin Clark-Casey (justincc)
8e7032ece8
minor: Add a little more detail to IOException logging in XEngine.SetXMLState()
...
Also removes superflous Close() commands for statements taking place within using() constructs
Also adds some comment out debug log messages for future use.
2012-06-19 01:53:50 +01:00
Justin Clark-Casey (justincc)
7119de56ff
Change read config paramter from max_urls_per_simulator to max_external_urls_per_simulator, which is what it was meant to be
2012-06-16 04:12:53 +01:00
Justin Clark-Casey (justincc)
ed513fc7be
Fix bug introduced in commit c6e3752
(13 Jun 2012) where poll responses would always return OK even if some other status code had been set
2012-06-16 03:43:45 +01:00
Justin Clark-Casey (justincc)
22f25dfcab
Implement max_external_urls_per_simulator setting in [LL-Functions] to allow configuration of how many urls can be set up by llRequestURL()
...
Defaults remains as 100.
This setting is per simulator instead of per region due to how the url script module is structured.
2012-06-16 03:32:47 +01:00
Justin Clark-Casey (justincc)
aaa30dcebc
Add region name to UseCircuitCode log messages
2012-06-15 05:01:36 +01:00
Justin Clark-Casey (justincc)
c935f03467
Put all debug console commands into a single Debug section rather than scattering them over other categories
2012-06-15 03:32:43 +01:00
Justin Clark-Casey (justincc)
94517c8d5c
Make the "debug http" command available for robust as well as the simulator. This allows one to see incoming requests as they happen.
...
This required making everything use the common MainServer class for registering and retrieving http servers, rather than duplicate structures.
2012-06-15 02:51:52 +01:00
Justin Clark-Casey (justincc)
257b1b517d
Add main instance to internal MainServer.m_Servers list to simplify internal logic.
...
This does require the server to be added before it is set as the main Instance
2012-06-15 02:03:50 +01:00
Justin Clark-Casey (justincc)
aeed4d3041
minor: Tell user the current debug http level if "debug http" console command is executed without a level parameter
2012-06-15 01:27:29 +01:00
Justin Clark-Casey (justincc)
478acfff34
When setting debug http level, do this for all known http servers, not just the main instance.
2012-06-15 01:24:36 +01:00
Justin Clark-Casey (justincc)
10e87f9cdc
Make XMLRPCModule use an existing HTTP server if one already exists on the desired port.
2012-06-15 00:59:53 +01:00
Justin Clark-Casey (justincc)
6993a26ba5
Get rid of some unnecessary null checks in RegionApplicationBase.StartupSpecific() - a constructor can never return null.
...
Also adds some method doc to MainServer
2012-06-15 00:40:12 +01:00
Justin Clark-Casey (justincc)
93ba0332c4
minor: Extend 'debug http' usage statement to 0..3 from 0..2
2012-06-14 23:54:12 +01:00
Justin Clark-Casey (justincc)
9825861f4a
Shuffle "debug http" levels so that 1 and 2 now cause different levels of warn to be logged if we receive invalid xml for xmlrpc.
2012-06-14 23:46:09 +01:00
Justin Clark-Casey (justincc)
f4b02f8e39
Fix a regression in BaseHttpServer.HandleXmlRpcRequests() from recent c6e3752
...
Accidentally make responseString null by default instead of String.Empty.
It needs to be something in case the XmlRpcRequest deserialize throws an exception due to bad xml (a failure which we silently swallow!)
2012-06-14 04:29:15 +01:00
Justin Clark-Casey (justincc)
2c6555021f
Fix very recent regression in 917d753
where I put the ++updatesThisCall outside the batching part of ProcessEntityUpdates()
...
This stopped any batching happening and since this method is called periodically updates were sent very slowly
2012-06-14 03:49:54 +01:00
Justin Clark-Casey (justincc)
3888b9a670
If we're going to discard a terse update block because it's now someone else's hud, then don't still add it to the list of blocks for the update message.
2012-06-14 03:32:44 +01:00
Justin Clark-Casey (justincc)
1aa7469253
correct wrong incomplete comment from previous commit 3c3ea19
in AttachmentsModule
2012-06-14 02:30:40 +01:00
Justin Clark-Casey (justincc)
3c3ea19620
Fix a bug where scene objects attached as HUDs through scripts would not disappear for other avatars.
...
We do this by sending a kill message for that object to all other avatars apart from the one that has the hud.
2012-06-14 02:26:38 +01:00
Justin Clark-Casey (justincc)
0d2243a393
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-06-14 01:38:41 +01:00
Justin Clark-Casey (justincc)
917d753f1c
Fix a race condition where an object update for a hud could be sent to non-owner avatars if the hud was attached directly from within the region.
...
If this happens, then the non-owners would see unremovable huds that they did not own until relog, and sometimes even beyond that.
This was due to a race between the entity update and the attachment code when moving an object from within scene to a hud.
2012-06-14 01:36:37 +01:00
Justin Clark-Casey (justincc)
a4290048e5
Add SOG.HasPrivateAttachmentPoint to tell if a SOG has a private attachment point. HUDs attachment points are private.
...
Change SOP.SendFullUpdateToClient() and SoundModule.PlayAttachedSound() to use this rather than different magic number formulations.
This also corrects a bug in PlayAttachedSound() where the code assumed that all attachment points over 30 were HUDs.
It appears this is no longer true with Neck and Root (Avatar Center)
2012-06-14 01:20:55 +01:00
Melanie
cba8b4f8b8
Fix not sending TransferInfo when an asset is not found. This clogs
...
up the sound pipeline in the viewer.
2012-06-14 00:58:17 +01:00
Justin Clark-Casey (justincc)
6a77a65675
minor: remove unnecessary IsAttachment = false setting for new object in UploadObjectAssetModule, property always starts as false
2012-06-14 00:35:26 +01:00
Justin Clark-Casey (justincc)
16ffc764bf
minor: refactor part of LLClientView.ProcessEntityUpdates() to remove duplicate code
2012-06-13 23:54:32 +01:00
Justin Clark-Casey (justincc)
cf080a68d6
Remove long obsolete and unused IClientAPI.KillEndDone()
2012-06-13 23:42:22 +01:00
Justin Clark-Casey (justincc)
f726150afd
Add ObjectUpdate as one of the packets that can be screened out when setting debug packet level
2012-06-13 23:39:23 +01:00
Justin Clark-Casey (justincc)
1f34c8277d
In the osGetGrid functions, if the [GridInfo] section does not exist then return "Configuration Error", as already happens if there is no GridInfoURI
2012-06-13 04:05:02 +01:00
Justin Clark-Casey (justincc)
66cb533f26
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-06-13 03:51:13 +01:00
Justin Clark-Casey (justincc)
5145356467
Add "deregister region" by uuid command to grid service to allow manual deregistration of simulators.
...
Useful if a simulator has crashed without removing its regions and those regions have been reconfigured differently
2012-06-13 03:49:22 +01:00
Melanie
4e18e71089
Committing the Avination implementation of llCastRay. This is a complete rewrite
...
wich does it's thing independently of physics. Enjoy!
2012-06-13 02:32:25 +01:00
Justin Clark-Casey (justincc)
94bbbf96c7
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-06-13 02:25:42 +01:00
Justin Clark-Casey (justincc)
c6e375291a
Don't include time to transmit response back to requester when assessing slow handling of requests.
...
This is to avoid logging a 'slow' request when the source of delay is the viewer in processing a response.
This is not something we can do much about on the server end - it's server-side delay that we're interested in.
To ensure consistency, this commit also had to refactor and simplify inbound non-poll network request handling, though there should be no functional change.
IOSHttpResponse no longer exposes the Send() method, only classes in OpenSim.Framework.Servers.HttpServer should be doing this.
Only the GetTextureHandler was sending its own response. Now it leaves this to BaseHttpServer, like all other core handlers.
2012-06-13 00:03:44 +01:00
BlueWall
c53c55fed0
Add variable timer configureation for the timer_Script
...
Added "timer_Interval" to the OpenSimDefaults.ini, leaving the default value set to 1200, as the previous default setting. The value represents seconds. To change the default, copy the entry to OpenSim.ini and multiply the number of minutes for the interval by 60.
2012-06-12 17:15:56 -04:00
Justin Clark-Casey (justincc)
2ca31a9841
Remove accidental timeout left in during earlier debugging. Has been in since two commits ago ( b099f26
)
2012-06-12 02:46:14 +01:00
Justin Clark-Casey (justincc)
1b1f0a2d77
OnConnectionClosed listeners, retrieve data from IClientAPI.SceneAgent rather than scanning all scene for the presence with the right id
...
Stop checking IsLoggingOut on these listeners, if called with a root agent then we always want to perform these actions.
This covers cases where the client is closed due to manual kick, simulator shutdown, etc.
2012-06-12 02:43:33 +01:00
Justin Clark-Casey (justincc)
b099f26376
Set IClientAPI.IsActive = false early on client removal due to ack timeout rather than using IsLoggingOut flag.
...
IsActive is more appropriate since unack timeout is not due to voluntary logout.
This is in line with operations such as manual kick that do not set the IsLoggingOut flag.
It's also slightly better race-wise since it reduces the chance of this operation clashing with another reason for client deactivation (e.g. manual kick).
2012-06-12 02:16:36 +01:00
Justin Clark-Casey (justincc)
c89db34fc4
If the simulator closes a root agent due to ack timeout, then send the client a kick message with that reason, in case it is somehow still listening.
2012-06-12 02:03:31 +01:00
Justin Clark-Casey (justincc)
8c7149063b
In PresenceDetector.OnConnectionClose(), use the IsChildAgent check already available on IClientAPI.SceneAgent rather than retrieving it again by scanning all scenes.
2012-06-12 01:25:09 +01:00
Justin Clark-Casey (justincc)
bab7dab4c5
Comment out the scene presence sitting debug log messages for now
2012-06-11 23:37:16 +01:00
Justin Clark-Casey (justincc)
daad0a3e11
Revert "Bind ~ and ! operators in LSL tighter in order to resolve issues in LSL where these aren't evaluated propertly."
...
This reverts commit a8a9d13dc0
.
Accidentally committed, this patch might not be the correct approach.
2012-06-11 23:30:58 +01:00
Justin Clark-Casey (justincc)
a927787434
Add last frame time monitor to MonitorModule now that this value is useful
2012-06-11 23:30:11 +01:00
Justin Clark-Casey (justincc)
cbb5ddd944
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-06-11 23:27:48 +01:00
Melanie
71ba85137f
Commitig the Avination implementation of llTeleportAgent and
...
llTeleportAgentGlobalCoords. These do NOT use PERMISSION_TELEPORT like
their SL counterparts because that permission is not yet understood by TPVs
based on v1.x.
2012-06-11 16:45:52 +01:00
Justin Clark-Casey (justincc)
a8a9d13dc0
Bind ~ and ! operators in LSL tighter in order to resolve issues in LSL where these aren't evaluated propertly.
...
Addresses http://opensimulator.org/mantis/view.php?id=3268
2012-06-09 05:11:08 +01:00
Justin Clark-Casey (justincc)
817f2d341d
Fix regression in 5f4f9f0
(Fri Jun 8 2012) which stopped "show stats" and json stats from working
2012-06-08 23:36:53 +01:00
Justin Clark-Casey (justincc)
794d184c25
Stop sending a DisableSimulator packet in LLClientView.Close(), which is a duplicate for child agents and unnecessary for root agents.
...
Close() already calls Scene.RemoveClient() which sends the right eq or udp DisableSimulator message to child agents.
2012-06-08 04:32:51 +01:00
Justin Clark-Casey (justincc)
f94b92df46
Instead of retrieving the known client again in LLUDPServer.RemoveClient(), check the IsLoggingOut flag instead.
...
This is slightly better thread-race wise
2012-06-08 04:12:22 +01:00
Justin Clark-Casey (justincc)
c215b1ad16
If logging a client out due to ack timeout, do this asynchronously rather than synchronously on the outgoing packet loop.
...
This is the same async behaviour as normal logouts.
This is necessary because the event queue will sleep the thread for 5 seconds on an ack timeout logout as the client isn't around to pick up the final event queue messages.
2012-06-08 03:53:03 +01:00
Justin Clark-Casey (justincc)
5f4f9f0230
Add regression test for client logout due to ack timeout.
2012-06-08 03:12:23 +01:00
Justin Clark-Casey (justincc)
d73805d7f4
Remove null checks at top of LLUDPServer.ProcessInPacket(). Neither packet nor client are ever null.
2012-06-08 01:51:28 +01:00
Justin Clark-Casey (justincc)
d71c6dea7e
Store already retrieve IClientAPI in IncomingPacket structure for later use rather than doing another retrieve on dequeue.
...
Instead of checking whether the client still exists by trying to retrieve again from the client manager, this patch gets it back from IncomingPacket and checks the IClientAPI.IsActive state.
2012-06-08 01:43:58 +01:00
Justin Clark-Casey (justincc)
30f4a33f01
Don't make duplicate call to ScenePresence.Close() separately in ETM.DoTeleport() if an agent needs closing.
...
This is always done as part of Scene.RemoveClient()
Also refactors try/catching in Scene.RemoveClient() to log NREs instead of silently discarding, since these are useful symptoms of problems.
2012-06-08 01:26:43 +01:00
Justin Clark-Casey (justincc)
5c162ccd57
Go back to calling IncomingCloseAgent() in the "kick user" command for consistency instead of IClientAPI.Close() directly.
...
This no longer double counts child agent removals
2012-06-08 00:59:39 +01:00
Justin Clark-Casey (justincc)
d547bcf8d1
Remove duplicate update of user count in Scene.IncomingCloseAgent()
...
This is already done in Scene.RemoveClient() which IncomingCloseAgent() always ends up calling.
2012-06-08 00:40:38 +01:00
Justin Clark-Casey (justincc)
b56673c920
Fix bug with "kick user" reducing agent counts by 2 instead of 1.
...
This is done by making the kick user command call IClientAPI.Close() rather than routing through Scene.IncomingCloseAgent(), which also called IClientAPI.Close()
DisableSimulator for child agents is moved from IncomingCloseAgent() to RemoveClient(), this is not a functional change since IncomingCloseAgent() always ends up calling RemoveClient()
2012-06-08 00:18:25 +01:00
Justin Clark-Casey (justincc)
0c5fefacb4
Record the fact that child agents can have asset transactions.
...
Also change code to grab the agent asset transaction module once.
2012-06-07 23:51:04 +01:00
Justin Clark-Casey (justincc)
de87e4871b
Don't send kill object messages to clients when a child agent is closed.
2012-06-07 23:35:21 +01:00
BlueWall
a1e857932a
Make change to fix Windows builds
2012-06-07 10:17:37 -04:00
Justin Clark-Casey (justincc)
7550b97e65
Log warning if we try to remove a UDP client that has already been removed.
2012-06-07 04:00:29 +01:00
Justin Clark-Casey (justincc)
98b46d48fe
Allow the thread watchdog to accept an alarm method that is invoked if the timeout is breached.
...
This alarm can then invoke this to log extra information.
This is used in LLUDPServer to show which client was being processed when incoming and outgoing udp watchdog alarms are triggered.
2012-06-07 02:44:13 +01:00
Justin Clark-Casey (justincc)
514dd85199
minor: Change log messages on Warp3DImageModule to show they are from this module
2012-06-06 04:18:38 +01:00
Justin Clark-Casey (justincc)
53c25a4778
Rename MapImageModule for Warp3D to Warp3DImageModule to match its class name and make it easier to distinguish between map image modules.
2012-06-06 04:15:00 +01:00
Justin Clark-Casey (justincc)
2b0de66216
Actively dispose of Bitmaps in Warp3D image module and world map module once we've finished with them.
...
This might help with memory leakage issues though I suspect it won't.
2012-06-06 04:11:16 +01:00
SignpostMarv
3b25021180
enabling all corners of a sim to be set in one call
2012-06-06 02:47:47 +01:00
Justin Clark-Casey (justincc)
abf94627f6
Ensure closure of bitmap and memory stream with using() statements in WorldViewModule.
...
If this has any effect then it will only be to the map images returned via requests to the /worldview simulator HTTP path (not enabled by default)
2012-06-06 02:45:36 +01:00
Justin Clark-Casey (justincc)
6adc810eaa
Stop accidentally reading 4 Int16s instead of 2 in SIZE section of Terragen file when loaded from a stream.
...
Fixes a bug introduced 2 weeks ago in 67ebe80
Thanks to Plugh for pointing this out.
2012-06-05 19:40:16 +01:00
Justin Clark-Casey (justincc)
a5410c2c19
minor: Add user feedback when executing fix-phantoms
2012-06-05 01:37:40 +01:00
Justin Clark-Casey (justincc)
42179578fc
Allow fix-phantoms command to appear even if CombineContiguousRegions = false, since this allows one to go back from a megaregion to normal regions.
...
Adapted from a patch by Garmin Kawaguichi in http://opensimulator.org/mantis/view.php?id=6027
Garmin says that fix-phantoms allows one to reset objects when going back from megaregion to normal regions as well as the othe rway around.
Thanks!
2012-06-05 01:33:58 +01:00
Talun
008c6a4610
Mantis 4597 AgentPaused packet is ignored.
...
The packet was actually being handled but not acted on.
This change extends the default timeout for paused clients to 5 minutes
and makes both the paused and non-paused timeout periods configurable.
2012-06-05 01:22:05 +01:00
Justin Clark-Casey (justincc)
01280e9b94
Remove unused ScenePresence list structure in llGetAgentList()
2012-06-05 00:34:18 +01:00
Justin Clark-Casey (justincc)
96d1ba90d7
Scale down per frame MS stats to match scaled simulator FPS stat.
...
This makes frame time stats properly tally with fps, which saves confusion and makes it easier to interpret numbers.
In some ways this is not so artifical - physics FPS runs at the higher rate.
2012-06-05 00:27:51 +01:00
Justin Clark-Casey (justincc)
655625ab87
Start sending spare frame time MS viewer stat. Make frame time correctly display total frame time, not just non-spare time.
...
This makes it easier to see when components of frame time exceed normal permitted frame time.
Currently reflect scene frame times.
2012-06-05 00:17:55 +01:00
Justin Clark-Casey (justincc)
c3d9acc9a9
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-06-05 00:15:29 +01:00
Justin Clark-Casey (justincc)
a7f4804f53
Properly show per frame millisecond statistics per frame, not as amount of time taken per second.
...
This is to make these statistics actually match their names (and also be more accurate as number of frames can vary under heavy load)
Currently using scene frames (11.23 every second) instead of physics frames (56.18 per second)
2012-06-04 23:07:53 +01:00
BlueWall
3229e32b4e
Add replaceable region modules to the "show modules" command
2012-06-04 17:25:38 -04:00
Melanie
d9d4fb10d9
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2012-06-04 18:22:43 +01:00
Robert Adams
f94ef37b46
Correct the delegate specification in EventManager.TriggerTerrainTainted. Looks like the wrong one was cut and pasted.
2012-06-04 10:26:39 -07:00
Melanie
5c646e2603
Remove the "Profile" config as it's covered by the replaceable interface
2012-06-04 18:22:09 +01:00
Justin Clark-Casey (justincc)
729d90173f
Fix build break whree accidentally did inv.Folders rather than inv.Folders.Count in a minor change.
2012-06-02 05:03:56 +01:00
Justin Clark-Casey (justincc)
2de5479c3f
minor: tidy up some comments
2012-06-02 05:01:56 +01:00
Justin Clark-Casey (justincc)
01a2b0b289
Fix various issues with http inventory
...
1) The return messages were being wrongly populated with the names of asset, inventory and sale types when their corresponding integers should have been used instead.
2) Folders with links were including the linked items in the descendents figure, when only the links should be included.
3) Links and linked items in link folders were not being included in the return data, and not in the correct order.
Now that these issues have been addressed, outfits and attachments appear to work consistently when HTTP inventory is enabled (as is now the default).
2012-06-02 04:57:10 +01:00
Justin Clark-Casey (justincc)
72219eae7d
Instead of updating sim stats root agent, child, objects and scripts accounts every single scene frame, update in the once every 3 seconds SimStatsReporter run
2012-06-01 04:47:11 +01:00
Justin Clark-Casey (justincc)
6375db1533
Add optional total avatars, total prims and active prims stats to ODE plugin.
...
These will act as a sanity check with the main scene stats, to show that physics scene entities are being managed properly.
Total prims will not match scene total prims since physics total does not include phantom prims
2012-06-01 04:23:36 +01:00
Justin Clark-Casey (justincc)
4e06a46dc5
If OdeScene.Near() returns no collision contacts, then exit as early as possible. All subsequent code is only relevant if there are contacts.
2012-06-01 04:07:39 +01:00
Justin Clark-Casey (justincc)
200376b3c4
Add optional stat for the other collision time per frame not spent in ODE native spaces or geom collision code
2012-06-01 03:49:42 +01:00
Justin Clark-Casey (justincc)
d34b84b531
Add avatar forces calculation, prim force and raycasting per frame millisecond optional stats
2012-06-01 03:23:19 +01:00
Justin Clark-Casey (justincc)
9ff8efc720
Collection optional avatar and prim taint frame millisecond times
2012-06-01 03:03:48 +01:00
Justin Clark-Casey (justincc)
d1b5f8d9d7
Remove recent optional native collision frame milliseconds stat
...
Unnecessary since this has now been broken down into space collisions and geom collisions
2012-06-01 02:35:11 +01:00
Justin Clark-Casey (justincc)
31343aa7c3
Add optional stat that records milliseconds spent notifying collision listeners in physics frames
2012-06-01 02:33:44 +01:00
Justin Clark-Casey (justincc)
5f44be99ef
Add avatar and prim update milliseconds per frame optional stats
2012-06-01 02:25:42 +01:00
Justin Clark-Casey (justincc)
5cc9b820e5
Add option native step frame ms stat
2012-06-01 01:58:28 +01:00
Justin Clark-Casey (justincc)
f2c8c7a7b8
Add total ODE frame time optional stat, as a sanity check on the main scene physics stat
2012-06-01 01:37:19 +01:00
Justin Clark-Casey (justincc)
8333b928fa
Break down native ODE collision frame time stat into native space collision and geom collision stats
2012-06-01 01:27:19 +01:00
Justin Clark-Casey (justincc)
c33c8db825
Rename new collision stats to 'contacts' - there are/can be multiple contacts per collision and this is what is actually being measured.
2012-06-01 01:15:27 +01:00
Justin Clark-Casey (justincc)
e1f8d2adb0
Stop adding an unnecessary duplicate _perloopcontact if the avatar is standing on a prim.
...
This has already been added earlier on in the method.
2012-06-01 01:12:30 +01:00
Justin Clark-Casey (justincc)
8301f7b17f
minor: comment out currently unused OdeScene.sCollisionData
2012-06-01 00:57:55 +01:00
Justin Clark-Casey (justincc)
93fa9e8991
Add ODE avatar and prim collision numbers if extra stats collection is enabled.
2012-06-01 00:56:13 +01:00
Justin Clark-Casey (justincc)
878b67b333
Fix OdeScene.GetTopColliders() to return the top 25 colliders rather than the first 25 that had non-zero collision scores.
...
Also zeros collisions scores on all prims after report collection, not just the top 25.
As before, this collision scores are only reset after a report is requested, which may give unrealistic numbers on the first request.
So to see more realistic scores, ignore the first report and then refresh the request after a couple of seconds or so.
2012-06-01 00:26:11 +01:00
Justin Clark-Casey (justincc)
0b02a4d42e
Add an optional mechanism for physics modules to collect and return arbitrary stats.
...
If active, the physics module can return arbitrary stat counters that can be seen via the MonitoringModule
(http://opensimulator.org/wiki/Monitoring_Module )
This is only active in OdeScene if collect_stats = true in [ODEPhysicsSettings].
This patch allows OdeScene to collect elapsed time information for calls to the ODE native collision methods to assess what proportion of time this takes compared to total physics processing.
This data is returned as ODENativeCollisionFrameMS in the monitoring module, updated every 3 seconds.
The performance effect of collecting stats is probably extremely minor, dwarfed by the rest of the physics code.
2012-05-31 01:52:26 +01:00
Justin Clark-Casey (justincc)
bf0b8170f7
Add console command "teleport user" to allow teleport from the region console
...
See "help teleport user" on the console for more details
2012-05-29 23:35:20 +01:00
Melanie
b660c4991b
Fix collision filtering. The filter should be checked on the receiving part!
2012-05-29 18:18:47 +01:00
Justin Clark-Casey (justincc)
79f3ce2e9f
refactor: factor out entity transfer state machine into a separate class to make code more analyzable
2012-05-28 23:06:00 +01:00
Justin Clark-Casey (justincc)
8f87f55d05
If handling the failure of teleport, move agent state to CleaningUp when we start the handling.
...
Also fixes the log warning from ResetInTransit() if the state is cleared direct from Transferring or ReceiveAtDestination, as pointed out in mantis 5426
2012-05-28 22:16:06 +01:00
Justin Clark-Casey (justincc)
7fd38788b4
minor: code formatting from 0b72f773
2012-05-26 02:14:32 +01:00
Talun
0b72f773c7
Mantis 6025 llRequestPermissions auto grant for NPCs.
...
If the script requesting permissions is owned by either the NPC or
the NPCs owner (if the NPC is created as owned) then grant any
permissions automatically.
2012-05-26 02:09:22 +01:00
Justin Clark-Casey (justincc)
43a6f28620
If restating a region, clean up the physics scene after the main scene has been closed not before.
...
If this is done before then on ODE agent update calls still incoming can fail as they try to use a raycastmanager that has been disposed.
Bullet plugin does nothing on Dispose()
However, I wouldn't be at all surprised if individual region restarting was buggy in lots of other areas.
2012-05-26 01:55:35 +01:00