-----------------------------------------------------------
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

Reply via email to