9bab4c39709d774c2a439dc8b5776b451510bef4 braney Wed Feb 10 11:53:57 2021 -0800 delete the incFiles.txt file if there aren't any include files in the cached trackDb diff --git src/hg/lib/trackDbCache.c src/hg/lib/trackDbCache.c index 32ef75e..40f2751 100644 --- src/hg/lib/trackDbCache.c +++ src/hg/lib/trackDbCache.c @@ -397,38 +397,42 @@ char fileName[4096]; safef(fileName, sizeof fileName, "%s/%ld.%d", dirName, paddress, TRACKDB_VERSION); cacheLog("renaming %s to %s", tempFileName, fileName); mustRename(tempFileName, fileName); // write out the name of the trackDb being cached. safef(fileName, sizeof fileName, "%s/name.txt", dirName); FILE *stream = mustOpen(fileName, "w"); if (tdbPathString == NULL) fprintf(stream, "%s\n", name); else fprintf(stream, "%s.%s\n", name,tdbPathString); carefulClose(&stream); -// write out included files if present +// write out included files if present, or delete existing file if not +safef(fileName, sizeof fileName, "%s/incFiles.txt", dirName); if (!isEmpty(incFiles)) { - safef(fileName, sizeof fileName, "%s/incFiles.txt", dirName); stream = mustOpen(fileName, "w"); fputs(incFiles, stream); carefulClose(&stream); } +else + { + remove(fileName); + } } void trackDbCloneTdbListToSharedMem(char *db, char *tdbPathString, struct trackDb *list, unsigned long size) /* For this native db, allocate shared memory and clone trackDb list into it. */ { cacheLog("cloning memory for db %s %ld", db, size); cloneTdbListToSharedMem(db, tdbPathString, list, size, db, NULL); } void trackDbHubCloneTdbListToSharedMem(char *trackDbUrl, struct trackDb *list, unsigned long size, char *incFiles) /* For this hub, Allocate shared memory and clone trackDb list into it. incFiles has a list of include files that may be null. */ { if ((*trackDbUrl == '.') || (list == NULL)) // don't cache empty lists or collections return; cacheLog("cloning memory for hub %s %ld", trackDbUrl, size);