38bef45eaaae2157df46f86b60ee18f48a7094f2
galt
  Tue Apr 9 22:18:33 2019 -0700
needed exception for meta.txt that is explicitly listed in maniSummary.txt. We do NOT want to turn the real file in the wrangle dir into a symlink in this case.

diff --git src/hg/cirm/cdw/cdwSubmit/cdwSubmit.c src/hg/cirm/cdw/cdwSubmit/cdwSubmit.c
index 4ad64ab..cde0962 100644
--- src/hg/cirm/cdw/cdwSubmit/cdwSubmit.c
+++ src/hg/cirm/cdw/cdwSubmit/cdwSubmit.c
@@ -394,32 +394,37 @@
 
 char cdwFile[PATH_LEN] = "", cdwPath[PATH_LEN];
 cdwMakeFileNameAndPath(ef->id, ef->submitFileName,  cdwFile, cdwPath);
 ef->startUploadTime = cdwNow();
 
 // keep copy so that we can be sure to own the target file
 verbose(3, "cdwFile=%s\n", cdwFile);
 verbose(3, "copyFile submitFileName=%s to cdwPath=%s\n", ef->submitFileName, cdwPath);
 copyFile(ef->submitFileName, cdwPath);
 // and owner can touch and chmod it
 touchFileFromFile(ef->submitFileName, cdwPath); // preserve mtime.
 chmod(cdwPath, 0444);
 
 // save space by finding the last real file in symlinks chain
 // and replace IT with a symlink to the new file. 
+// However, make an exception for meta.txt which can get 
+// be listed in maniSummary.txt
+boolean metaException = sameString(ef->submitFileName, "meta.txt");
+if (!metaException)
+    {
     replaceOriginalWithSymlink(ef->submitFileName, submitDir, cdwPath);
-
+    }
 ef->cdwFileName = cloneString(cdwFile);
 ef->endUploadTime = cdwNow();
 char *access = metaManiFieldVal("access", table, row, metaIx, metaHash);
 if (access == NULL)
     access = "group";
 
 ef->userAccess = cdwAccessWrite;
 if (sameString(access, "all"))
     ef->allAccess = cdwAccessRead;
 else if (sameString(access, "group"))
     ef->groupAccess = cdwAccessRead;
 else if (!sameString(access, "user"))
     errAbort("Unknown access %s", access);
 
 /* Now we got the file.  We'll go ahead and save rest of cdwFile record.  This