Commit Graph

572 Commits (2d3a57a002c74704501f4ce0f0359f2a19699eb5)

Author SHA1 Message Date
teravus dfac269032 Merge master into teravuswork 2012-11-15 09:46:41 -05:00
Melanie 5895c4cc6f Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
2012-11-15 03:46:10 +00:00
Justin Clark-Casey (justincc) daf03bfb56 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-15 03:09:20 +00:00
Justin Clark-Casey (justincc) 57273ef7b2 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-15 03:07:45 +00:00
Justin Clark-Casey (justincc) df4da51f04 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-15 03:04:46 +00:00
Justin Clark-Casey (justincc) 038528dc80 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-15 02:02:59 +00:00
Justin Clark-Casey (justincc) 2c36106675 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-15 01:14:18 +00:00
Melanie 06fa1681ae Merge branch 'master' into careminster 2012-11-15 00:43:26 +00:00
Diva Canto aeeaa3a0a9 Added AssemblyInfos to every dll in the OpenSim.Region namespace. 2012-11-14 11:09:43 -08:00
Melanie 9a5679876e Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/Caps/GetTextureModule.cs
	OpenSim/Region/ClientStack/Linden/Caps/NewFileAgentInventoryVariablePriceModule.cs
2012-11-13 02:10:09 +00:00
Diva Canto 86903f23dd Cleanup on region modules: gave short node id's to all of them. 2012-11-12 18:08:02 -08:00
Melanie 2e0ce70e63 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Application/OpenSimBase.cs
	OpenSim/Region/ClientStack/Linden/Caps/NewFileAgentInventoryVariablePriceModule.cs
	OpenSim/Region/CoreModules/World/Warp3DMap/Warp3DImageModule.cs
	OpenSim/Region/Framework/ModuleLoader.cs
	OpenSim/Region/Framework/Scenes/SceneManager.cs
2012-11-12 23:27:47 +00:00
Melanie 0d15a6a01f Remove any mention of IRegionModule from region names and comments to aid
grepping for remaining uses
2012-11-12 19:18:20 +00:00
Melanie 389077345f Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Gods/GodsModule.cs
	OpenSim/Region/CoreModules/Scripting/WorldComm/WorldCommModule.cs
	OpenSim/Region/CoreModules/World/WorldMap/MapSearchModule.cs
2012-11-11 16:31:01 +00:00
Diva Canto 3a5e317f65 One more module converted: ObjectAdd. 2012-11-10 10:35:27 -08:00
Diva Canto 4ac857f902 One more module: EventQueueGetModule. Also making it non-optional for this dll. 2012-11-10 08:48:31 -08:00
teravus cda127e30f * Prep work switching the GetMeshModule over to a poll service.
* This still has the image throttler in it..  as is...  so it's not suitable for live yet.... The throttler keeps track of the task throttle but doesn't balance the UDP throttle yet.
2012-11-09 23:55:30 -05:00
teravus 182b487243 This implements the Caps throttler. After some testing, the system seemed to be OK with me specifying allowing 1 oversized image per 70,000b/sec with at least one. Try it out, start with a low bandwidth setting and then, set your bandwidth setting middle/high and see the difference.
Tested with Two Clients on a region with 1800 textures all visible at once.
2012-11-05 22:05:10 -05:00
teravus b7b96a5e4f Another step in the chain. Pipe the throttle update to the appropriate PollServiceTextureEventArgs. Each poll service having it's own throttle member is more consistent with the model then the region module keeping track of all of them globally and better for locking too. The Poll Services object is not set static to handle multiple nearby regions on the same simulator.
Next step is hooking it up to HasEvents
2012-11-05 13:10:00 -05:00
teravus 4fa088bafb Pipe Throttle Update Event to EventManager, client --> ScenePresence --> EventManager, so that modules can know when throttles are updated. The event contains no client specific data to preserve the possibility of 'multiple clients' and you must still call ControllingClient.GetThrottlesPacked(f) to see what the throttles actually are once the event fires. Hook EventManager.OnUpdateThrottle to GetTextureModule. 2012-11-04 22:57:24 -05:00
Melanie a2c6094324 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/TaskInventoryItem.cs
	OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs
2012-10-31 21:42:06 +00:00
Justin Clark-Casey (justincc) 4ba48151b2 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-10-31 00:39:45 +00:00
Melanie 26cc57b6ca Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Chat/ChatModule.cs
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Region/Framework/Scenes/Scene.PacketHandlers.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LSL_Constants.cs
2012-10-26 21:13:01 +01:00
Justin Clark-Casey (justincc) c13a99dc5c 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-10-25 03:26:12 +01:00
Melanie 484eca323b Merge branch 'master' into careminster 2012-10-23 17:25:40 +01:00
Justin Clark-Casey (justincc) 319ebaca06 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-10-23 02:44:15 +01:00
Justin Clark-Casey (justincc) 4578ff74fe 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-10-23 01:52:10 +01:00
Melanie 72c925a6c9 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Framework/WebUtil.cs
	OpenSim/Region/Physics/OdePlugin/OdeScene.cs
2012-10-18 20:56:34 +01:00
Melanie caf2dcde70 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
2012-10-18 20:42:43 +01:00
Melanie 2e8e8d576e Remove redundant and annoyingly modal message box in upload processing. 2012-10-18 13:20:50 +02:00
Justin Clark-Casey (justincc) 0811f3d28d minor: Remove event method doc from LLClientView that I forgot in the last commit (1de80c) 2012-10-18 00:34:10 +01:00
Melanie 3651cc0378 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
2012-10-18 00:06:43 +01:00
Justin Clark-Casey (justincc) 3ec2923022 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-10-17 23:54:05 +01:00
Melanie 9b68446811 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
2012-10-17 23:50:48 +01:00
Justin Clark-Casey (justincc) faf6b56839 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-10-17 23:08:14 +01:00
Justin Clark-Casey (justincc) 2ed59ad8ac If RecycleBaseUDPPackets = true, also pool IncomingPackets to reduce memory churn 2012-10-17 21:08:15 +01:00
Melanie 322eefbb6f Allow the console to be used by gods as well as region owners. 2012-10-17 01:31:05 +02:00
Melanie 416bc19da7 Merge branch 'avination' into careminster 2012-10-17 00:13:49 +01:00
Melanie 39cbf4f7a1 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Monitoring/BaseStatsCollector.cs
2012-10-17 00:12:30 +01:00
Melanie ad60a29c93 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
2012-10-17 00:03:02 +01:00
Justin Clark-Casey (justincc) f35826eb31 minor: Make BasicCircuitTests.SetUp() call overriden base method instead of ignoring it. 2012-10-16 23:50:45 +01:00
Justin Clark-Casey (justincc) fc861c7904 Add optional pool for the UDPPacketBuffer objects that handle all incoming UDP data.
Even when an avatar is standing still, it's sending in a constant stream of AgentUpdate packets that the client creates new UDPPacketBuffer objects to handle.
This option pools those objects.  This reduces memory churn.
Currently off by default.  Works but the scope can be expanded.
2012-10-16 23:35:05 +01:00
Melanie c4fcfec24e Merge branch 'master' into careminster 2012-10-16 23:22:37 +01:00
Justin Clark-Casey (justincc) db4ca57590 Make it possible to separate start and stop lludp packet processing from the console for debug processes.
This is controlled via the "debug lludp start <in|out|all>" and "debug lludp stop <in|out|all>" region console commands.
The command "debug lludp status" will show current status.
2012-10-16 21:55:00 +01:00
Melanie fa52effb27 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Framework/EntityTransfer/EntityTransferModule.cs
	OpenSim/Services/Connectors/Friends/FriendsSimConnector.cs
2012-10-16 04:30:01 +01:00
Justin Clark-Casey (justincc) 0eb457442d minor: Add missing newlines and spacing to help for "debug eq" console command 2012-10-16 01:31:51 +01:00
Justin Clark-Casey (justincc) 3ac6a423f7 minor: comment out "Registered seed capability" message for "Received SEED caps request" message for now.
I think this is more useful right now since it tells us if the viewer requested a seed caps at all in various scenarios (such as when teleporting to a new region).
2012-10-16 00:54:25 +01:00
Justin Clark-Casey (justincc) 8c2564c05c minor: Comment out the region console caps message for now. 2012-10-16 00:40:28 +01:00
Melanie de3ff44406 Make texture sedning use only two threads to make things less harsh on bandwidth 2012-10-14 17:10:26 +02:00
Justin Clark-Casey (justincc) dc460579fd minor: Fix and elaborate on log information printed when an unrecognized estate method is received from the client. 2012-10-13 01:47:10 +01:00
Melanie 6ce93b22d1 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-10-12 19:05:06 +01:00
Justin Clark-Casey (justincc) b7e75d467c minor: Use && instead of & when deciding whether to print Improve/ObjectUpdate packet out messages when debug is turned on.
Practical effect is probably none.
2012-10-12 02:10:30 +01:00
Justin Clark-Casey (justincc) 8873a4a8fc minor: Fix bug in categorization of blocks reused stat from packetpool 2012-10-12 01:59:47 +01:00
Justin Clark-Casey (justincc) 21d0cbf703 Add AgentUpdate to PacketPool. This is the most common inbound packet from viewers. 2012-10-12 01:39:37 +01:00
Justin Clark-Casey (justincc) 59a17ad676 Fix percentage stats to multiply by 100. Adjust container name for packetpool stats. 2012-10-12 00:26:15 +01:00
Justin Clark-Casey (justincc) 8a402850dd Enable reuse of data blocks for ImprovedTerseObjectUpdate using existing Packetpool code. 2012-10-12 00:21:45 +01:00
Justin Clark-Casey (justincc) 2e9ef015f7 Fix packetpool for ImprovedTerseObjectUpdate packets.
These were neither being returned or in many places reused.
Getting packets from a pool rather than deallocating and reallocating reduces memory churn which in turn reduces garbage collection time and frequency.
2012-10-11 23:58:37 +01:00
Justin Clark-Casey (justincc) 1f2472d0fc Extend "show stats" command to "show stats [list|all|<category name>]"
This allows different categories of stats to be shown, with options to list categories or show all stats.
Currently categories are scene and simulator and only a very few stats are currently registered via this mechanism.
This commit also adds percentage stats for packets and blocks reused from the packet pool.
2012-10-11 23:28:53 +01:00
Justin Clark-Casey (justincc) e76b01a201 Lock on AgentCircuitData during Scene.AddClient() and RemoveClient() to prevent an inactive connection being left behind if the user closes the viewer whilst the connection is being established.
This should remove the need to run the console command "kick user --force" when these connections are left around.
2012-10-10 00:26:43 +01:00
Justin Clark-Casey (justincc) 73c9abf5f2 Move OpenSim.Data.RegionFlags -> OpenSim.Framework.RegionFlags to make it easier for other code to use (e.g. LSL_Api) without having to reference OpenSim.Data just for this. 2012-10-09 01:35:27 +01:00
Melanie f7df68d922 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Avatar/Lure/LureModule.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
	OpenSim/Services/Connectors/Asset/AssetServicesConnector.cs
2012-10-07 02:48:28 +01:00
Justin Clark-Casey (justincc) 16c9c1dff7 On receiving TaskInventoryAccepted with a destination folder in the binary bucket slot for RLV, notify the viewer about inventory folder updates.
The viewer would not see the folder move without this, either on accept or decline.
This commit also updates the TaskInventoryOffered message to better conform with the data LL uses
Changes are, agentID is prim owner rather than prim id, agent name is now simply object name rather than name with owner detail,
message is just folder name in single quotes, message is not timestamped.
However, folder is not renamed "still #RLV/~<name>".  Long term solution is probably not to do these operations server-side.
Notes will be added to http://opensimulator.org/mantis/view.php?id=6311
2012-10-06 02:34:49 +01:00
Justin Clark-Casey (justincc) 7c7cdf3431 Read PacketPool config in LLUDPServer with other config params rather than in Scene.
This is to resolve previous build break.
This unnecessarily but harmlessly reads and sets the parameter multiple times - scene was doing the same thing.
2012-10-05 01:43:29 +01:00
Justin Clark-Casey (justincc) f0178a6a41 refactor: Move OpenSim.Framework.PacketPool to OpenSim.Region.Clientstack.Linden.UDP
This is to allow it to use OpenSim.Framework.Monitoring in the future.
This is also a better location since the packet pool is linden udp specific
2012-10-05 01:12:56 +01:00
Melanie 001ec0e2e6 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/CoreModules/Agent/AssetTransaction/AgentAssetsTransactions.cs
	OpenSim/Region/Framework/Scenes/Scene.cs
2012-09-27 17:29:44 +01:00
UbitUmarov 617f1b9223 just remove the damm thing 2012-09-26 16:17:49 +01:00
UbitUmarov 7e3eba1064 Seems nothing actually need the request body for getevents. so change
control flag to false
2012-09-26 15:41:57 +01:00
UbitUmarov 654dd289f2 more changes to PollService 2012-09-26 03:05:27 +01:00
UbitUmarov ef3d44240e missed change 2012-09-25 04:03:15 +01:00
UbitUmarov 4d681bfde6 do the same to webFecthInvDescModule 2012-09-25 03:59:19 +01:00
UbitUmarov 2cb17d6fbb change GetTextureModule processing 2012-09-25 03:38:45 +01:00
Melanie 421071bd8a Text changes for upload messages 2012-09-24 23:19:57 +02:00
UbitUmarov a1a0a90720 more upload changes (plus untouch prebuild.xml) 2012-09-24 22:57:33 +01:00
UbitUmarov ca67ee60ac add missing transactionID in SendInventoryItemCreateUpdate. and make use
of it on inventoryAccessModule, etc. Most likelly it's needs where there
 is a transactionID not zero
2012-09-24 21:22:08 +01:00
Melanie 68ece236a6 Protect the responses map with a lock. Also remove ugly "this." type of
member notation.
2012-09-23 23:55:28 +02:00
Melanie 291e57afb4 Merge branch 'ubitwork' into avination
Conflicts:
	OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/MeshCost.cs
2012-09-23 19:18:49 +02:00
UbitUmarov 64db9e4114 try to allow free uploads for testing, if users prefix names with "TEST-". Let
textures get into inventory again. Both features under config control.
Have direct warnings to client, including a final one on upload complete
since i see nothing. problems: textures don't showup in inventory til
relog, also issues with permitions. A few more changes
2012-09-23 15:04:10 +01:00
UbitUmarov 11e05217df report asset upload errors the right away 2012-09-22 21:14:15 +01:00
UbitUmarov 4bba72b7af removed AssetUploaderWithCost, fixing AssetUploader. add parsing of some
more needed fields in request
2012-09-22 16:47:15 +01:00
UbitUmarov 7de67d5680 removed unused data in MeshUploadFlag response 2012-09-22 12:00:14 +01:00
UbitUmarov f9c24c9414 read model upload cost parameters from config [Economy] section 2012-09-21 11:50:14 +01:00
Melanie 5d63c20122 refix prior commit 2012-09-20 15:41:16 +02:00
Melanie 9ff6c85325 Make uploads free for now - we will have to announce this 2012-09-20 15:39:46 +02:00
UbitUmarov bf987f96d2 Fix model upload rotations and offsets ( i hope ) 2012-09-20 14:32:30 +01:00
Melanie 629138d4fa Change texture price back to 10 C$ 2012-09-19 13:01:34 +02:00
UbitUmarov 5317b1053f be more tolerant to small prims, skipping them, only failing if they are
more than half of total. Add a state control to NewFileAgentInventory
 to avoid more than one at a time per client. ( Incomplete and possible not that good)
2012-09-19 03:53:51 +01:00
UbitUmarov fb32604b41 create a single ModelCost provider for the caps instance. Let it know and
check scene prim size limits.
2012-09-19 01:33:16 +01:00
UbitUmarov 51ca84afdf coment out mesh model upload code to add textures and individual meshs
assets to inventory, since it may actually be a bad ideia since good
 model textures are deply related to it and there is no current use for
 independent mesh assets. Added the option to have a reduced free for textures (2.5 C$ as is, total textures cost rounded to nearest int) compensating for the fact that they can't be used outside the model or its parts.
2012-09-19 00:29:16 +01:00
Melanie ac2380bbfa Add booleans to control whether we actually crete inventory items 2012-09-18 02:12:07 +02:00
UbitUmarov e8ba26eac8 ***TEST*** still bad... create inventory itens for model textures and meshs. Issues: meshs get into root folder, viewer and viewer does not update inventory until relog ( the upload funtion needs to return more information) ,etc. Droping a mesh into a prim, makes viewer think we dropped a sculpt map, but it does work, viewer displays the mesh and physics work (as physics is stored at the sculpt information fields). Textures show up in Textures folder, just its to costly to find that default folder as is.. 2012-09-18 01:07:44 +01:00
UbitUmarov fd20ef5c91 add some locks to GetTextureModule 2012-09-17 22:35:36 +01:00
UbitUmarov c1eec3b828 on upload store mesh list contents as mesh assets. Build prims by instances not
meshs. (some prims can have same mesh)
2012-09-17 21:15:07 +01:00
UbitUmarov c3666c9ec3 make sure client still has money at upload 2012-09-17 19:38:05 +01:00
UbitUmarov 7f5b1182ef same cleanup 2012-09-17 19:09:51 +01:00
UbitUmarov 1740325392 removed broken fee compression 2012-09-17 17:49:10 +01:00
UbitUmarov df77724bbc let mesh model estimator work even without money module, so other
estimations can work
2012-09-17 15:50:59 +01:00
UbitUmarov 5915dfc26f Make use of mesh cost functions 2012-09-17 15:37:05 +01:00
UbitUmarov 5bbc4fb2a5 missing file for suport of mesh upload cost 2012-09-17 13:39:38 +01:00
Melanie 66bf1376b5 Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Capabilities/Handlers/GetTexture/GetTextureHandler.cs
2012-09-16 04:21:18 +01:00
Melanie 387e59ff7f Revamp the HTTP textures handler to allow a maximum of four fetches
at any time and to drop requests for avatars n longer in the scene
2012-09-14 21:24:25 +02:00