Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
In addition to its usual apr_sterror() function, APR defines a special
function specifically for errors relating to the apr_dso_*() functions.
Introduce ll_apr_warn_status() and ll_apr_assert_status() overloads accepting
apr_dso_handle_t* to call apr_dso_error() as well as apr_strerror() and log
its output. Use new ll_apr_warn_status() in LLAppViewer::loadEventHostModule()
for apr_dso_load() and apr_dso_sym() calls. Instead of shorthand
ll_apr_assert_status(), use with llassert_always() so check is still performed
even in Release build.
Add more lleventhost-related debugging output, e.g. full pathname of the DLL.
On Mac and Linux, call 'file' command to report nature of the DLL too.
|
|
First, introduced a compact payload format that allows blocks of
metrics to be dropped from the viewer->collector payload compressing
1200 bytes of LLSD into about 300, give-or-take. Then converted
to using LLSD arrays in the payload to enumerate the regions
encountered. This simplifies much data handling from the viewer
all the way into the final formatter of the metrics on the grid.
|
|
reviewed by Mani.
|
|
representation transferring ownership, doing data aggregation
in a very pedantic way. That's just adding unneeded cost and
complication. Used the same objects to transport data as are
collecting it and everything got simpler, faster, easier to
read with fewer gotchas. Bit myself *again* doing the min/max/mean
merges but the unittests where there to pick me up again. Added
a per-region FPS metric while I was at it. This is much asked
for and there was a convenient place to sample the value.
|
|
|
|
Wanted to avoid computing metrics for duplicate requests as much as
possible, they artificially depress averages but missed an opportunity
and was including them in the counts. The non-texture case is solid.
Textures are.... confounding still. Do a better job of trying to send
one last packet to the grid when quitting. It is succeeding now, at
least sometimes. Put a comment in base llassetstorage.cpp pointing
to cut-n-paste derivation in llviewerassetstorage.cpp so that changes
can be replicated. Hate doing this but current design forces it.
|
|
|
|
|
|
whether to install automatically as well as download automatically (not actually implemented yet).
|
|
|
|
--fullscreen
disabled fullscreen mode for merge to viewer-development
|
|
|
|
CHOP-261 (add handlers for update ready notification buttons)
reviewed by mani.
|
|
|
|
|
|
|
|
|
|
Rev. by Brad
|
|
|
|
|
|
http://hg.secondlife.com/viewer-beta/changeset/4072bd5389b2 Reviewed by Brad
|
|
|
|
In the viewer, the region's UUID is acquired very late and isn't generally
used as the canonical region identifier. The U64 region hash is a better
and more consistently used identifier so I'm moving over to using that as
the region key. Don't have a proper reserved invalid region hash which is
unfortunate, but then, so much is.
|
|
Using unpause() method in derived class rather than wake() in furthest base class
solved the stalling problem. I still think too many levels of the
LLTextureFetch hierarchy are keeping thread state, however. The
LLViewerRegion instance an agent enters doesn't necessarily have its
region_id yet, that only comes after the handshake, if any. So add
a few more metrics insertion points to propagate region into metrics.
Finally, try to launch a final metrics report when a quit is initiated.
|
|
Get the metrics message generation working in QAModeMetrics mode.
Sample interval and data aren't correct yet but getting there.
|
|
After discussions, renamed 'QAModeMetricsSubmetrics' to 'QAModeMetrics'
and confirmed that LLCachedControl<> is the way to go. Moved the
resulting flag out of LLViewerAssetStats (where it didn't belong)
and it lives in both LLAppViewer and LLTextureFetch where it does
belong.
|
|
Detect QAMode (and new QAModeMetricsSubmode) settings which
enable logging of metrics report locally and a faster cycle
time to reduce test waiting. Do this only in the main thread
and propagate the result via collector constructors (will
likely move that out and put it in llappviewer/lltexturefetch
which is more correct scope). Managed to deadlock myself with
a recursive mutex (sheesh).
|
|
Code complete with the intelligence to merge counts, mins,
maxes and means with reasonable defences. Added QAMode
controls to the viewer so that we can QA this more quickly
by reducing the timing interval and sending the metrics
body to local logging as well as to the caps service.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Reviewed by mani.
|
|
Asset fetch requests wrapped to allow for measurements.
Asset fetch enqueues, dequeues and completion times recorded
to asset stats collector. Texture fetch operations (http
and udp) recorded to asset stats collector. Stats collector
time vallue switched from F32 to U64 which is the more common
type in the viewer. Cross-thread mechanism introduced to
communicate region changes and generate global statistics
messages. Facility to deliver metrics via Capabilities
sketched in but needs additional work. Documentation and
diagrams added.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
globals and magic strings, enforce naming conventions
|
|
|