aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Framework/Communications/Cache/AssetCache.cs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Formatting cleanup.Jeff Ames2008-03-181-235/+230
|
* disabled AssetDownloadModule and re-enabled the asset download code in the ↵MW2008-02-271-17/+18
| | | | asset cache, until it can be seen if the module was the cause of some new problems that seem like they might be related to assets. I'll look into this more tomorrow.
* small fix in the showstate data in AssetCache to reflect that now some ↵MW2008-02-271-1/+1
| | | | functions are no longer in AssetCache
* After seeing sdague do his happy dance over trunk working "the best he has ↵MW2008-02-271-17/+18
| | | | | | | | ever seen". I'm not sure I should be doing this commit, but oh well. So anyway, it moves the Asset downloading (packet sending) to a module (AssetDownloadModule). So now at last, AssetCache should be just dealing with fetching assets from the asset server and caching them.
* another attempt at fixing asset lockupsMW2008-02-271-224/+247
|
* Hopefully fixed the bug that was causing a lot of the freezing. Which was ↵MW2008-02-271-33/+51
| | | | happening due to locks in the AssetCache and Texturedownload module. Where the thread from the Asset thread would be take a lock on a list in the asset cache and then try to call the Callback into the texturedownload module and hit a lock in there which was held by a ClientView thread- which at the same time would be trying to request another texture from the cache and be hitting the lock in there held by the IClientAPI. The result each thread waiting for the other one to release a lock. And as one of those was the ClientView process packet thread. No more packets from that client could be processed. For now I've made a copy of the list in AssetCache so that it can release the lock. I'm doing more work on assets (moving the client asset downloading to a module ), so will hopefully change this into a better method once I've cleaned over things up a bit.
* * Start sending "ImageNotFound" packet back to the client if we can't find ↵Justin Clarke Casey2008-02-251-24/+8
| | | | | | | | | | | | an image * This might stop some client's constant requests for unfound textures, which is a candidate for the memory leak * If a texture is not found then the "Image not found" texture will now be displayed clientside * If it works, this should resolve mantis 676 * Non texture image requests do not receive this packet yet * This will require a prebuild
* * Improve alignment of packet queue stats headignsJustin Clarke Casey2008-02-221-1/+1
| | | | | | | * Correct asset cache stats table heading * Correct spelling mistake in AssetCache (thanks ChrisD!)
* * Winnow the debug and info messages associated with stat fetchingJustin Clarke Casey2008-02-221-6/+17
| | | | | | | * As such, only a request for a non cached asset, the response and failures show up now. * I know lbsa71 only put these in not long ago, so if they are really still required, I think we should think whether we can move the default log4net level off 'Debug'
* "threads" command now works. I've added manual tracking of threads (only if ↵Tedd Hansen2008-02-211-0/+1
| | | | compiled in DEBUG mode)... Its ugly and even requires a separate thread to track the treads, but it will be very valuable in debugging.
* * Eliminate AssetCache.CopyAsset()Justin Clarke Casey2008-02-201-26/+4
| | | | | | | * Resolve a bad logic bug in AssetCache.GetAsset() * This may make some asset related things work better (possibly getting main map images will now be improved).
* * Only count download requests for assets which are not already waiting for ↵Justin Clarke Casey2008-02-201-5/+6
| | | | | | | | | data from the asset server * This should stop the constant increase in the download requests statistics * If you see stat numbers for download requests which are far from what you'd expect, please report
* * Properly guard removal of asset request lists on AssetCache.AssetNotFound ↵Justin Clarke Casey2008-02-201-9/+11
| | | | (my own bug)
* * Remove unused texture dictionaries from AssetCacheJustin Clarke Casey2008-02-201-48/+69
| | | | | | * Add documentation to AssetCache
* Report command string on ConsoleBase.RunCommand exceptionJustin Clarke Casey2008-02-201-2/+2
|
* * Report 'asset not found' situations back to UserTextureDownloadServiceJustin Clarke Casey2008-02-201-21/+49
| | | | | | | * This fixes some of the 'runaway downloads' problem but not all of it * Also fix up logging messages so texture requests are reported as such rather than as assets
* * re-enabled AssetNotFound codelbsa712008-02-201-15/+16
| | | | | | * turned script asset fetching asynchronous
* * Fixed xml loading bug (the xml was scheduled for update before added to a ↵lbsa712008-02-201-70/+101
| | | | | | | | scene) * Fixed ClickAction situation on the same note (properties shouldn't cause big changes) * Added some more debug output to AssetCache
* Playing "Name that thread". Adding names and isbackground=true to all ↵Tedd Hansen2008-02-191-0/+1
| | | | threads so it will be easier to debug.
* Clean up more unnecessary String.Format callsJeff Ames2008-02-131-3/+1
|
* Clean up logging calls using String.Format explicitlyJeff Ames2008-02-101-3/+3
|
* * fixed typo. thanks, nebadon!lbsa712008-02-091-1/+1
|
* * Refactored some asset code and in the process uncovered a bug; now, I ↵lbsa712008-02-091-10/+14
| | | | think first transfer of asset should start faster.
* * added count of texture data bytes and asset byteslbsa712008-02-091-6/+18
|
* * Added count of temporary assetslbsa712008-02-091-0/+23
|
* * added two new commands (for debug/disaster recovery)lbsa712008-02-091-25/+55
| | | | | | | | 'show assets' shows the current state of the asset cache (number of cached assets, requests, et c) 'clear-assets' forcibly re-initializes the asset cache thereby freeing all cached items. 'clear-assets' is not to be used lightly, as it probably introduces mem inconsistencies and doubling up of textures.
* fix the issue found on IRC this morning. The logging call was mistructuredSean Dague2008-02-081-1/+2
| | | | | | | so threw and exception when attempting to log that we missed an asset and were waiting for it.
* Converted logging to use log4net.Jeff Ames2008-02-051-11/+10
| | | | | | Changed LogBase to ConsoleBase, which handles console I/O. This is mostly an in-place conversion, so lots of refactoring can still be done.
* * Lowered maxchunk from 1500 bytes to 1250 bytes to make sure packets fit ↵Adam Frisby2008-02-041-1/+1
| | | | below the average maximum MTU of 1500 bytes inc. header. Thanks Alex for reporting this.
* * Add asset/texture cache statistics to region server consoleJustin Clarke Casey2008-01-311-3/+21
| | | | | | | | | | | | | | | * You can type 'stats' at the REGION# prompt to get this information in grid or standalone mode * Don't take these numbers as gospel yet, since for some reason textures displayed from inventory which require downloading from the server are being recorded as assets rather than textures * But I don't have any reason to believe they aren't broadly accurate. * I've put these in so I can tell whether the high memory usage on regions is down to the asset/texture cache * This will require a prebuild * DEV: Only adds needed to be implemented since, as far as I can tell, assets cached are currently never released. For my part, seeing large cache memory numbers will provoke me to think about doing something about this. * DEV: Now switched to using a singleton to get the stats reporters rather than threading the object through various layers * DEV: Will refactor the other server stats reporters to do this in one of the next commits
* * Mother of all commits:Adam Frisby2008-01-151-1/+1
| | | | | | | * Cleaned up copyright notices in AssemblyInfo.cs's * Added Copyright headers to a bunch of files missing them * Replaced several common string instances with a static constant to prevent reallocation of the same strings thousands of times. "" -> String.Empty is the first such candidate.
* Whitespace cleanup.Jeff Ames2008-01-101-1/+1
|
* * Trying to address TextureSender issueslbsa712008-01-021-3/+3
| | | | | | * The BlockingQueue exposes Contains so we can make sure we don't add a TextureSender to the queue if there's already one present * introduced some TryGetValue and various code convention stuff
* * Optimized usingslbsa712007-12-271-25/+24
| | | | | | | * shortened references * Removed redundant 'this' * Normalized EOF
* Make copying of scripts into prim inventories more reliable on the first ↵Justin Clarke Casey2007-12-221-3/+45
| | | | | | | | | | attempt when the asset server is lagging by formalising the de facto polling. This may not be the best solution in the long run, but should improve things for now. This may also improve reliability when updating inventory item metadata (e.g. renaming an item) and in retrieving textures for the main map view.
* minor refactorJustin Clarke Casey2007-12-221-3/+8
|
* Misc. cleanup:Jeff Ames2007-12-191-46/+14
| | | | | | | * added Util.Clip(value, min, max) * modified asset cache's numPackets calculation to use max packet size (600) instead of 1000 * removed a few magic numbers
* Thank you Justin for:Charles Krinke2007-12-141-52/+27
| | | | | 0000188: Clean up of some AssetCache.ProcessAssetQueue() code
* patch from justincc for Mantis #163 - Opening a script in inventory longer ↵Teravus Ovares2007-12-141-11/+36
| | | | than 1500characters can cause looping crash.
* more work on texture downloading.MW2007-12-101-265/+38
| | | | | | | Refractored the TextureDownloadModule (but currently to make debugging easier, it is running as a non shared module, so this results in a instance of this module being created for each region (and a extra thread per region), this will be changed back soon. Removed the old texture handling/sending code from AssetCache. A few other small changes/fixes.
* saved OpenSim source code from the giant rampaging unterminated copyright ↵Jeff Ames2007-12-101-2/+2
| | | | notice of doom
* reversing the r2599 patch, as this started causing CreateThread errors for Sean Dague2007-12-061-6/+1
| | | | | | | | | me on Mono 1.2.4, which led to client crashes. I think the Timer.Stop() wasn't doing what was desired on Mono. The Queue refactoring should address the readability issues lbsa71 was working on as soon as I get the merge together.
* * now the throttle timer is stopped whilst processing Queue so that it won't ↵lbsa712007-12-061-1/+6
| | | | | | | | fire twice * started to refactored throttling method * some code convention refactorings
* * Refactored NumPackets calculationlbsa712007-11-231-20/+21
|
* * Refactored IClientAPI.OutPacket to require a second mandatory parameter. ↵Teravus Ovares2007-11-181-8/+8
| | | | This parameter has an enum:int ThrottleOutPacketType and contains types; Resend, Land, Wind, Cloud, Task, Texture, and Asset.
* first stab at implementation of CopyInventoryItemJeff Ames2007-11-181-0/+11
|
* Fixed bug in assetcache where certain textures were not being packetized ↵Brian McBee2007-11-111-1/+1
| | | | correctly
* * Added better logging to AssetCachelbsa712007-11-061-42/+66
| | | | | | | * AssetCache now ignores duplicate uploads * some m_ refactoring * ignored some bins
* * Diuerse beavtificatemslbsa712007-11-011-2/+2
|
* renamed FetchAsset to RequestAsset on IAssetServer, as think its a more ↵MW2007-11-011-4/+4
| | | | fitting name. As the call shouldn't actually return the data, but just add a request for the data to be sent back via the callback.