1ed560dfcc54b0c42e54a04d10091fd0ad696b91 angie Wed Feb 8 15:29:11 2017 -0800 Display searchPriority of matching tracks, to help identify suitable values for reordering searches. diff --git src/hg/checkHgFindSpec/checkHgFindSpec.c src/hg/checkHgFindSpec/checkHgFindSpec.c index 3be9932..07e4a88 100644 --- src/hg/checkHgFindSpec/checkHgFindSpec.c +++ src/hg/checkHgFindSpec/checkHgFindSpec.c @@ -76,59 +76,59 @@ int chromStart = 0, chromEnd = 0; hgFindSpecGetAllSpecs(database, &shortList, &longList); puts("\n"); startMs = clock1000(); for (hfs = shortList; hfs != NULL; hfs = hfs->next) { boolean matches = TRUE; boolean tablesExist = hTableOrSplitExists(database, hfs->searchTable); if (isNotEmpty(termToSearch) && isNotEmpty(hfs->termRegex)) matches = regexMatchNoCase(termToSearch, hfs->termRegex); if (isNotEmpty(hfs->xrefTable)) tablesExist |= hTableExists(database, hfs->xrefTable); if (matches && tablesExist) { - verbose(1, "SHORT-CIRCUIT %s\n", hfs->searchName); + verbose(1, "SHORT-CIRCUIT %s %f\n", hfs->searchName, hfs->searchPriority); } else if (matches) { verbose(2, "no table %s: %s%s%s\n", hfs->searchName, hfs->searchTable, isNotEmpty(hfs->xrefTable) ? " and/or " : "", isNotEmpty(hfs->xrefTable) ? hfs->xrefTable : ""); } else { verbose(2, "no match %s: %s\n", hfs->searchName, hfs->termRegex); } } endMs = clock1000(); printf("\nTook %dms to determine short-circuit searches.\n\n", endMs - startMs); startMs = clock1000(); for (hfs = longList; hfs != NULL; hfs = hfs->next) { boolean matches = TRUE; boolean tablesExist = hTableOrSplitExists(database, hfs->searchTable); if (isNotEmpty(termToSearch) && isNotEmpty(hfs->termRegex)) matches = regexMatchNoCase(termToSearch, hfs->termRegex); if (isNotEmpty(hfs->xrefTable)) tablesExist |= hTableExists(database, hfs->xrefTable); if (matches && tablesExist) { - verbose(1, "ADDITIVE %s\n", hfs->searchName); + verbose(1, "ADDITIVE %s %f\n", hfs->searchName, hfs->searchPriority); } else if (matches) { verbose(2, "no table %s: %s%s%s\n", hfs->searchName, hfs->searchTable, isNotEmpty(hfs->xrefTable) ? " and/or " : "", isNotEmpty(hfs->xrefTable) ? hfs->xrefTable : ""); } else { verbose(2, "no match %s: %s\n", hfs->searchName, hfs->termRegex); } } endMs = clock1000(); printf("\nTook %dms to determine multiple/additive searches.\n" "(These won't happen if it short-circuits.)\n\n",