This archive contains answers to questions sent to Unidata support through mid-2025. Note that the archive is no longer being updated. We provide the archive for reference; many of the answers presented here remain technically correct, even if somewhat outdated. For the most up-to-date information on the use of NSF Unidata software and data services, please consult the Software Documentation first.
>From: "Valentijn Venus" <address@hidden> >Organization: ITC >Keywords: 200502232310.j1NNAlv2007536 McIDAS ADDE compress gzip execl Hi Valentijn, I must admit that when I saw this email back on Feb 24, I only skimmed it thinking it was intended for Don only (I saw saw the section about the status bar in IDV and just assumed...). I apologize! >Tom, thanks for suggesting the importance of RESOLV.SRV in your last >e-mail. For some reason it was completely empty on the machine i'm >trying to serve METEOSAT-8 images from. copying the >~mcidas/workdata/RESOLV.SRV from another machine which had the right >entries sort of "solved" the issue. OK. >Tom, shouldn't DSSERVE ADD ... do the job, Yes, DSSERVE is the application that adds entries to a RESOLV.SRV file. If you have more than one RESOLV.SRV file in the directories included in your MCPATH set of directories, it will attempt to update the first one found in searching the directories from left to right. I am uncertain of how your MCPATH was setup when you ran the DSSERVE commands, so I would rather not speculate on how you could end up with a zero-length RESOLV.SRV file. >or is DSINFO IMAGE MSG really necessary to add the entries in >RESOLV.SRV? DSINFO's only job in life is to as an ADDE server about what it datasets it has configured. It could be the case that you had no RESOLV.SRV file when the DSINFO command was first run. McIDAS defaults to opening a file if it exists or creating it if it doesn't even for reads. If a DSINFO was run when there was no RESOLV.SRV file, then an empty one could have been created by this mechanism. I'm shooting in the dark here... >Now that this ADDE datasource can successfully be accessed from a McIDAS >client using MCCOMPRESS=3DGZIP, i started experimenting with accessing >the same ADDE datasource from IDV. IDV sees the data, but when >requesting an image i get a progress bar with no progress showing. After >downloading and installing NCOMPRESS from the Fedora site (i'm running >Fedora Core 2) on the machine serving the ADDE data (and adding the path >of the binary to PATH in .mcenv, which now looks something like >PATH=${MCGUI}:MCPATH:/usr/local/bin/), UNCOMPRESSed tranfers are also >working, but COMPRESSed tranfers still not. Because of that the McIDAS >client (in MCCOMPRESS=3DTRUE mode) nor IDV can see the data. I came >across the e-mail below, in which the new GZIP tranfers are discussed >between the two of you. Don, I read somewhere that IDV can only use >COMPRESSed tranfers. Is that true, or can IDV be equipped with the >necessary modules to support this new type of ADDE compression? IDV works with 'compress' compressed transfers and 'gzip' compressed transfers. >Tom, >what could be wrong with my McIDAS config, since after i added the >COMPRESS/UNCOMPRESS program UNCOMPRESS seems to work fine, but COMPRESS >not? The problem is that adding the directory where 'compress' lives to the PATH in .mcenv will not do what you would expect. The ADDE server module 'mcserv' needs to execl the actual 'compress' binary, not just run it. Because of this, it tries to exec it out of a standard set of directories. Here is the code from mcserv.cp that demonstrates the process: if (pre.servport==htonl(COMPRESS_PORT) || pre.servport==htonl(COMPRESS_KEY)) { execl("/bin/compress", "compress", "-cf",0); execl("/usr/bsd/compress", "compress", "-cf",0); execl("/usr/bin/compress", "compress", "-cf",0); execl("/usr/contrib/bin/compress", "compress", "-cf",0); } So, since your installation of 'compress' was in a directory other than one in this list (you put yours in /usr/local/bin), it was not found by 'mcserv'. On Linux that support RPMs, it is always best to grab the RPM that contains compress/uncompress and use 'rpm' to install the executables in standard locations. Now, you might ask why 'gzip' works. Both 'gzip' and 'gunzip' are built as part of the McIDAS package and are installed in known locations. Here is the code snippit form mcserv.cp that 'execl's 'gzip': if (pre.servport==htonl(GZIP_PORT) || pre.servport==htonl(GZIP_KEY)) { char gzspeed[8]; strcpy(gzspeed,"-"); if(getenv("MCGZIPCOMP") != (char *)0) { strcat(gzspeed,getenv("MCGZIPCOMP")); } else { strcat(gzspeed,GZIP_SPEED); } execlp("gzip", "gzip", "-cf", gzspeed, 0); execl("/usr/local/gzip/bin/gzip", "gzip", "-cf", gzspeed, 0); } Notice that 'execlp' is used to find 'gzip' first. This will find the executable in the ~mcidas/bin directory since it _is_ in the PATH defined in .mcenv. Why SSEC did not use 'execlp' for all its searches is a bit of a mystery to me. Again, I apologize for not reading your inquiry more carefully the first time! If I had, I would have seen that you were waiting for a response from me, and I would have responded quickly. Cheers, Valentijn -- NOTE: All email exchanges with Unidata User Support are recorded in the Unidata inquiry tracking system and then made publicly available through the web. If you do not want to have your interactions made available in this way, you must let us know in each email you send to us. >From address@hidden Wed Mar 9 01:27:18 2005 Hi, Tom No need to apologize, it seems to be all working now. Thanx for helping! Now uncompressed Meteosat data can succesfully be served to clients using ADDE my first request becomes more urgent: making the McIDAS MSG server-code capable of handling the wavelet compressed Meteosat-8 segmented files. I'm trying to evangelise McIDAS/ADDE and the concept of distributed data services, but for some African co-universities and particulary a regional training centre for remote sensing in Kenya data storage cost is an issues. No need to explain that the requested modification would reduce storage costs considerably. Valentijn