6f949e90b1ba3de976455fbcf9da21897761d134
markd
Fri Oct 29 16:11:58 2021 -0700
add timeout option to pipeline to allow kill long-running pipelines, especially ones run from CGIs
diff --git src/hg/hgc/barChartClick.c src/hg/hgc/barChartClick.c
index 3775785..dbf0cc3 100644
--- src/hg/hgc/barChartClick.c
+++ src/hg/hgc/barChartClick.c
@@ -358,31 +358,31 @@
static void printBoxplot(char *df, char *item, char *name2, char *units, char *colorFile)
/* Plot data frame to image file and include in HTML */
{
struct tempName pngTn;
trashDirFile(&pngTn, "hgc", "barChart", ".png");
// to help with QAing the change, we add the "oldFonts" CGI parameter so QA can compare
// old and new fonts to make sure that things are still readible on mirrors and servers
// without the new fonts installed. This only needed during the QA phase
bool useOldFonts = cgiBoolean("oldFonts");
/* Exec R in quiet mode, without reading/saving environment or workspace */
char *pipeCmd[] = {"Rscript","--vanilla","--slave","hgcData/barChartBoxplot.R",
item, units, colorFile, df, pngTn.forHtml,
isEmpty(name2) ? "n/a" : name2, useOldFonts ? "1" : "0", NULL};
-struct pipeline *pl = pipelineOpen1(pipeCmd, pipelineWrite | pipelineNoAbort, "/dev/null", NULL);
+struct pipeline *pl = pipelineOpen1(pipeCmd, pipelineWrite | pipelineNoAbort, "/dev/null", NULL, 0);
int ret = pipelineWait(pl);
if (ret == 0)
printf("
\n", pngTn.forHtml);
else
warn("Error creating boxplot from sample data with command: %s", pipelineDesc(pl));
}
static double estimateStringWidth(char *s)
/* Get estimate of string width based on a memory font that is about the
* same size as svg will be using. After much research I don't think we
* can get the size from the server, would have to be in Javascript to get
* more precise */
{
MgFont *font = mgHelvetica14Font();