summaryrefslogtreecommitdiff
path: root/indra/newview/lltexturefetch.cpp
AgeCommit message (Collapse)Author
2016-03-17MergeRider Linden
2016-03-03MAINT-2199 reverted previous change, refixed missing cloud and ban lineandreykproductengine
2016-02-27MAINT-2199 restored original UI mechanics, removed icons from UI listandreykproductengine
2016-02-18MAINT-2199 In some rare cases priorities can change, it shouldn't affect ↵andreykproductengine
texture list.
2016-02-16MAINT-2199 separating UI elements from in-world textures.andreykproductengine
2016-01-15Merge VRRider Linden
2015-10-21MAINT-4360 FIXED (Setting LogTextureDownloadsToSimulator causes a viewer crash)ruslantproductengine
The fix in fllowing: LLTextureFetch has object LLTextureInfo which is has Recorder object. The recorder object activate (Recorder::handleStart()) self AccumulatorBufferGroup (Recorder::mBuffers into the current (LLTrace::get_thread_recorder()) ThreadRecorder object which created (as I understand) one per thread, and time to time send accumulated data to the master ThreadRecorder. The problem is that LLTextureFetch also can uses from the main thread. I decide add parameter to CTOR LLTextureInfo(bool postponeStartRecoreder) - if it false the recorder start immediatly in LLTextureInfo CTOR body, if true we need to start it manually. Also I add another one LLTextureInfo in LLTextureFetch::mTextureInfoMainThread which is intended for accumulate data from the main thread. The postponed Recorder started/stoped from LLTextureFetch::startThread()/endThread().
2015-10-15MAINT-5732: Issue in texture_load example and some comments regarding ↵Rider Linden
NoOpDeletor
2015-10-15MAINT-5732: Fixes for Mac buildrider
2015-10-14MAINT-5732: Change to the way event polling handles error conditions and ↵Rider Linden
cancel calls. Refactor any remaining LLCore::HTTPHandlers to use boost::shared_ptr Started minor refactor in the materials manager into coroutines (unfinished)
2015-08-24MAINT-4952: Removed a bit of debug code that got included accidentally and ↵Rider Linden
change host == LLHost() to host.isInvalid()
2015-08-18MAINT-5506: Fix ugly timing bug in llurlentry static initialization.Nat Goodspeed
The problem was that class-static LLUrlEntryParcel::sRegionHost was being initialized by copying class-static LLHost::invalid. Naturally, these two statics are initialized in different source files. Since C++ makes no promises about the relative order in which objects in different object files are initialized, it seems we hit a case in which we were trying to initialize sRegionHost by copying a completely uninitialized LLHost::invalid. In general we might attempt to address such cross-translation-unit issues by introducing an LLSingleton. But in this particular case, the punch line is that LLHost::invalid is explicitly constructed identically to a default-constructed LLHost! In other words, LLHost::invalid provides nothing we couldn't get from LLHost(). All it gives us is an opportunity for glitches such as the above. Remove LLHost::invalid and all references, replacing with LLHost().
2015-07-08Change HttpOptions::ptr_t to be shared_ptr<> rather than intrusive.Rider Linden
2015-07-08Convert LLCore::HttpHeaders to use shared_ptr<> rather than an ↵Rider Linden
intrusive_ptr<> for refrence counting.
2015-06-03Remove vestigial httpclient.h include from files that no longer need it.Rider Linden
2014-11-14Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseNat Goodspeed
2014-10-20Update to build on Xcode 6.0: Large (and final) collection of fixes for ↵callum_linden
unused variables, unused const-variables, unused member variables & functions etc. Also removed flags from CMake
2014-09-19Cleanup work. Use http constants for content-type andMonty Brandenberg
accept headers in mesh and textures. For texture metrics reporting, use the AP_INVENTORY policy class which is non-pipelined and pointing (usually) in the right direction. Use a do-while(false) structure to manage common exit path code in onCompleted() methods. Identical to a 'goto' but might amuse the pedantic. Tuning on background fetch to have it cycle faster. This is experimental. I suspect with HTTP balancing in llcorehttp, we can do away with the timers here.
2014-09-09Cleanup pass. Documentation. Get older llcorehttp-usingMonty Brandenberg
code to use utils for any LLSD interfaces.
2014-09-08Merge. Update from viewer-release after 3.7.15 release.Monty Brandenberg
2014-08-18merge changes for 3.7.14-releaseOz Linden
2014-08-12Better support for dynamic option changes in llcorehttp. Libcurl hasMonty Brandenberg
some problems disabling pipelining on a multi handle with outstanding requests so build a more conservative system that allows requests to drain before setting curl multi options. Would rather not have this but it is significantly safer. "HttpPipelining" debug setting is now fully dynamic. Connection limits can also be made dynamic in the near future. Upped the default connection count back to 8 for now but will revisit this in the tuning phase. It might be time to combine mesh and textures into a single asset class. For normal server operations that would be a clear path, but for server under load, the current scheme may be better. Minor cleanup in logging to elminate some redundant strings. Might add some more tracing to the stall logic 'just in case'.
2014-08-11Add 'HttpRangeRequestsDisable' debug setting to inhibit use of 'Range:' header.Monty Brandenberg
Intended for users with bad networking gear or twitchy ISPs, if set to True, forces plain GET requests to asset servers for textures and meshes. This change kicked off a slight refactor in the mesh repository code which made it resilient against unexpected 200's and responses not covering the requested start range. There's still too much data copying in the Mesh code (always has been). Would love to fix that and get rid of the monolithic temp buffer. Cleaned up white space damage caused by unnamed linden who likes to drag his magical editor through code.
2014-08-04Merge. Refresh from viewer-library-refresh after 3.7.13 release.Monty Brandenberg
2014-08-04add some debug loggingOz Linden
2014-08-01Pulled in fix for maint-4184 blurry texturesAura Linden
2014-07-23Improved commentsAura Linden
2014-07-22Appears to fix MAINT-4184Aura Linden
2014-06-27Cleanup and tuning. Use a consistent index on some initializationMonty Brandenberg
data so their isn't an opportunity for gaps over overruns (init_data). Start some preliminary tweaking of policy class numbers. It looks like I can easily drop the default connection count to '4' and still hit the throttles. Did some experiments running pipeline deeper which was mostly fine for textures but tended to slow meshes. Reason uncertain but a depth of '5' seems generally healthy for mesh. I had one run of 52.6S with a theoretical minimum of 51.2S. That's as good as I've ever seen.
2014-06-23Automated merge with ssh://bitbucket.org/monty_linden/viewer-library-refreshMonty Brandenberg
2014-06-23Automated merge with ssh://bitbucket.org/lindenlab/viewer-releaseMonty Brandenberg
2014-06-23First HTTP pipelining viewer. Enable pipelining forMonty Brandenberg
GetTexture and GetMesh2 at a pipeline depth of 5. Create global debug option, HttpPipelining, to enable and disable HTTP pipelining (defaults to true). Tweak texture and mesh low- and high-water request levels based on pipelining status and depth. Fixup texture console which was damaged in a recent release. Split logging of the no-request HTTP error case into two cases: one for missing URL in HTTP request, one for HTTP request not created. A refactor in llcorehttp is coming: I will be moving all libcurl- using code into libcurl-specific modules.
2014-06-17Retropedaling on SH-4030 fix that crashes my viewer on logginMerov Linden
2014-06-17Post-merge cleanup. In onCompleted() restore the unconditionalMonty Brandenberg
use of setGetStatus() in case the baked texture service changes introduced some sort of hidden (and wrong) dependency. Left out the ridiculous duplicated invocation inside that failure status block. Someone damaged texture console again and apparently didn't even bother to look at their work. I'm sure they documented their changes on the public wiki as well. Unified the logging tag throughout lltexturefetch.cpp. Only way to get the cut-n- pasters to do the right thing.
2014-06-16Merge. Refresh from viewer-release after 3.7.9 release.Monty Brandenberg
2014-06-06BUG-3323/SH-4375 Server side baking not baking AVs over cellular network.Monty Brandenberg
This is a workaround that the TPVs have been exercising for quite a few months and it does seem to fix the OPs problem. The solution is based on magic numbers and has no technical basis, it's just an artifact of particular networking gear and/or ISPs.
2014-05-14v-r -> s-e merge WIPBrad Payne (Vir Linden)
2014-05-13sunshine-external merge WIPBrad Payne (Vir Linden)
2014-02-25merge viewer-release to sunshine-externalBrad Payne (Vir Linden)
2014-02-24merge with releaseRichard Linden
2013-12-17merge fixBrad Payne (Vir Linden)
2013-12-05SH-4611 WIP - this should prevent the case logged, which I believe is caused ↵Brad Payne (Vir Linden)
when cache loading fails. Can not repro so somewhat speculative.
2013-12-05mergeBrad Payne (Vir Linden)
2013-11-20SH-4611 WIPBrad Payne (Vir Linden)
2013-11-12Merge. Refresh from viewer-release after 3.6.10 releaseMonty Brandenberg
2013-11-12SH-4030 FIXBrad Payne (Vir Linden)
2013-11-11Automated merge with http://bitbucket.org/lindenlab/viewer-releaseRichard Linden
2013-11-07fix for SH-3959: Make sure baked textures cache and load from cache correctly.Xiaohong Bao
2013-09-11SH-4490 More 'humane' error code presentation from llcorehttp callersMonty Brandenberg
Added toTerseString() conversion on HttpStatus to generate a string that's more descriptive than the hex value of the HttpStatus value but still forms a short, searchable token (e.g. "Http_503" or "Core_7"). Using this throughout the viewer now, no live cases of toHex(), I believe.
2013-08-26Merge. Pull in viewer-release after SSA merge.Monty Brandenberg