f16dbe1fef6a6fd83d63fbc7e060b21262b43bf5 markd Mon Feb 8 15:26:55 2021 -0800 don't include dynamic gfServer in blat of all genomes diff --git src/hg/hgBlat/hgBlat.c src/hg/hgBlat/hgBlat.c index d97ce79..e1e49b0 100644 --- src/hg/hgBlat/hgBlat.c +++ src/hg/hgBlat/hgBlat.c @@ -862,30 +862,38 @@ else { safef(shortName, sizeof shortName, "blat %s+%d", names->name, count - 1); safef(description, sizeof description, "blat on %d queries (%s, %s, ...)", count, names->name, names->next->name); } *pName = makeNameUnique(shortName, database, cart); *pDescription = cloneString(description); } void queryServer(char *host, char *port, char *db, struct dnaSeq *seq, char *type, char *xType, boolean complex, boolean isProt, boolean queryRC, int seqNumber, char *genomeDataDir) /* Send simple query to server and report results. (no, it doesn't do this) * queryRC is true when the query has been reverse-complemented */ { +/* + * xinetd throttles by refusing more connections, which causes queries to fail + * when the configured limit is reached. Rather than trying to throttle in the + * client, dynamic servers are excluded. See issue #26658. + */ +if (genomeDataDir != NULL) + return; + struct genomeHits *gH; AllocVar(gH); gH->host=cloneString(host); gH->port=cloneString(port); gH->db = cloneString(db); gH->genome = cloneString(hGenome(db)); gH->seqNumber = seqNumber; gH->faName = cloneString(seq->name); gH->dna = cloneString(seq->dna); gH->dnaSize = seq->size; gH->type = cloneString(type); gH->xType = cloneString(xType); gH->queryRC = queryRC; gH->complex = complex;