6c19a52350eb826034160d10f751358437bedd93 angie Wed Aug 2 12:04:54 2017 -0700 Root names of split table sets, e.g. intronEst for chr*_intronEst, were falling into the !hTableExists check in maybeGetHti and were mistakenly given hti with root name as table name. Instead of assuming that any 'table' that does not exist as a table is bigWig, check for bigWig similarly to the way we check for other bigFile types and create a more accurate hti. refs #19930 diff --git src/hg/hgTables/hgTables.c src/hg/hgTables/hgTables.c index 3974c13..8efe5e7 100644 --- src/hg/hgTables/hgTables.c +++ src/hg/hgTables/hgTables.c @@ -603,50 +603,50 @@ } struct hTableInfo *maybeGetHti(char *db, char *table, struct sqlConnection *conn) /* Return primary table info, but don't abort if table not there. Conn should be open to db. */ { struct hTableInfo *hti = NULL; boolean isTabix = FALSE; if (isHubTrack(table)) { struct trackDb *tdb = hashMustFindVal(fullTableToTdbHash, table); hti = hubTrackTableInfo(tdb); } else if (isBigBed(database, table, curTrack, ctLookupName)) hti = bigBedToHti(table, conn); +else if (isBigWigTable(table)) + hti = bigWigToHti(table); else if (isLongTabixTable(table)) hti = longTabixToHti(table); else if (isBamTable(table)) hti = bamToHti(table); else if (isVcfTable(table, &isTabix)) { boolean isTabix = trackIsType(database, table, curTrack, "vcfTabix", ctLookupName); hti = vcfToHti(table, isTabix); } else if (isCustomTrack(table)) { struct customTrack *ct = ctLookupName(table); hti = ctToHti(ct); } else if (sameWord(table, WIKI_TRACK_TABLE)) { hti = wikiHti(); } -else if (!hTableExists(db, table)) - hti = hFindBigWigTrackInfo(db, NULL, table); else { char *track; if (startsWith("chrN_", table)) track = table + strlen("chrN_"); else track = table; hti = hFindTableInfo(db, NULL, track); } return(hti); } struct hTableInfo *getHti(char *db, char *table, struct sqlConnection *conn) /* Return primary table info. */ {