angie: changes by commit
switch to grouped by file view, user index
branch to review (2009-11-10 to 2009-11-17) v220
- Added hashFindValUpperCase (based on hashLookupUpperCase).
- Force keys to uppercase for netUrlHead's hash, for case-insensitive lookup. Also, in udcInfoViaHttp, accept Date: as a poor substitute for missing Last-Modified:.
- src/inc/net.h 1.35 - lines changed: 2, context: html, text, full: html, text
- src/lib/net.c 1.76 - lines changed: 3, context: html, text, full: html, text
- src/lib/udc.c 1.25 - lines changed: 9, context: html, text, full: html, text
- src/utils/htmlCheck/htmlCheck.c 1.32 - lines changed: 1, context: html, text, full: html, text
- Added netUrlOpenSockets/netGetOpenFtpSockets, which can pass the FTP control socket back to the caller instead of forking for the sake of closing the control socket immediately. This prevents the accumulation of zombie (defunct) child processes forked from the udcFuse daemon, and saves a bit of overhead. netUrl byterange can now be open-ended (only the start offset is specified), which also supports persistent connections in udcFuse. Also did some refactoring (readability & error messages).
- Use net.c's new support for open-ended byterange and sockets that stay open, so that we can read successive data blocks from the same socket, instead of reconnecting to the remote server for each successive chunk. This dramatically improves the performance of udcFuse on block-compressed data. Refactored to reduce code duplication between ftp and http fetchData methods, and keep private struct & methods out of udc.h. Added checking of return value from fetchData; we were just writing a bunch of 0's to sparseData when fetchData returned fewer bytes than we asked for [error while debugging net.c], which resulted in corrupt sparseData file.
- Oops, last-minute bug that negated performace gain :).
- Refactored wigFetchMinMaxYWithCart. It is still quite complex because I kept the old behavior that tolerates missing data range specifications (although it does warn now). When hgTrackDb is enhanced to enforce data range specs, this can become a lot simpler -- but still not simple because we still allow the viewLimits setting (not defaultViewLimits) to push out the data range boundaries.
- src/hg/lib/wiggleCart.c 1.26 - lines changed: 297, context: html, text, full: html, text
- Added missing bedGraph data range settings (minLimit and maxLimit) based on commented-out type bigWig lines that specify range.
- src/hg/makeDb/trackDb/human/hg18/trackDb.wgEncode.ra 1.658 - lines changed: 90, context: html, text, full: html, text
- Added minLimit, maxLimit to bedGraph subtracks of wgEncodeGisPet from sql min & max queries on bedGraph tables missing those settings.
- src/hg/makeDb/trackDb/human/hg18/trackDb.wgEncode.ra 1.659 - lines changed: 67, context: html, text, full: html, text
- bamDrawAt: Skip zero-length blocks or blocks out of the viewing window.
- src/hg/hgTracks/bamTrack.c 1.15 - lines changed: 2, context: html, text, full: html, text
- bugfix: don't assume we have linkedFeatures in baseColorInitTrack because this is called for linkedFeaturesSeries too. Use tg->drawItems as a proxy for type (lf vs. lfs). Then the proper range is set and we can replace a slow hDnaFromSeq call with getCachedDna.
- src/hg/hgTracks/cds.c 1.104 - lines changed: 35, context: html, text, full: html, text
- src/hg/hgTracks/cds.h 1.23 - lines changed: 14, context: html, text, full: html, text
- src/hg/hgTracks/hgTracks.h 1.191 - lines changed: 6, context: html, text, full: html, text
- src/hg/hgTracks/simpleTracks.c 1.112 - lines changed: 1, context: html, text, full: html, text
switch to grouped by file view, user index