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)
c7b9d460e0
Fix build break from 1aa0271
by adding System.Core to prebuild.xml
2012-11-28 03:06:57 +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)
862f595e5d
Replace the 64 bit macosx version of libopenjpeg-dotnet.dylib with a 32-bit version from libopenmetaverse commit 3731ee4
...
This is because macosx mono is 32-bit and this can't p/invoke 64-bit binaries.
However, the reverse is also true.
If OpenSimulator stops working for you then please complain! Long term alternative is probably to build a fat binary with both architectures.
2012-11-28 03:00:03 +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
Oren Hurvitz
c39342df3e
Changed duplicate Asset ID's to unique ID's in CollisionSoundsAssetSet.xml
2012-11-28 02:55:00 +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