----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: http://codereview.secondlife.com/r/152/ -----------------------------------------------------------
(Updated June 13, 2011, 2:39 p.m.) Review request for Viewer. Changes ------- - Fixed typo in comment ("intermediary"). - Changed file-scope constants to static const. - At Oz's suggestion (in email), delays are now exponential. Oz suggested leaving this to hammer the server indefinitely, but I feel more comfortable with a limit of 7 attempts. The first attempt is immediate, and 6 retries are done with delays: 2s, 4s, ... 64s. The delays sum up to 126 seconds. Summary ------- When a bake upload fails, the viewer doesn't retry it, and subsequently doesn't send a AgentSetAppearance message. This can happen without the user being aware, leaving the avatar looking good on their screen, but not updated to the same outfit on other people's screens. The avatar will remain in that state until the user does something that causes a rebake (manually rebake or change outfit.) The solution here is to retry the upload after a small delay. What this diff changes: when a full-res upload fails, retry to upload it after a 5s delay, up to 5 times (in case the cap is available, last attempt is via the old asset store.) Also, some clearer log messages. This implements an old *FIX: comment: // *FIX: retry upload after n seconds, asset server could be busy This isn't needed for low res uploads, because they don't block subsequent full-res uploads (mNeedsUpload isn't set to FALSE in LLTexLayerSetBuffer::doUpload in low-res uploads.) This addresses bug VWR-24889. http://jira.secondlife.com/browse/VWR-24889 Diffs (updated) ----- indra/newview/llassetuploadresponders.h df4801993ea4 indra/newview/llassetuploadresponders.cpp df4801993ea4 indra/newview/lltexlayer.h df4801993ea4 indra/newview/lltexlayer.cpp df4801993ea4 Diff: http://codereview.secondlife.com/r/152/diff Testing ------- Attempted outfit changes using a problematic connection (not recently used outfits to avoid using cached bakes). Looked for "Baked full res texture upload for <region name> failed" log messages, observed the subsequent retries and successful upload for that region. Observed that eventually the fully-baked avatar is visible to other users. Thanks, Thickbrick
_______________________________________________ Policies and (un)subscribe information available here: http://wiki.secondlife.com/wiki/OpenSource-Dev Please read the policies before posting to keep unmoderated posting privileges