Justin Clark-Casey (justincc)
b5ecc31096
Combine TestDeleteSceneObjectAsync() with TestDeRezSceneObject() as they are functionally identical.
...
Move TestDeleteSceneObjectAsync() and TestDeleteSceneObjectAsyncToUserInventory() from SceneObjectBasicTests -> SceneObjectDeRezTests
2012-11-28 03:46:49 +00:00
Justin Clark-Casey (justincc)
3a297c7fe6
Fix regression TestDeleteSceneObjectAsyncToUserInventory by adding a BasicInventoryAccessModule() and re-enable in test suite.
2012-11-28 03:46:41 +00:00
Justin Clark-Casey (justincc)
c3243ce0ce
Consistenly make NUnit test cases inherit from OpenSimTestCase which automatically turns off any logging enabled between tests
2012-11-28 03:46:33 +00:00
Justin Clark-Casey (justincc)
ace552ecc5
Make "show threads" and "thread abort" console commands available on all servers
2012-11-28 03:46:10 +00:00
Justin Clark-Casey (justincc)
1d75570c59
Make "force gc" console command available across all servers
2012-11-28 03:46:04 +00:00
Justin Clark-Casey (justincc)
70ccc63b83
Make "show version" console command available across all servers
2012-11-28 03:45:56 +00:00
Justin Clark-Casey (justincc)
31373ee099
Delete unused BaseHttpServer.HandleAgentRequest()
2012-11-28 03:45:50 +00:00
Justin Clark-Casey (justincc)
6d0f66ae87
minor: Make note in log if scene was restarted due to an unrecoverable physics error
2012-11-28 03:45:15 +00:00
Justin Clark-Casey (justincc)
207233335e
Add AllowRegionRestartFromClient setting to [EstateManagement] section of OpenSim.ini.
...
Setting this to false will block all restart requests from the viewer even if they are otherwise legitimate.
One use is to block region restarts if necessary whilst restart functionality remains buggy or triggers bugs in modules,
though these should be fixed as soon as practicable.
Default is true, as has been the case historically.
2012-11-28 03:44:44 +00:00
Justin Clark-Casey (justincc)
e9fbfd0905
Remove the redundant BypassPermissions() checks in EstateManagmentModule.
...
This is repeated in the PermissionsModule and checking it earlier does not allow a force override of the bypass value
2012-11-28 03:40:59 +00:00
Justin Clark-Casey (justincc)
c35f974637
minor: Add some console feedback on region restart and log who requested a region restart if done from the viewer.
2012-11-28 03:40:52 +00:00
Justin Clark-Casey (justincc)
a4007cbe71
Add regression test for checking scene close when SceneManager is asked to close
2012-11-28 03:39:31 +00:00
Justin Clark-Casey (justincc)
d70e0b1189
Add "help all" console command which will list all commands alphabetically in a single list
2012-11-28 03:39:20 +00:00
Justin Clark-Casey (justincc)
a9ce40a722
Factor out command script code.
...
This also allows comments in command scripts (lines starting with ;, # or //) to be used across all servers
2012-11-28 03:39:05 +00:00
Justin Clark-Casey (justincc)
8d207fd8e6
Make "config show/set/get/save" console commands available on all servers
2012-11-28 03:38:41 +00:00
Justin Clark-Casey (justincc)
2487adf0b1
Factor out common pid file creation and removal code.
...
Log path at which pid file is created or reason for failure to create.
2012-11-28 03:28:27 +00:00
Justin Clark-Casey (justincc)
4aa725f60b
Add "get log level" command - this returns the current server session console logging level.
...
This supersedes getting information by calling "set log level" without a 4th argument, which is confusing.
2012-11-28 03:28:19 +00:00
Justin Clark-Casey (justincc)
0686a2fba9
Remove unused BaseOpenSimServer.ShowHelp()
2012-11-28 03:28:13 +00:00
Justin Clark-Casey (justincc)
b6305011db
Make "set log level" command available across all servers
2012-11-28 03:28:06 +00:00
Justin Clark-Casey (justincc)
9cdf5199df
Make "show info" command available across all servers
...
This helpfully lists version information, startup location and console log level
2012-11-28 03:27:59 +00:00
Justin Clark-Casey (justincc)
632dad337b
Factor out common registration of "show uptime" command
2012-11-28 03:27:52 +00:00
Justin Clark-Casey (justincc)
08234d0097
factor out common HandleShow code for "show uptime"
2012-11-28 03:27:43 +00:00
Justin Clark-Casey (justincc)
d68ba391fc
refactor: Factor out copy/pasted server uptime report code
2012-11-28 03:27:36 +00:00
Justin Clark-Casey (justincc)
603a140eb7
If an asset POST does not contain well-formed XML, return a 400 (Bad Request) HTTP status rather than simply dropping the request.
2012-11-28 03:27:30 +00:00
Justin Clark-Casey (justincc)
fd31f05cf0
Add regression test for a good request made to the asset service post handler.
...
Adds new OpenSim.Server.Handlers.Tests.dll to test suite
2012-11-28 03:27:15 +00:00
Justin Clark-Casey (justincc)
a8152c57b3
If GetAgents() is called with an empty userIDs array then don't bother with a useless potentially network call on the scene presence service connector.
...
This also eliminates the "[PRESENCE HANDLER]: GetAgents called without required uuids argument"
which has started to pop up in the logs when a call is made with an empty uuid array as occasionally happens.
2012-11-28 03:27:08 +00:00
Justin Clark-Casey (justincc)
4753d14a19
refactor: Move common presence connector code into BasePresenceServiceConnector
2012-11-28 03:26:50 +00:00
Justin Clark-Casey (justincc)
ee5e61d448
minor: If logging full incoming HTTP data, don't deceptively print ... at the end of the body.
2012-11-28 03:21:42 +00:00
Justin Clark-Casey (justincc)
41b76c4b9e
Remove old InventoryService, which has for a long time been replaced by XInventoryService.
2012-11-28 03:21:31 +00:00
Justin Clark-Casey (justincc)
314de0fc49
Remove unnecessary ability to directly set InventoryItemBase.CreatorIdAsUuid
...
This was necessary historically but hasn't been for many years.
Can still get CreatorIdAsUuid, which is really just a UUID cached version of the string CreatorId
2012-11-28 03:21:23 +00:00
Justin Clark-Casey (justincc)
93f7e4fb9d
Do not allow invariants to change on calls to XInventoryService.UpdateItem()
...
This is to help track down http://opensimulator.org/mantis/view.php?id=6359 where creator IDs on items and rezzed objects have been reported to sometimes change.
This should never happen - a particular item should never change creators (if an item is given then a new item (with new id) is created).
Invariants are inventory type, asset type, folder (changed only on MoveItems()), CreatorIdentification and Owner.
If caller attempts to change an invariant, warning is logged but other properties are still changed.
If you see this warning, reporting on Mantis 6359 would be very welcome with the exact operation being done at the time.
2012-11-28 03:21:15 +00:00
Justin Clark-Casey (justincc)
f8adf4de2f
Add basic XInventoryServicesTests.TestAddItem() regression test.
2012-11-28 03:21:06 +00:00
Justin Clark-Casey (justincc)
08f0274b5a
refactor: Move stat classes out of StatManager and into their own files for clarity.
2012-11-28 03:20:59 +00:00
Justin Clark-Casey (justincc)
94748aab84
Add a first draft mechanism for the IncomingPacketsProcessedStat to show the delta over time.
...
The chief motivation for this is to be able to tell whether there's any impact on incoming packet processing from enabling extra packet pooling.
2012-11-28 03:20:50 +00:00
Justin Clark-Casey (justincc)
468d1cf03e
refactor: move common inventory folder version update code to parent class in mysql, mssql and sqlite database plugins
2012-11-28 03:20:28 +00:00
Justin Clark-Casey (justincc)
e8e6bc0c6a
Improve inventory folder version updating for mssql database plugin.
...
I am not in a position to test this so the updates have been done blind.
If it needs any fixing will probably require patches.
2012-11-28 03:07:05 +00:00
Justin Clark-Casey (justincc)
e263368656
Implement folder version updating for the sqlite inventory plugin
2012-11-28 03:06:51 +00:00
Justin Clark-Casey (justincc)
4b6a9d107d
Handle Map block requests on a separate thread rather than the main packet handling thread.
...
This prevents a slow grid information network call from holding up the main packet handling thread.
There's no obvious race condition reason for not doing this asynchronously.
2012-11-28 03:06:43 +00:00
Justin Clark-Casey (justincc)
ee5454fd4a
Do HandleMapLayerRequest on its own thread rather than on the main inbound udp packet handling thread.
...
There's no obvious race condition reason for doing this on the main packet handling thread.
2012-11-28 03:06:35 +00:00
Justin Clark-Casey (justincc)
38d2d6a20c
Following on from 4f982596
, launch map name requests on an async thread from LLClientView directly.
...
This releases the inbound packet handling thread marginally quicker and is more consistent with the other async packet handling
2012-11-28 03:06:28 +00:00
Justin Clark-Casey (justincc)
7e493b9665
Make PacketPool class stats pull stats instead of push stats so they can be lifted up into LLUDPServer and be distiguished by scene name
2012-11-28 03:06:19 +00:00
Justin Clark-Casey (justincc)
b7c1a37676
Add IncomingPacketsProcessedCount stat for diagnostics.
...
Also puts some packet processing counts in a container named after the scene so that stats can be collected from more than one scene.
2012-11-28 03:06:12 +00:00
Justin Clark-Casey (justincc)
4fe042aa7f
More consistently dispose of SqliteCommand in OpenSim.Data.SQLite where possible.
...
Not doing SQLiteInventoryStore since this is no longer used and should disappear in the future.
2012-11-28 03:06:00 +00:00
Justin Clark-Casey (justincc)
a83218fd08
If no ISimulationDataStore or IEstateDataStore implementations could be loaded then halt with informative message rather than a later NRE.
...
Halt already occurs if the relevant config sections are not present.
So it also makes sense to halt if the implementations themselves cannot be loaded.
2012-11-28 03:05:49 +00:00
Justin Clark-Casey (justincc)
221af2da70
minor: Add some explanative method doc to SceneHelpers.SetupSceneModules()
2012-11-28 03:05:16 +00:00
Diva Canto
c6c6ac0a3e
Fix Unit tests -- the module contract was not being honored in the set up of scenes.
2012-11-28 03:04:02 +00:00
Justin Clark-Casey (justincc)
a5fdfd6343
Uncomment SceneObjectBasicTests.TestDeleteSceneObjectAsyncToUserInventory() and make it compile again
...
Not currently in test suite since not yet working.
Also add method doc to Scene.DeRezObjects()
2012-11-28 03:03:26 +00:00
Diva Canto
72e0c77f91
Minor improvement in the MapSearchModule. Stop blocking the client thread if the search takes too long.
2012-11-28 03:03:18 +00:00
Justin Clark-Casey (justincc)
db045e69f9
Also add the additional ScriptException constructor necessary to get [Serializable] to work.
2012-11-28 02:59:53 +00:00
Justin Clark-Casey (justincc)
6a54cb871b
Mark ScriptException as [Serializable] for when it has to cross AppDomains
2012-11-28 02:59:47 +00:00
Justin Clark-Casey (justincc)
3619a83b28
Handle UUIDGroupName and ObjectGroup viewer UDP requests asynchronously rather than synchronously.
...
This is to avoid the entire scene loop being held up when the group service is slow to respond.
There's no obvious reason for these queries to be sync rather than async.
2012-11-28 02:59:39 +00:00
Justin Clark-Casey (justincc)
e3927d2868
Make "show object part" command correctly display script status.
...
Uses new IEntityInventory.TryGetScriptInstanceRunning()
Makes it clearer that TaskInventoryItem.ScriptRunning cannot be used as it is temporary and not updated.
2012-11-28 02:59:30 +00:00
Justin Clark-Casey (justincc)
fe503de17a
Only create a new list to check if objects have reached targets if there actually are any targets.
2012-11-28 02:59:13 +00:00
SignpostMarv
5498a64a9f
fixing poorly-formatted xml doc string for Util.IsInsideBox
2012-11-28 02:58:37 +00:00
SignpostMarv
3148a231db
refactoring llGetPos() to take advantage of implicit converter
2012-11-28 02:58:22 +00:00
Justin Clark-Casey (justincc)
bffdf20721
Fix memory leak where removing an NPC did not remove its circuits.
...
This was because we were removing by circuitcode where NPCs have no code.
Now removing by agent ID instead.
This commit also fixes the "show circuits" console command to work properly where the circuit has no associated IP address.
2012-11-28 02:57:13 +00:00
Justin Clark-Casey (justincc)
a4b64d4854
Add "force gc" region console command which manually invokes garbage collection.
...
For debugging purposes.
2012-11-28 02:57:02 +00:00
Melanie
fe195e0a9c
Deep copy the collection of at_target objects so it can't be modified while
...
it's being iterated
2012-11-28 02:56:53 +00:00
Justin Clark-Casey (justincc)
9d70f48207
minor: Fix verbose IAR save message to make it a bit clearer that item data is being saved at that point, not asset data.
2012-11-28 02:56:44 +00:00
Justin Clark-Casey (justincc)
d83df8c1cf
Fix "save iar" hanging permanently if the asset request phase times out.
...
Unlike "save oar", this was happening on the same thread as the original request.
The timeout happens on another so the original thread is never aborted.
On "save oar" this leaves the thread hanging (still bad) but on "save iar" it left the console thread hanging.
Temporary fix is to make "save iar" do asset request on a separate thread, like "save oar".
Longer term fix will be to restructure asset save to use a ManualResetEvent rather than a separate timeout timer.
2012-11-28 02:56:34 +00:00
Justin Clark-Casey (justincc)
c7c6c12146
minor: Make the error thrown logged when a simulator in grid mode is trying to set estate owner to a user that doesn't exist a little more obvious.
2012-11-28 02:56:22 +00:00
SignpostMarv
e83a4c24ee
Formatting and casing correction in WorldCommModule, trailing new line in OSSL to get git diff to not complain
2012-11-28 02:56:09 +00:00
Justin Clark-Casey (justincc)
a1669be6c3
minor: Add comment as to why we are pulcking plain old ints out of the LSL_List when converting values from LSL for modInvoke()
2012-11-28 02:55:58 +00:00
SignpostMarv
e36799f515
system ints can end up in LSL lists, which can cause counter-intuitive unknown list element type errors in ConvertFromLSL (via modInvoke)
2012-11-28 02:55:36 +00:00
Justin Clark-Casey (justincc)
186fe5f7b0
Comment out InventoryTransferModule.NeedSceneCacheClear() and invocations since the call itself does nothing and the return value is ignored by all callers.
...
This is a very old method (+4 years) so is probably confusing code cruft.
2012-11-28 02:55:26 +00:00
Justin Clark-Casey (justincc)
27206eccef
minor: if a scene is already shutting down on Scene.Close(), warn and exit instead of attempting to run another shutdown concurrently.
...
Thanks to Oren Hurvitz for this change.
2012-11-28 02:55:15 +00:00
Oren Hurvitz
62c0d60d3e
Changed "course" to "coarse" in several places
2012-11-28 02:55:08 +00:00
Justin Clark-Casey (justincc)
458a103529
In Scene.Close(), dispose of the physics scene after base.Close() since script events can still access Physics scene until the script engine shuts down (triggered off base.Close())
...
XEngine listeners to EventManager.OnShutdown which is triggered from base.Close().
Possibly it could listen for the earlier OnSceneShuttingDown instead, but the easier solution right now is to relocate disposal of the physics scene.
This bug has existed since c150320
(Thu Jul 26 15:27:18 2012) and was in 0.7.4
2012-11-28 02:54:52 +00:00
Justin Clark-Casey (justincc)
c22a37e7a6
Fix script error messages not showing up in viewer 3 and associated viewers.
...
Viewer 3 will discard such a message if the chat message owner does not match the avatar.
We were filling the ownerID with the primID, so this never matched, hence viewer 3 did not see any script error messages.
This commit fills the ownerID in with the prim ownerID so the script owner will receive script error messages.
This does not affect viewer 1 and associated viewers which continue to process script errors as normal.
2012-11-28 02:54:31 +00:00
Justin Clark-Casey (justincc)
01a8a65d75
Get osNpcCreate() and osNpcLoadAppearance() to generate a script error if appearance notecard does not exist, rather than returning UUID.Zero or silently failing.
2012-11-28 02:54:25 +00:00
Justin Clark-Casey (justincc)
28ced402d8
When scripts generate expected exceptions (e.g. due to checked bad parameter) throw ScriptException instead of just a plain old exception.
...
This is to make it easier to distinguish these exceptions from unexpected OpenSimulator problems internally and in regression tests.
No functional changes.
2012-11-28 02:54:17 +00:00
Justin Clark-Casey (justincc)
95e35fe84a
Make osNpcCreate() return UUID.Zero instead of throwing an exception if notecard name is invalid. Make osNpcLoadAppearance() fail silently in same circumstance rather than throwing exception.
2012-11-28 02:54:05 +00:00
Justin Clark-Casey (justincc)
3692ff2bdb
Add TestOsNpcLoadAppearance()
2012-11-28 02:53:55 +00:00
Justin Clark-Casey (justincc)
7235a5fed4
Move npc creation tests involving appearance from OSSL_ApiAppearanceTest to OSSL_ApiNpcTests
...
This is a more intuitive location.
2012-11-28 02:53:46 +00:00
Justin Clark-Casey (justincc)
614e5b52b8
Allow "show object", "show part", "dump object" and "delete object" to accept a local ID as well as a UUID.
...
This means that the sub-commands are now id rather than uuid, e.g. show object id
2012-11-28 02:53:39 +00:00
Justin Clark-Casey (justincc)
35ab31fb5f
Add "dump object uuid" console command. This allows any object in the scene to be serialized and dumped to XML for debug purposes.
2012-11-28 02:53:15 +00:00
Justin Clark-Casey (justincc)
636994eea6
minor: Move co-ordinate related help to object commands to common ConsoleUtil.CoordHelp
2012-11-28 02:53:06 +00:00
Justin Clark-Casey (justincc)
146ac5ceda
Make it possible to turn the base UDP object packet pools on and off whilst running via the "debug lludp pool <on|off>" console command. For debug purposes.
...
This does not currently apply to the higher LLUDP packetpool.
2012-11-28 02:52:53 +00:00
Justin Clark-Casey (justincc)
5413bfec30
Add object count stats for new IncomingPacket and UDPPacketBuffer pools if they are enabled. Add count stats for existing LLUDP pool.
...
This introduces a pull stat type in addition to the push stat type.
A pull stat takes a method on construction which knows how to update the stat on request.
In this way, special interfaces for pull stat collection are not necessary.
2012-11-28 02:52:46 +00:00
Justin Clark-Casey (justincc)
f39c2cd714
minor: Get content type handler logger to log "unset" for the content type instead of blank if no content type was set.
2012-11-28 02:52:40 +00:00
Justin Clark-Casey (justincc)
e0ef2bdf81
minor: Use LogIncomingToContentTypeHandler() method for incoming HTTP data where this wasn't already used.
...
This allows log level 5 (log sample or large part of incoming post data) to operate and removes copy/paste.
2012-11-28 02:52:29 +00:00
PixelTomsen
efc09e8022
SQLite DB: some values of land data will be not saved / loaded
...
http://opensimulator.org/mantis/view.php?id=6370
Signed-off-by: BlueWall <jamesh@bluewallgroup.com>
2012-11-28 02:52:17 +00:00
Justin Clark-Casey (justincc)
1790355f3e
minor: Rename assetCache constructor param in UUIDGatherer to assetService which is what it is.
2012-11-28 02:51:42 +00:00
Justin Clark-Casey (justincc)
d0d004c6ff
Add method doc for IPresenceService
2012-11-28 02:51:36 +00:00
Justin Clark-Casey (justincc)
ee4abb681e
Improve efficiency of friends notification by only make one PresenceService call for all friends rather than one for each friend.
...
However, large groups could still take a very long time since we still need to message each avatar on different simulators.
2012-11-28 02:51:24 +00:00
Justin Clark-Casey (justincc)
9e3605d952
Fix build break from commit e469879
2012-11-28 02:51:11 +00:00
Justin Clark-Casey (justincc)
0df4927710
Add "debug groups verbose <true|false>" region console command
...
This allows one to turn on super-verbose groups debug logging on and off whilst the region is in operation.
2012-11-28 02:51:01 +00:00
Justin Clark-Casey (justincc)
9d4415429d
minor: Increase attachment name field from 36 to 50 chars in "attachments show" report
2012-11-28 02:50:47 +00:00
SignpostMarv
c86ac36876
altering documentation for llGetLinkName, as the current documentation is rather lengthy for a "summary".
2012-11-28 02:50:23 +00:00
SignpostMarv
4a4d800523
ensuring that operand order in llGetLinkName is internally consistent
2012-11-28 02:49:44 +00:00
Justin Clark-Casey (justincc)
01c148bbce
minor: comment out currently unused logger in DynamicTextureModule
2012-11-28 02:49:28 +00:00
Justin Clark-Casey (justincc)
1cbe4363a3
Make "show part" console commands print out information about each item the part contains
2012-11-28 02:49:21 +00:00
Justin Clark-Casey (justincc)
c0254d914f
minor: Convert ad-hoc list building in ObjectCommandsModule to use ConsoleDisplayList
2012-11-28 02:49:10 +00:00
Justin Clark-Casey (justincc)
53112f1e80
Add local and UUID to information output of "show object" and "show part" region console commands
2012-11-28 02:49:02 +00:00
Justin Clark-Casey (justincc)
0f312c58ca
Add --full option to "show object name/uuid/pos" to show info on all parts of an object, not just whole object summary information.
2012-11-28 02:48:54 +00:00
Justin Clark-Casey (justincc)
2ca520c1eb
Add number of inventory items to information displayed via "show part" console command
2012-11-28 02:48:47 +00:00
Justin Clark-Casey (justincc)
c9b7ac2ae5
minor: Remove event method doc from LLClientView that I forgot in the last commit (1de80c)
2012-11-28 02:47:47 +00:00
Justin Clark-Casey (justincc)
6e2ffd7050
minor: move recent OnAgentUpdate/OnPreAgentUpdate event doc up into IClientAPI from LLClientView
2012-11-28 02:47:40 +00:00
Justin Clark-Casey (justincc)
8726748e22
Reuse the same AgentUpdateArgs object for each AgentUpdate UDP packet (of which there are 10 a second) rather than constructing a new one every time.
...
We can do this because AgentUpdate packets are handled synchronously.
2012-11-28 02:47:31 +00:00
Justin Clark-Casey (justincc)
73c2db9e8f
Explicitly return only the incoming AgentUpdate packet as this is the only one we pool atm, rather than attempting to return all incoming packets.
2012-11-28 02:47:24 +00:00