aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Capabilities/Handlers (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-09-26 don't send a partial contents report if we are sending all dataUbitUmarov1-10/+15
2012-09-26 fix GetTextureHandler rangeUbitUmarov1-1/+5
2012-09-14Revamp the HTTP textures handler to allow a maximum of four fetchesMelanie3-97/+80
at any time and to drop requests for avatars n longer in the scene
2012-09-06If the GetTexture capability receives a request for a range of data beyond ↵Justin Clark-Casey (justincc)1-5/+29
that of an otherwise valid asset, return HTTP PartialContent rather than RequestedRangeNotSatisfiable. This is because recent viewers (3.2.1, 3.3.4) and probably earlier ones using the http GetTexture capability will sometimes make such invalid range requests. This appears to happen if the viewer's estimate of texture sizes at discard levels > 0 (chiefly 2) exceeds the total texture size. I believe this does not normally happen but can occur for dynamic textures with are large but mainly blank. If this happens, returning a RequestedRangeNotSatisfiable will cause the viewer to not render the texture at the final resolution. However, returning a PartialContent (or OK) even with 0 data will allow the viewer to render the final texture.
2012-07-06Changed GetTexture error code RequestedRangeNotSatisfiable to NotFound, ↵UbitUmarov1-1/+3
since viewers don't seem to handle that and keep retrying
2012-06-29If a link points to a non-existing item in FetchInventory caps, then don't ↵Justin Clark-Casey (justincc)1-1/+2
try to add it to the return data rather than suffering an exception later on
2012-06-20As with LLSDInventoryItem from commit 01a2b0b, send type values in ↵Justin Clark-Casey (justincc)1-6/+2
LLSDInventoryFolder for inventory CAPs as integers rather than strings. Should also resolve some issues with exceptions being thrown in some inventory fetches.
2012-06-13Don't include time to transmit response back to requester when assessing ↵Justin Clark-Casey (justincc)1-2/+0
slow handling of requests. This is to avoid logging a 'slow' request when the source of delay is the viewer in processing a response. This is not something we can do much about on the server end - it's server-side delay that we're interested in. To ensure consistency, this commit also had to refactor and simplify inbound non-poll network request handling, though there should be no functional change. IOSHttpResponse no longer exposes the Send() method, only classes in OpenSim.Framework.Servers.HttpServer should be doing this. Only the GetTextureHandler was sending its own response. Now it leaves this to BaseHttpServer, like all other core handlers.
2012-06-02Fix build break whree accidentally did inv.Folders rather than ↵Justin Clark-Casey (justincc)1-1/+1
inv.Folders.Count in a minor change.
2012-06-02minor: tidy up some commentsJustin Clark-Casey (justincc)1-4/+2
2012-06-02Fix various issues with http inventoryJustin Clark-Casey (justincc)2-74/+81
1) The return messages were being wrongly populated with the names of asset, inventory and sale types when their corresponding integers should have been used instead. 2) Folders with links were including the linked items in the descendents figure, when only the links should be included. 3) Links and linked items in link folders were not being included in the return data, and not in the correct order. Now that these issues have been addressed, outfits and attachments appear to work consistently when HTTP inventory is enabled (as is now the default).
2012-05-03Implement optional name and description on http stream handlers so that we ↵Justin Clark-Casey (justincc)7-17/+25
can relate a slow request to what the handler actually does and the agent it serves, if applicable. This is most useful for capabilities where the url is not self-describing.
2012-04-27Add regression test for teleporting an agent between separated regions on ↵Justin Clark-Casey (justincc)1-1/+1
the same simulator. This involves a large amount of change in test scene setup code to allow test scenes to share shared modules SetupScene is now an instance method that requires an instantiation of SceneHelpers, though other SceneHelpers methods are still static May split these out into separate classes in the future.
2012-04-06Guard against null inventory contents.Diva Canto1-2/+2
2012-01-06Implement the FetchInventory2 capability. This accompanies the existing ↵Justin Clark-Casey (justincc)3-1/+219
FetchInventoryDescendents2 capability. Not yet enabled by default. You can enable this by setting Cap_FetchInventory2 = "localhost" in the [ClientStack.LindenCaps] section of OpenSim.ini Enabling both FetchInventory2 and FetchInventoryDescendents2 improves the situation with properly fetching attachments and hud objects Probably because viewers are never expecting the odd situation where FetchInventoryDescendents2 is present but not FetchInventory2 However, for some reason attachments and hud objects occasionally fail to appear, though their status is correct in inventory For attachments, focussing on the avatar makes them appear. Hud objects have to be reattached.
2012-01-02Adding commented out log messages and some minor formatting for future bug ↵Justin Clark-Casey (justincc)1-71/+77
hunting. No functional changes.
2011-12-19Migrate detailed "appearance show" report generation up to ↵Justin Clark-Casey (justincc)1-2/+2
AvatarFactoryModule from AppearanceInfoModule so that it can be used in debug (inactive). Further filters "debug packet <level>" to exclused [Request]ObjectPropertiesFamily if level is below 25. Adjust some method doc Minor changes to some logging messages.
2011-12-09Add commented log lines to FetchInventoryDescendents2 path for future use.Justin Clark-Casey (justincc)2-4/+93
Haven't been able to resolve issue where attachments are removed by the viewer on relog on a localhost
2011-12-08Revert "Revert "Stop performing the asset save part of baked texture ↵Justin Clark-Casey (justincc)1-5/+9
uploading on the UploadBakedTexture cap asynchronously."" This turned out not to be the upload texture issue. This reverts commit 8721841fc3944ce0cdf5ce76297e73f9ed269751.
2011-12-06Stop accidentally setting up the UploadTexture caps handler with the same ↵Justin Clark-Casey (justincc)1-2/+0
url for all users This meant that if a user exited the region, the UploadTexture handler would be effectively removed for everyone, causing subsequent failures. This hopefully resolves the recent UploadTexture LLSD problems This was a regression in 5640f2e (Thu Dec 1 23:24:15 2011 +0000)
2011-12-06Revert "Stop performing the asset save part of baked texture uploading on ↵Justin Clark-Casey (justincc)1-9/+5
the UploadBakedTexture cap asynchronously." This is a possible cause of the dramatic upswing in "Unable to upload... No handler registered for LLSD requests..." Needs more investigation. This reverts commit 1854c52ea3c60d0a47f9793a7f5ec405e15489ca.
2011-12-05Add test for not found response from GetTexture cap handler.Justin Clark-Casey (justincc)1-0/+63
Add OpenSim.Region.Capabilities.Handlers.Tests.dll into test suite
2011-12-05Implement IOSHttpRequest and IOSHttpResponse http interfaces and use instead ↵Justin Clark-Casey (justincc)3-5/+5
of OSHttpRequest/OSHttpResponse. This is required for the substitution of different HTTP servers or the newer HttpServer.dll without having to commit to a particular implementation. This is also required to write regression tests that involve the HTTP layer. If you need to recompile, all you need to do is replace OSHttpRequest/OSHttpResponse references with IOSHttpRequest/IOSHttpResponse.
2011-12-05For the GetTexture capability, if a data range is requested that covers the ↵Justin Clark-Casey (justincc)1-14/+25
whole asset length, return HTTP PartialContent instead of NotFound NotFound is obviously wrong, and this change stops viewer 3.2.2 (and v probably earlier) complaining in the log about missing textures that are actually present. We still return PartialContent even if the range requested is a superset of the data range as per httpd's behaviour https://issues.apache.org/bugzilla/show_bug.cgi?id=51878 Viewer 3.2.2 and very probably earlier appear happy with this. Whether fixing this NotFound bug has any practical effect apart from resolve viewer log messages is unknown.
2011-12-01Stop performing the asset save part of baked texture uploading on the ↵Justin Clark-Casey (justincc)1-5/+9
UploadBakedTexture cap asynchronously. This prevents a possible race condition where the client would be told all baked textures had updated before they were in the asset service. The client would then trigger a set appearance which, after a delay, would send the avatar appearance out to other clients. The race condition seems unlikely because of this delay but it's still possible. Might help with grey avatar appearances.
2011-12-01refactor: Separate the upload baked texture handler out from BunchOfCapsJustin Clark-Casey (justincc)2-3/+180
2011-11-26Rip out unused Scene.HandleFetchInventoryDescendentsCAPS().Justin Clark-Casey (justincc)1-0/+13
This has been handled by WebFetchInvDescHandler.Fetch() for some time.
2011-11-26Stop locking the requests coming in to WebFetchInvDecHandler.Justin Clark-Casey (justincc)1-8/+8
There's no technical reason for this as the methods are thread safe. However, it might have served to slow down requests.
2011-11-25Resolve error where an unknown asset type would cause the fetch inventory ↵Justin Clark-Casey (justincc)1-40/+43
descendents cap to fail. Introduced just a few commits ago in 0688861
2011-11-25Implement the FetchInventoryDescendents2 capability using the same code as ↵Justin Clark-Casey (justincc)1-1/+1
WebFetchInventoryDescendents. Enabling this by setting Cap_FetchInventoryDescendents2 = "localhost" in the [ClientStack.LindenCaps] section of OpenSim.ini downloads inventory via http rather than udp in later viewers.
2011-11-25Use the more extensive Utils.AssetTypeToString()/InventoryTypeToString() ↵Justin Clark-Casey (justincc)1-2/+3
conversion rather than the arrays in TaskInventoryItem
2011-11-25Fix WebFetchInventoryDescendents cap to use ↵Justin Clark-Casey (justincc)1-8/+15
Utils.AssetTypeTostring/InventoryTypeToString to convert types to strings These cover a wider range of types.
2011-09-09Save the default terrain texture UUIDs for a new region instead of leaving ↵Justin Clark-Casey (justincc)1-3/+2
them as UUID.Zero. Leaving them at UUID.Zero meant that when a viewer 2 logged into a region that had been freshly created, it received UUID.Zero for these textures, and hence display the land as plain white. On a simulator restart, the problem would go away since when the database adapators loaded the new region settings, RegionSettings itself has code to use default textures instead of UUID.Zero. This commit resolves the problem by saving the default texture UUIDs instead of Zero. However, we currently have to do this in a roundabout way by resaving once the RegionSettings have been created by the database for the first time. This needless complexity should be addressed. This change will also have the effect of replacing any existing UUID.Zero terrain textures with the default ones. However, this shouldn't have any effect since the UUID.Zeros were already being replaced in memory with those same UUIDs.
2011-08-18Don't need to try both AssetService.Get and GetCached in GetMesh since Get ↵Justin Clark-Casey (justincc)1-36/+9
always calls GetCached and code paths were identical
2011-05-08Comment verbose debug message in GetTextureDiva Canto1-1/+1
2011-05-05Squish a warningMelanie1-1/+0
2011-05-02Fix the GetTexture path to /CAPS/GetTexture for now until we have real ↵Diva Canto1-1/+1
capabilities.
2011-05-02WebFetchInventoryDescendents working. Tested with robust.Diva Canto2-0/+375
2011-05-02Refactored the GetMesh module into a handler and a module, to be the same as ↵Diva Canto4-0/+222
GetTexture.
2011-05-02Works!Diva Canto2-9/+6
2011-05-01Added OpenSim.Capabilities.Handlers. For the moment it has only the ↵Diva Canto2-0/+429
GetTexture handler. The region module in Linden space uses it. WARNING: nothing of this works yet, it just compiles.