Robert Adams
b22d040169
BulletSim: add some new runtime setable parameters to match the dll.
2012-03-23 13:15:14 -07:00
Robert Adams
975184b3f9
BulletSim: Update list of TODO tasks
2012-03-23 13:15:11 -07:00
Robert Adams
164706043d
Have the PhysicsParameters module output console command responses
...
directly to the console rather than logging at INFO (which doesn't
output anything for WARN).
There should really be a WriteLine method on ICommandConsole so all
of the different commands don't have to figure out where the command
output should go.
2012-03-23 13:11:58 -07:00
nebadon
6b87a29c86
fix yield prolog so it compiles with mono 2.11 there has been a bugzilla
...
report files with mono project in regards to this change, this simply
lets us move forward with using mono 2.11 for now :
https://bugzilla.xamarin.com/show_bug.cgi?id=4052
2012-03-23 02:22:57 -07:00
Justin Clark-Casey (justincc)
d4beb2f5bc
Comment out log message about sending periodic appearance updates.
2012-03-23 03:39:39 +00:00
Justin Clark-Casey (justincc)
54887bf386
Add experimental SendPeriodicAppearanceUpdates = true/false setting to [Startup] in OpenSim.ini
...
On osgrid and other places, I have observed that manually sending appearance updates from the console often relieves grey avatar syndrome.
Despite hunting high and low, I haven't been able to find where this packet is sometimes being lost - it might be a persistent viewer bug for all I know.
Therefore, this experimental setting resends appearance data for everybody in the scene every 60 seconds. These packets are small and the viewer only fetches texture
data if it doesn't already have it.
Default is false.
2012-03-23 03:33:07 +00:00
Justin Clark-Casey (justincc)
4ed833bc9d
Add a scene maintenance thread in parallel to the heartbeat thread. The maintenance thread will end up running regular jobs that don't need to be in the main scene loop.
...
The idea is to make the critical main scene loop as skinny as possible - it doesn't need to run things that aren't time critical and don't depend on update ordering.
This will be done gradually over time to try and uncover any issues. Many non-criticial scene loop activities are being launched on separate threadpool threads anyway.
This may also allow modules to register their own maintenance jobs without having to maintain their own timers and threads.
Currently the maintenance loop runs once a second, as opposed to the 89ms scene loop.
2012-03-23 02:49:29 +00:00
Justin Clark-Casey (justincc)
349454ca27
Remove unnecessary shutting down check in Scene.Heartbeat(). Add some method doc. Rename HeartbeatThread, shuttingdown to conform to code standards.
2012-03-23 01:46:11 +00:00
BlueWall
c0672cb7db
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-22 21:27:03 -04:00
BlueWall
176bba4f67
Merge branch 'master' of /home/opensim/src/opensim
2012-03-22 21:26:30 -04:00
Justin Clark-Casey (justincc)
18b3f1132e
Rename Scene.StartTimer() to Start() - this method no longer uses a timer. Comment out more effectively unused old heartbeat code.
2012-03-23 01:21:43 +00:00
Justin Clark-Casey (justincc)
4ee8b3e23e
Fix build break
2012-03-23 01:11:43 +00:00
Justin Clark-Casey (justincc)
a9995ede65
Fix bug in ScenePresenceAnimator.RemoveAnimation() introduced in commit 1a8769e
...
Forgot to uppercase the animation name for default animations, since for some reason we store and use them in upper rather than lowercase.
2012-03-23 01:08:13 +00:00
Justin Clark-Casey (justincc)
bc2963d42a
Comment out unused scene loop restart code.
...
This has actually been unused since at least 0.7.2 due to earlier changes.
2012-03-23 01:03:10 +00:00
Justin Clark-Casey (justincc)
08b8ebcc7e
Use m_lastFrameTick instead of m_lastUpdate in Scene.GetHealth(). m_lastUpdate is no longer properly updated and is redundant anyway.
2012-03-23 00:55:11 +00:00
BlueWall
c903813e00
RegionReady logging
...
Some maintenance to clean up logging messages
2012-03-22 20:49:45 -04:00
Justin Clark-Casey (justincc)
40b9b519b8
Add commented out section on collisions switch in Scene.SetSceneCoreDebug().
...
This was not implemented before the recent changes but should be at some point.
2012-03-23 00:12:14 +00:00
Robert Adams
efe61b2481
BulletSim: remove confusion between angularVelocity and rotationalVelocity (there is still confusion in the rest of OpenSim). Enhance some debug statements to include the object ID.
2012-03-22 17:04:06 -07:00
Justin Clark-Casey (justincc)
15c2499ccd
Comment out login parameters debug output accidentally included with c4b2d24
2012-03-22 23:31:41 +00:00
Justin Clark-Casey (justincc)
c1d064e1ca
Comment out a terrain save-tile debugging message that accidentally crept in with c4b2d24
2012-03-22 23:16:52 +00:00
Justin Clark-Casey (justincc)
5bf45b9b98
refactor: simplify code for checks when part.OwnerID != destPart.OwnerID in MoveTaskInventoryItem()
2012-03-22 22:40:38 +00:00
Justin Clark-Casey (justincc)
760010d6fb
Fix llGiveInventory() so that it checks the destination part for AllowInventoryDrop, not the source.
...
This allows llAllowInventoryDrop() to work.
Regression test added for this case.
2012-03-22 22:33:37 +00:00
Justin Clark-Casey (justincc)
3bcf71c647
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-22 22:33:16 +00:00
Justin Clark-Casey (justincc)
c4b2d24f33
Add llGiveInventory() test from object to object where both objects are owned by the same user.
2012-03-22 22:17:07 +00:00
Diva Canto
df624c13c9
HG Friends: don't notify if the server isn't there.
2012-03-22 15:08:57 -07:00
Melanie
6bc1ccf234
Change a false false to be truly true - or is this statement false?
...
Fixes perms boo-boo
2012-03-22 20:39:18 +00:00
Melanie
b5d0bc2488
Rework Diva's patch to simplify it
2012-03-22 20:25:20 +00:00
Melanie
45b588cf00
Revert "Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch."
...
This reverts commit 6146e7ef25
.
2012-03-22 20:10:38 +00:00
Diva Canto
6146e7ef25
Simple build permissions feature. NOTE: EXPERIMENTAL, DISABLED BY DEFAULT. Turns out that this can't be expressed by cascading Permission modules, so I did it as per this patch.
2012-03-22 12:57:12 -07:00
Justin Clark-Casey (justincc)
9949ac2f9f
refactor: Rename AvatarAnimations -> DefaultAvatarAnimations for code clarity since non-default animations are handled completely separately from this class
2012-03-22 00:10:41 +00:00
Justin Clark-Casey (justincc)
71ec84d77f
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-22 00:00:05 +00:00
Justin Clark-Casey (justincc)
1a8769e6ef
Instead of loading default avatar animations in both SLUtil and AvatarAnimations, load just in AvatarAnimations instead.
...
This lets us remove the dependency of OpenSim.Framework.dll on data/avataranimations.xml, which is not necessary for ROBUST.
This commit also takes care of the odd situation where animations are stored and used internally with uppercase names (e.g. "STAND")
but scripts refer to them with lowercase names (e.g. "sit").
2012-03-21 23:57:39 +00:00
Robert Adams
7783c93802
BulletSim: update TODO list. Rearrange code for readability. Add per object friction and restitution runtime settable parameters.
2012-03-21 16:16:47 -07:00
Robert Adams
cb2727cf6e
BulletSim: Add AvatarRestitution parameter. Centralize computation of buoyancy for flying. Tweek avatar default friction and resititution
2012-03-21 16:16:46 -07:00
Robert Adams
6c55fd93a3
BulletSim: set buoyancy in only one place
2012-03-21 16:16:45 -07:00
Robert Adams
898a16802b
BulletSim: add some new runtime setable parameters to match the dll.
2012-03-21 16:16:44 -07:00
Robert Adams
eafc3d6c47
BulletSim: Update list of TODO tasks
2012-03-21 16:16:41 -07:00
Diva Canto
5170cd7577
Updated the UserAccountsClient a little bit, plus some more sanity checks on the service connector.
2012-03-21 11:22:39 -07:00
Diva Canto
4a9ca3ca8f
HG Friends: reroute the status notifications to the HGFriends service, so that they can scale better. They were previously being handled by the UAS; that is still there, but it's now obsolete and will be removed in a future release.
2012-03-21 10:35:06 -07:00
Diva Canto
d8bcb78b10
HG Friends: pulled sim-bound notification code to HGStatusNotifier, so that we can better manage this traffic.
2012-03-21 09:14:17 -07:00
Diva Canto
8ad426f329
Removed extraneous debug message
2012-03-21 08:08:43 -07:00
Diva Canto
1089e9b842
Removed extraneous debug message
2012-03-21 08:08:12 -07:00
Diva Canto
5abe1b4fce
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-20 21:36:46 -07:00
Diva Canto
d49dd5573b
Removed extraneous debug messages. Added a check for UUID.Zero.
2012-03-20 21:36:02 -07:00
Justin Clark-Casey (justincc)
54a8a5baba
If "debug scene updates true" then print out to log when a garbage collection occurs.
2012-03-21 02:02:14 +00:00
Justin Clark-Casey (justincc)
de53aa32e0
Add Scene.DebugUpdates switch which, if turned on, will print out a warning when a frame updates takes longer than twice the desired time
...
This is controlled via "debug scene updates true|false" on the region console.
Also fix an oversight with "debug scene teleport true|false"
2012-03-21 01:27:09 +00:00
Justin Clark-Casey (justincc)
ab243f4a57
Incorporate scene teleporting debugging into "debug scene teleport true|false" command
2012-03-21 01:13:44 +00:00
Justin Clark-Casey (justincc)
9671e43497
Replace "scene debug true false true" console command with "scene debug scripting true" or other parameters as appropriate.
...
This is to allow individual switching of scene debug settings and to provide flexibiltiy for additional settings.
2012-03-21 01:02:58 +00:00
Melanie
7a0d7be44c
Refix the fixed fix!
2012-03-21 00:17:58 +00:00
Diva Canto
69a9a6993e
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-20 17:33:26 -07:00
Justin Clark-Casey (justincc)
91a001d3cf
fix compile error from last commit
2012-03-21 00:31:31 +00:00
Diva Canto
9e8b194356
Fixed borkness with map search introduce by my last changes to it.
2012-03-20 17:29:34 -07:00
Diva Canto
742acc0a3c
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-20 17:26:18 -07:00
Diva Canto
f7c61790b7
Fixed borkness with previous merge.
2012-03-20 17:25:52 -07:00
Justin Clark-Casey (justincc)
022366a074
refactor: simplify EstateManagementModule.handleEstateDebugRegionRequest()
2012-03-21 00:23:46 +00:00
Diva Canto
841b4232f6
Line endings
2012-03-20 17:19:55 -07:00
Diva Canto
3fa51f66ec
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
...
Conflicts:
OpenSim/Framework/Util.cs
2012-03-20 17:19:14 -07:00
Diva Canto
d08ad6459a
HG Friends: allow the establishment of HG friendships without requiring co-presence in the same sim. Using avatar picker, users can now search for names such as "first.last@grid.com:9000", find them, and request friendship. Friendship requests are stored if target user is offline. TESTED ON STANDALONE ONLY.
2012-03-20 17:14:19 -07:00
Justin Clark-Casey (justincc)
7bf628ab31
Add ability to log warn if a frame takes longer than twice the expected time. Currently commented out.
2012-03-21 00:02:08 +00:00
Justin Clark-Casey (justincc)
4c41b53a4b
Add prim name to "[MESH]: No recognized physics mesh..." log message
2012-03-20 23:35:50 +00:00
Justin Clark-Casey (justincc)
02f9caf6ce
remove some mono compiler warnings
2012-03-20 23:34:10 +00:00
Justin Clark-Casey (justincc)
3701f893d3
remove unnecessary tmpFrameMS, use maintc instead for frame time calculation
2012-03-20 23:31:57 +00:00
Justin Clark-Casey (justincc)
c39fba8f9d
minor: remove some mono compiler warnings
2012-03-20 23:19:11 +00:00
Justin Clark-Casey (justincc)
8bdd38b804
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-20 23:14:15 +00:00
Justin Clark-Casey (justincc)
30b2a8c778
Move frame loop entirely within Scene.Update() for better future performance analysis and stat accuracy.
...
Update() now accepts a frames parameter which can control the number of frames updated.
-1 will update until shutdown.
The watchdog updating moves above the maintc recalculation for any required sleep since it should be accounted for within the frame.
2012-03-20 23:12:21 +00:00
nebadon
bd1f848bf6
slight increase in jump power to make running jump slightly better.
2012-03-20 14:17:15 -07:00
nebadon
9ed3532c1b
reduce avatar verticle jump from the absurd 5 meter jump to a less
...
absurd 3m vertical jump to better match what you would see in Second
Life and be more in line with what users would expect.
2012-03-20 13:45:38 -07:00
Justin Clark-Casey (justincc)
86bd287b53
refactor: precalculate the fixed movement factor for avatar tilting (sqrt(2)) rather than doing it multiple times on every move.
2012-03-20 20:39:33 +00:00
Justin Clark-Casey (justincc)
5f2a65c976
refactor: Eliminate unnecessary duplicate avCapsuleTilted
2012-03-20 20:28:58 +00:00
Justin Clark-Casey (justincc)
a3abd65e3d
Remove pointless ThreadAbortException catching in a test that isn't run anyway.
2012-03-20 01:41:32 +00:00
Justin Clark-Casey (justincc)
8c911ddaf0
Remove some pointless catching/throwing in the scene loop.
2012-03-20 01:39:19 +00:00
Justin Clark-Casey (justincc)
4cbaf053cf
Fix small typo
2012-03-20 00:53:33 +00:00
Justin Clark-Casey (justincc)
1c0f3a1f21
Fix crash where two scene loop threads could changes m_MeshToTriMeshMap at the same time.
...
Have to lock m_MeshToTriMeshMap as property is static and with more than one region two scene loops could try to manipulate at the same time.
2012-03-20 00:40:03 +00:00
Justin Clark-Casey (justincc)
e9271ec653
Add some doc about the EventManager.OnLoginsEnabled event.
2012-03-19 22:48:26 +00:00
Justin Clark-Casey (justincc)
e2b1c569da
Fix a bug where logins to standalones would fail if the RegionReady module was not active
...
Unfortunately, the OnLoginsEnabled event is currently only guaranteed to fire if the RegionReady module is active.
However, we can instantiate the AuthorizationService in the module RegionLoaded method since by this time all other modules will have been loaded
2012-03-19 22:45:03 +00:00
Justin Clark-Casey (justincc)
437f18bc41
Stop console command "xengine status" throwing an exception if there are no scripts in a region.
...
Addresses http://opensimulator.org/mantis/view.php?id=5940
2012-03-19 21:43:23 +00:00
Justin Clark-Casey (justincc)
ab54ce1907
Fix configuration problems where XAssetDatabasePlugin was picked up accidentally.
...
The asset data plugin now implements IXAssetData rather than IAssetData so the ordinary AssetService should no longer pick it up.
This replaces the changes in 92b1ade
. There is no longer any need to adjust your StandaloneCommon.ini/Robust.ini/Robust.HG.ini files.
This may explain very recent issues in the last few weeks where textures have been disappearing or turning white (as they were going to different places).
Unfortunately, you will need to rollback to an earlier database backup or reupload the textures.
2012-03-19 00:18:04 +00:00
Diva Canto
d1256536b5
Added GetUUID(first, last) on UserAgentsService so that we can finally make direct user connections.
2012-03-17 21:27:28 -07:00
Diva Canto
441ef301a3
Amend to previous commit: normalize strings ToLower.
2012-03-17 19:41:47 -07:00
Diva Canto
7dfa0309c6
More on HG access control. This commit splits the UserManagementModule into the Basic one and the HG one, so that we can do everything that needs to be done for HG ACLs to work without interfering with the vanilla opensim. For the moment, it finds foreign users who have left a trace in the region, e.g. an object. This makes it possible to ban/IM/etc these users using the regular avatar picker. TODO: contact the UAS directly given a name of the form First.Last @foo.com.
2012-03-17 15:36:20 -07:00
Diva Canto
1a4fdd2666
Moved HandleAvatarPickerRequest from the generic Scene.PacketHandlers to the UserManagementModule where it belongs. No functional changes.
2012-03-17 10:48:22 -07:00
Diva Canto
d87a5758fb
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-17 10:00:43 -07:00
Diva Canto
33c14cb107
Region access control! Region operators can now specify things like DisallowForeigners (means what it says) and DisallowResidents (means that only admins and managers can get into the region). This puts the never-completed AuthorizationService to good use. Note that I didn't implement a grid-wide Authorization service; this service implementation is done entirely locally on the simulator. This can be changed as usual by pluging in a different AuthorizationServicesConnector.
2012-03-17 10:00:11 -07:00
Justin Clark-Casey (justincc)
4a57112f19
Add osGetInventoryDesc() as per http://opensimulator.org/mantis/view.php?id=5927
...
This allows one to get description data for a given prim inventory item.
Thanks MarcelEdward and GuduleLapointe!
2012-03-17 04:02:23 +00:00
Justin Clark-Casey (justincc)
1e4180fc93
Clean up "save iar" help
2012-03-17 02:54:19 +00:00
Diva Canto
a4dca88a57
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-16 13:08:27 -07:00
Diva Canto
a2009ffe2e
Terrain: added [Terrain] section with an option to load an initial flat terrain. Default is still pinhead island. I much rather have a flat land in the beginning.
2012-03-16 13:08:05 -07:00
Justin Clark-Casey (justincc)
59b6f6a6e0
minor: reuse threadpool count we just fetched instead of fetching it again
2012-03-16 03:56:56 +00:00
Justin Clark-Casey (justincc)
bece2023e7
Add total scripts count to "show threads"
...
However, this returns 0 on Mono (at least on 2.6.7)! So not showing if it is zero.
2012-03-16 03:52:13 +00:00
Justin Clark-Casey (justincc)
9497a7c7bd
refactor: separate out console and status report generation parts of XEngine
2012-03-16 03:32:14 +00:00
Justin Clark-Casey (justincc)
922d8c9312
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-16 03:28:17 +00:00
Justin Clark-Casey (justincc)
6e8f80f1ab
Improve threadpool reporting to "show threads" console command (also gets printed out periodically)
2012-03-16 03:26:47 +00:00
Diva Canto
05bb2e4275
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-15 20:22:59 -07:00
Diva Canto
05a1493fff
More on map search: send extra messages to the user regarding the region being found or not, because the UI is horribly confusing -- places profile is always "loading..." whether the region exists or not.
2012-03-15 20:22:26 -07:00
Justin Clark-Casey (justincc)
421b562a04
Add process working memory to "show stats" memory statistics.
...
This shows the actual amount of RAM being taken up by OpenSimulator (objects + vm overhead)
2012-03-16 02:43:33 +00:00
Justin Clark-Casey (justincc)
aa881e8065
Allow comments to appear in command scripts (e.g. shutdown_commands.txt).
...
These can start with ; # or //
2012-03-16 02:07:26 +00:00
Justin Clark-Casey (justincc)
8550a4a07e
In Top Scripts report, don't show scripts with no or less than 1 microsecond of execution time.
...
This is to make the report clearer and less confusing.
2012-03-16 01:46:21 +00:00
Justin Clark-Casey (justincc)
c386b68373
Aggregate script execution times by linksets rather than individual prims.
...
This is for the top scripts report.
2012-03-16 01:31:53 +00:00
Justin Clark-Casey (justincc)
7df4a544fe
Fix owner name display in "Top Colliders" and "Top Script" region reports.
2012-03-16 00:53:36 +00:00
Justin Clark-Casey (justincc)
a4b01ef38a
Replace script-lines-per-second with the script execution time scaled by its measurement period and an idealised frame time.
...
The previous lines-per-second measurement used for top scripts report was inaccurate, since lines executed does not reflect time taken to execute.
Also, every fetch of the report would reset all the numbers limiting its usefulness and we weren't even guaranteed to see the top 100.
The actual measurement value should be script execution time per frame but XEngine does not work this way.
Therefore, we use actual script execution time scaled by the measurement period and an idealised frame time.
This is still not ideal but gives reasonable results and allows scripts to be compared.
This commit moves script execution time calculations from SceneGraph into IScriptModule implementations.
2012-03-16 00:34:30 +00:00
Diva Canto
0548eeb571
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-15 16:03:33 -07:00
Diva Canto
18d1d6d3b4
More on SLURLs and V3. This is hacky, but it works. Basically, we have to redefine the encoding of HG URLs because the viewer messes them up. Examples of what works and doesn't work:
...
- secondlife://ucigrid00.nacs.uci.edu|8002/128/128 <-- works throughout the viewer
- secondlife://http|!!ucigrid00.nacs.uci.edu|8002+Test+Zone+1/128/128 <-- works throughout the viewer
- secondlife://http|!!grid.sciencesim.com!grid!hypergrid.php+Yellowstone01+74/128/128 <-- works throughout
- secondlife://http%3A%2F%2Fucigrid00.nacs.uci.edu%3A8002%20UCI%20Central%201/128/128 <-- works in chat, but not as URLs in the webkit
2012-03-15 16:03:09 -07:00
Diva Canto
df144eb9e2
Revert "Revert "More hacking around viewer bug""
...
This reverts commit e5612553ce
.
2012-03-15 14:55:25 -07:00
Diva Canto
f52917288a
These SLURLs are very confusing! -- reverting the revert. Hack is, indeed, needed.
...
Revert "Revert "Hack around https://jira.secondlife.com/browse/VWR-28570 ""
This reverts commit 5a9560db28
.
2012-03-15 14:54:25 -07:00
Diva Canto
5a9560db28
Revert "Hack around https://jira.secondlife.com/browse/VWR-28570 "
...
This reverts commit 697ac7fd9d
.
2012-03-15 14:36:48 -07:00
Diva Canto
e5612553ce
Revert "More hacking around viewer bug"
...
This reverts commit 10731732b4
.
2012-03-15 14:36:29 -07:00
Mic Bowman
8b5298a62e
Protect the scriptmodulecomms interface.
2012-03-15 13:37:43 -07:00
Mic Bowman
402ff75d78
Adds a new script command 'modInvoke' to invoke registered functions
...
from region modules. The LSL translator is extended to generate the
modInvoke format of commands for directly inlined function calls.
A region module can register a function Test() with the name "Test".
LSL code can call that function as "Test()". The compiler will translate
that invocation into modInvoke("Test", ...)
2012-03-15 13:16:02 -07:00
Diva Canto
fd4ad82367
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-15 11:06:08 -07:00
Diva Canto
10731732b4
More hacking around viewer bug
2012-03-15 11:05:43 -07:00
Diva Canto
697ac7fd9d
Hack around https://jira.secondlife.com/browse/VWR-28570
2012-03-15 10:17:02 -07:00
Justin Clark-Casey (justincc)
acb1355ff2
Remove property/field duplication in ScriptInstance where it's unnecessary.
2012-03-15 02:02:31 +00:00
Justin Clark-Casey (justincc)
2d32401e23
Simplify some logic in the ScriptInstance constructor - running is set to false in both if/else branches
2012-03-15 01:32:16 +00:00
Justin Clark-Casey (justincc)
f0c1746063
minor: correct indentation levels
2012-03-15 01:26:38 +00:00
Justin Clark-Casey (justincc)
5ddda89238
Remove duplication of m_RunEvents and Running
2012-03-15 00:48:44 +00:00
Justin Clark-Casey (justincc)
2f81e53f63
Fix a problem where multiple near simultaneous calls to llDie() from multiple scripts in the same linkset can cause unnecessary thread aborts.
...
The first llDie() could lock Scene.m_deleting_scene_object.
The second llDie() would then wait at this lock.
The first llDie() would go on to remove the second script but always abort it since the second script's WorkItem would not go away.
Easiest solution here is to remove the m_deleting_scene_object since it's no longer justified - we no longer lock m_parts but take a copy instead.
This also requires an adjustment in XEngine.OnRemoveScript not to use instance.ObjectID instead when firing the OnObjectRemoved event.
2012-03-15 00:20:47 +00:00
Justin Clark-Casey (justincc)
12cebb12d5
Alleviate an issue where calling Thread.Abort() on script WorkItems can fail to release locks, resulting in a crippled simulator.
...
This seems to be a particular problem with ReaderWriterLockSlim, though other locks can be affected as well.
It has been seen to happen when llDie() is called in a linkset running more than one script.
Alleviation here means supplying a ScriptInstance.Stop() timeout of 1000ms rather than 0ms, to give events a chance to complete.
Also, we check the IsRunning status at the top of the ScriptInstance.EventProcessor() so that another event doesn't start in the mean time.
Ultimately, a better solution may have to be found since a long-running event would still exceed the timeout and be aborted.
2012-03-15 00:06:52 +00:00
Diva Canto
d6dd3c42d1
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-13 20:16:19 -07:00
Diva Canto
479dd65a63
Teleports: bounce off repeated requests of teleporting the same agent. Some scripts do that, and that fails the whole thing.
2012-03-13 20:15:38 -07:00
Diva Canto
5a09572393
Minor sanity check on simulation agent handler (content type)
2012-03-13 20:14:51 -07:00
Justin Clark-Casey (justincc)
95ec96bf86
refactor: rename ScriptInstance.m_CurrentResult to m_CurrentWorkItem to make it more understandable as to what it is and what it does (hold a thread pool work item for a waiting of in-progress event)
...
Also add other various illustrative comments
2012-03-14 00:29:36 +00:00
Diva Canto
37828c9b9a
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-13 08:07:11 -07:00
Diva Canto
4eb2605c79
Datasnapshot: added "secret" to the registration/deregistration query so that data providers can verify authenticity if they want.
2012-03-13 08:06:30 -07:00
Justin Clark-Casey (justincc)
25592bbd85
Add max thread and min thread information to "xengine status" region console command
2012-03-12 21:16:05 +00:00
Robert Adams
e0dd38f672
Rename the stream extension method WebUtil.CopyTo() to WebUtil.CopyStream().
...
.NET 4.0 added the method Stream.CopyTo(stream, bufferSize). For .NET 3.5
and before, WebUtil defined an extension method for Stream with the signature
Stream.CopyTo(stream, maxBytesToCopy). The meaning of the second parameter
is different in the two forms and depending on which compiler and/or
runtime you use, you could get one form or the other. Crashes ensue.
This change renames the WebUtil stream copy method to something that
cannot be confused with the new CopyTo method defined in .NET 4.0.
2012-03-12 10:07:04 -07:00
Diva Canto
13fb582c12
DataSnapshot: renamed gridserverURL to gatekeeperURL, and normalimzed the capitalization of 'name' to lower case, also in the same <grid> section.
2012-03-12 07:55:17 -07:00
Diva Canto
824eb7ed20
Added osGetGridGatekeeperURI()
2012-03-10 19:51:28 -08:00
Diva Canto
291dc39691
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-10 08:09:43 -08:00
Justin Clark-Casey (justincc)
05e821c444
Fix TestSaveOarNoAssets() by not launch a no-assets request on a separate thread.
...
This was previous behaviour anyway.
2012-03-10 03:11:28 +00:00
Justin Clark-Casey (justincc)
6e26f17923
minor: In IAR save, log when we start adding the control file rather than saying afterwards that we added it.
2012-03-10 02:13:17 +00:00
Justin Clark-Casey (justincc)
5507752dc5
minor: rearrange some save oar messages so they say what they're about to do rather than what they've just done.
2012-03-10 02:11:30 +00:00
Justin Clark-Casey (justincc)
1693799623
On OAR saving, try fetch assets serially rather than firing all the requests at the asset service at once.
...
This may (or may not) improve reliability for http://opensimulator.org/mantis/view.php?id=5898
Quick tests show that save time is the same.
2012-03-10 02:03:07 +00:00
Justin Clark-Casey (justincc)
d6ebf2d6ca
Add ability to specify a default estate to be used when creating regions.
...
This is configured in the new [Estates] section of OpenSim.ini.
If a default estate is configured then all new regions are automatically joined to it instead of asking the user.
If the default estate does not already exist then it is created.
Current default behaviour remains the same - the user is asked for estate details when necessary.
Thanks to Frenando Oliveira for the patch which I adapated further.
2012-03-10 01:27:05 +00:00
Mic Bowman
7b8e9d88e3
Serialize all web requests to a particular host:port pair; only applied to the PostToService variants.
2012-03-09 16:53:51 -08:00
Justin Clark-Casey (justincc)
bdc968f1fc
Factor out common default animations code into SLUtil. LLClientView now makes use of the SLUtil copy via a method rather than each LLClientView loading a separate copy.
...
As per opensim-users mailing list discussion.
2012-03-09 23:57:24 +00:00
Melanie
5c5a493791
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2012-03-09 22:59:23 +00:00
satguru srivastava
35f2479858
fix for NPC not playing internal animations
2012-03-09 22:58:59 +00:00
Diva Canto
a58152bd2a
More on inventory transfer hold ups:
...
- Added an inventory cache for caching root and system folders
- Synchronized the remote inventory connector, so that all the remote inventory calls are serialized
This will not make much difference in the hold ups. We'd have to move the FireAndForget high up to AddInventoryItem, but that opens up a can of worms regarding the notification of the recipient... the recipient would be notified of the offer before the items are effectively in his inventory, which could lead to surprises.
2012-03-09 12:59:24 -08:00
Diva Canto
81869c4a3f
More on HG inventory transfers. Move the FireAndForget higher up.
2012-03-09 09:48:12 -08:00
Diva Canto
f545d669de
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-08 19:32:21 -08:00
Diva Canto
7db5ba7702
More on the freeze on HG inventory transfers: spawn a threadlet on the functional asset posts so that the client threads doesn't freeze (but the network posts are serialized).
2012-03-08 19:31:53 -08:00
Justin Clark-Casey (justincc)
06dda14505
Simplify minimap coarse location code by just reference SP.AbsolutePosition
...
This is rather than checking whether the avatar is sitting and doing its own calculation.
2012-03-09 02:50:57 +00:00
Justin Clark-Casey (justincc)
205c36d3a4
Get rid of unnecessary ParentID == 0 check on SP.Get_AbsolutePosition since this is handled by the necessary ParentPart check
2012-03-09 02:44:08 +00:00
Justin Clark-Casey (justincc)
94e58ff6b9
Use SP.ParentPart instead of ParentID in places where it's more efficient (saving extra null checks, etc.)
...
However, it looks like we should retain SP.ParentID since it's much easier to use that in places where another thread could change ParentPart to null.
Otherwise one has to clumsily put ParentPart in a reference, etc. to avoid a race.
2012-03-09 02:38:11 +00:00
Justin Clark-Casey (justincc)
b454326273
refactor: cleanup SP.HandleAgentSit so that everything is done within one if (part != null), rather than having unnecessary multiple checks
2012-03-09 02:33:48 +00:00
Diva Canto
c22446ede0
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-08 18:29:08 -08:00
Diva Canto
8a34d1b710
HG inventory/asset transfers: serialize asset posts. I'm using the same pattern as suggested in the patch mantis #5921 . Testing it in this smaller context to see how it works.
2012-03-08 18:28:46 -08:00
Justin Clark-Casey (justincc)
73c47f7205
Remove a race condition from SP.Set_AbsolutePosition where we assume the ParentPart is still not null if the ParentID != 0
...
Another thread could come in and stand the avatar between those two instructions.
2012-03-09 02:22:22 +00:00
Melanie
42a7a85062
FireAndForget scripted rez - port from Avination
2012-03-09 00:57:49 +00:00
Justin Clark-Casey (justincc)
df4b06aed1
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-09 00:20:10 +00:00
Justin Clark-Casey (justincc)
034c9d6bcc
Merge branch 'xassetservice'
2012-03-09 00:19:42 +00:00
Justin Clark-Casey (justincc)
3c5bd7c35a
minor: move some compression related var setup inside compression if/then switch
2012-03-09 00:16:49 +00:00
Justin Clark-Casey (justincc)
0cbdf9dad2
Put big fat EXPERIMENTAL warning in xassetservice database plugin
...
This should not currently be used in any circumstances except for experimentation.
Database tables used by this plugin can still change at any time with no migration path.
2012-03-09 00:05:34 +00:00
Diva Canto
9c8ef96301
Fixes mantis #5923
2012-03-08 15:55:43 -08:00
Melanie
675d40357c
Hold a ref to the prim we're sat on rather than querying scene each time
...
the check for significant is carried out. Prevents a deadlock condition.
2012-03-08 19:14:34 +00:00
Justin Clark-Casey (justincc)
fa2a64564a
Move "change region" command into general category
2012-03-08 02:24:37 +00:00
Justin Clark-Casey (justincc)
dfdb0e140c
Uses shorter AddCommand form for "show estates"
2012-03-08 02:23:52 +00:00
Justin Clark-Casey (justincc)
650d761c06
Display help commander topics in capitalized form - the commands themselves are still lowercase.
...
Also convert the estate commands to simply AddCommand() calls so that commands from two different modules can be placed in the same category
2012-03-08 02:17:45 +00:00
Justin Clark-Casey (justincc)
430304c176
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-08 01:59:00 +00:00
Justin Clark-Casey (justincc)
749c3fef8a
Change "help" to display categories/module list then "help <category/module>" to display commands in a category.
...
This is to deal with the hundred lines of command splurge when one previously typed "help"
Modelled somewhat on the mysql console
One can still type help <command> to get per command help at any point.
Categories capitalized to avoid conflict with the all-lowercase commands (except for commander system, as of yet).
Does not affect command parsing or any other aspects of the console apart from the help system.
Backwards compatible with existing modules.
2012-03-08 01:51:37 +00:00
Justin Clark-Casey (justincc)
6bdea15ecf
minor: make NPC tests run in a given order, comment out log lines in mock region data plugins, null out scene in script and npc torture tests, add other doc comments to torture tests
2012-03-07 01:11:37 +00:00
Melanie
a1b28a61a6
Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim
2012-03-07 01:04:09 +00:00
Melanie
7769362687
Always zero the PhysActor on dupes to prevent side effects on the orignal prim
2012-03-07 01:03:26 +00:00
Justin Clark-Casey (justincc)
f3678d217f
Stop individually deleting objects at the end of each ObjectTortureTest.
...
We can now do this since the entire scene and all objects within it are now successfully gc'd at the end of these tests.
This greatly improves the time taken to run each test (by reducing teardown time, not the time to actually do the test work that we're interested in).
Slightly simplifies config read in Scene constructor to help facilitate this.
2012-03-07 00:31:18 +00:00
Justin Clark-Casey (justincc)
23aba007dd
Add documentation to make more explicit the difference between OnRezScript and OnNewScript in the event manager
...
OnNewScript fires when a script is added to a scene
OnRezScript fires when the script actually runs (i.e. after permission checks, state retrieval, etc.)
2012-03-07 00:04:24 +00:00
Justin Clark-Casey (justincc)
3376979923
Remove static m_MainInstance in LocalGridServiceConnector.
...
I believe this was originally required back when there could be two LocalGridServiceConnectors but this is no longer the case.
Having such statics makes performance testing much more difficult since they prevent GC of objects unless static references are explicitly nulled.
2012-03-06 23:51:50 +00:00
Justin Clark-Casey (justincc)
98251cdab3
Add sensor, dataserver requests, timer and listener counts to "xengine status" command.
...
This is for diagnostic purposes.
2012-03-06 23:21:17 +00:00
Justin Clark-Casey (justincc)
e9d8eb5a27
Remove unnecessary explicit ElapsedEventHandler in SimReporter
2012-03-06 22:31:25 +00:00
Justin Clark-Casey (justincc)
0f4cdc0c5b
Explictly close down the StatsReporter so that we can shutdown its timer
...
This is another step necessary for the scene to be garbage collected between performance tests
2012-03-06 19:05:32 +00:00
Justin Clark-Casey (justincc)
b3449e998a
Fix TestSyntaxError() and TestSyntaxErrorDeclaringVariableInForLoop()
...
They were all failing assertions but the exceptions these threw were caught as expected Exceptions.
I don't think we can easily distinguish these from the Exceptions that we're expecting.
So for now we'll do some messy manually checking with boolean setting instead.
This patch also corrects the assertions themselves.
2012-03-06 02:30:22 +00:00
Justin Clark-Casey (justincc)
a92153ed88
Get all test methods in OpenSim.Region.ScriptEngine.Tests.dll to report that they're running
2012-03-06 02:21:19 +00:00
Justin Clark-Casey (justincc)
85198a45cb
Fix off by one error in script error reporting.
2012-03-06 02:01:47 +00:00
Justin Clark-Casey (justincc)
1dc03e5c4f
Simplify NPCModuleTests code by putting the NPCModule in an instance variable rather than making each test fetch it seperately.
...
Also rename instance variables in the test to conform to naming standards and for understandability
2012-03-06 01:47:43 +00:00
Justin Clark-Casey (justincc)
d44b7c486a
Go back to setting appearance directly in NPCModule.SetAppearance() to fix mantis 5914
...
The part reverted is from commit 2ebb421
.
Unfortunately, IAvatarFactoryModule.SetAppearance() does not transfer attachments.
I'm not sure how to do this separately, unfortunately I'll need to leave it to Dan :)
Regression test added for this case.
Mantis ref: http://opensimulator.org/mantis/view.php?id=5914
2012-03-06 01:27:30 +00:00
Chris Hart
413bc1e77e
Updates to MSSQL store for 0.7.3 to include:
...
* Telehub support
* Bugfix to Friends lookups
* Updates to Creator fields to store up to 255 characters for HG item creator storage
2012-03-06 00:27:49 +00:00
Justin Clark-Casey (justincc)
441449e240
Switch to sha256 from sha1 in order to avoid future asset hash collisions.
...
Some successful collision attacks have been carried out on sha1 with speculation that more are possible.
http://en.wikipedia.org/wiki/Cryptographic_hash_function#Cryptographic_hash_algorithms
No successful attacks have been shown on sha256, which makes it less likely that anybody will be able to engineer an asset hash collision in the future.
Tradeoff is more storage required for hashes, and more cpu to hash, though this is neglible compared to db operations and network access.
2012-03-06 00:14:21 +00:00
Justin Clark-Casey (justincc)
fd2b285b1b
remove unnecessary hash local variable
2012-03-05 23:50:41 +00:00
BlueWall
33a154e446
Merge branch 'master' of /home/opensim/var/repo/opensim into v3_support
2012-03-04 10:42:37 -05:00
Justin Clark-Casey (justincc)
3780df8a32
Make asset compression optional. Currently set to false and not configurable from outside MySQLXAssetData.
2012-03-03 01:43:36 +00:00
Justin Clark-Casey (justincc)
75dc8b1aed
Implement basic gzip compression for xassetdata
...
Whether this is worthwhile is debatable since here we are not transmitting data over a network
In addition, jpeg2000 (the biggest data hog) is already a compressed image format.
May not remain.
2012-03-03 01:28:58 +00:00
Justin Clark-Casey (justincc)
2535a4cafc
If asset data already exists with the required hash then don't rewrite it
2012-03-03 00:05:02 +00:00
Justin Clark-Casey (justincc)
94b323d1d8
Perform asset storage transactionally
2012-03-02 23:41:54 +00:00
Justin Clark-Casey (justincc)
7113b44bdd
Merge branch 'master' into xassetservice
2012-03-02 23:30:19 +00:00
Justin Clark-Casey (justincc)
98ad6ed255
comment out "[CAPS]: ScriptTaskInventory Request" log spam
2012-03-02 23:29:35 +00:00
Justin Clark-Casey (justincc)
e81b3502ef
Make xassetservice execute one query to retrieve the asset, not two
2012-03-02 23:26:03 +00:00
Justin Clark-Casey (justincc)
c2c102d33e
Remove outdated comment about checking attachment prims in Scene.PipeEventsForScript()
2012-03-02 22:52:26 +00:00
Justin Clark-Casey (justincc)
089fd61a3b
Allow a script to receive events if its root prim is in an area where it's allowed to run rather than checking its own prim.
...
This allows scripts to run in child prims that are outside region boundaries.
This is an interim patch applied from http://opensimulator.org/mantis/view.php?id=5899 though it does not resolve that bug
Thanks tglion!
2012-03-02 22:43:24 +00:00
BlueWall
d242d47e5c
OpenID auth needs hashing before authenticating
2012-03-02 15:05:06 -05:00
BlueWall
6fc350725d
Merge branch 'master' into v3_support
2012-03-02 15:02:09 -05:00
Dan Lake
64a036b4cf
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
2012-03-02 09:19:35 -08:00
Dan Lake
8d249f8456
ScenePresence line endings and fix AllowMovement default to true.
2012-03-02 09:19:13 -08:00
Justin Clark-Casey (justincc)
6e3523e25e
minor: remove mono compiler warning
2012-03-02 04:08:07 +00:00
Justin Clark-Casey (justincc)
2a2656f629
Merge branch 'master' into xassetservice
2012-03-02 04:01:53 +00:00
Justin Clark-Casey (justincc)
be4199c3bc
Make XAssetService a de-duplicating asset service.
...
This is an extremely crude implemenation which almost works by accident. Nevertheless it does work.
It can be tested with the instructions at http://opensimulator.org/wiki/Feature_Proposals/Deduplicating_Asset_Service#Testing
It does not interact at all with the existing asset service or any data stored there.
This code is subject to change without notice and should not be used for anything other than gawking.
2012-03-02 03:57:55 +00:00
Diva Canto
8fccd2b555
Send the right name and creation date on the BasicProfileModule.
2012-03-01 19:55:51 -08:00
Dan Lake
e8779cd9e5
In ScenePresence, removed several private variables used to store public parameters. They were only used by the get/set and make code harder to refactor.
2012-03-01 19:22:05 -08:00
Justin Clark-Casey (justincc)
dd63cd1656
Start by adding XAssetService as a copy of the existing AssetService.
...
This is the start of exploring the creation of a bundled OpenSimulator asset service that does de-duplication and possibly file storage of assets.
Along the lines of coyled's SRAS, but not intended to replace, merely to act as a more performant bundled default.
Might end up nicking stuff from kcozen's patch at http://opensimulator.org/mantis/view.php?id=5429
More details at http://opensimulator.org/wiki/Feature_Proposals/Deduplicating_Asset_Service
Feedback and discussion welcome as commits are made.
2012-03-02 02:23:35 +00:00
Justin Clark-Casey (justincc)
ec48a2f32b
minor: Rename pCampbot console prompt to "pCampbot" rather than "Region"
2012-03-02 01:54:48 +00:00
Justin Clark-Casey (justincc)
94971bf3b9
Provide feedback on bot login states in pCampbot
2012-03-02 01:31:28 +00:00
Justin Clark-Casey (justincc)
d8c4985527
Move SenseRepeaters.Count check inside the SenseRepeatListLock.
...
No methods in the List class are thread safe in the MS specification/documentation
2012-03-02 00:28:37 +00:00