On Tue, Feb 02, 2010 at 03:57:58PM +0000, Robert Osfield wrote:
> On Tue, Feb 2, 2010 at 3:30 PM, David Fries <[email protected]> wrote:
> > I was just guessing that they are repeated requests, otherwise they
> > would not keep increasing at a steady rate. ?I am using the Trackball
> > camera manipulator camera and give the earth.ive a nice fling, so it
> > is repeadily going over the same tiles and not all. ?The earth.ive
> > only has 12,450 files and there can be many more requests than that in
> > the request queue.
> 
> Very strange, it does indicate that something is going amiss.  When I
> fling the earth.ive model I can get to a thousand or so requests but
> not beyond this.  Even this number of requests seems very high, the
> usage is odd of course, throwing a whole earth model to spin at tens
> of hrz is not something you can do in any normal type of human
> vehicle...

nice -n 20 taskset -p 1 osgviewer /opt/src/OSG_CACHE/earth_bayarea/earth.ive 
--file-cache /opt/src/OSG_CACHE/earth_bayarea/

I originally found the problem when I was trying to cache the
earth.ive locally.  I gave it a fling and assumed when I came back it
would have all the tiles in that ground track, only it was crawling
because of this.  I'm more worried about blocking the drawing thread
from making new requests while the DatabasePager does the sort of the
vector.

> W.r.t the race condition's, how are you seeing it reveal itself?  I
> got a crash earlier about attempting to delete a osg::Referenced
> object while it's ref count was 1, which suggest to be a problem
> lurking somewhere.  The crash only happened in one of dozens of runs I
> did so it's unfortunately one of those threading crashes where the
> locating it and knowing 100% it's fixed is rather illusive.

With my changes the multiset needs to remove the request, update the
sort variables, and insert it again.  I had an assert in there to test
if the request was found in the queue it locked the mutex for and was
failing to find the request in the queue.  This race condition happens
more frequently when there are few requests in the queue.

-- 
David Fries <[email protected]>
http://fries.net/~david/ (PGP encryption key available)
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to