After running a number of tests with the analyzer and the VDC database file, I come to the conclusion that the software is ok.
I am replaying run 1489. I can see the problem in R.vdc.u1. If I modify the database and copy the u1 detector map into the u2 section, for example, the u2 wire spectrum ends up being 100% identical with the u1 spectrum. The channels above 304 do not reappear in my replay. The replay script is /adaqfs/home/ole/ANALYZER/vdc.C. I don't know how Alex obtained the spectrum he posted, but I cannot reproduce it.
I did find a problem in the R-VDC database file: on line 49 of /adaqfs/home/adaq/e07006/DB/20110217/db_R.vdc.dat, there is a spurious string "db_R.vdc.dat" after the value for channel 308 in the u1 section. This will cause this one channel to be always ignored in the replay. However, fixing this does not fix the bigger problem of the 64 missing channels. The corrected database is in /adaqfs/ole/ANALYZER/db_R.vdc.dat
Please note a couple of things: 1) the "wire" variable of the VDC planes represents very low-level information. It is little more than the raw decoded TDC channel number, translated into the wire number. I verified in the debugger that for u1, wire numbers > 304 really never occur in the raw data provided by THaEvData. Short of a truly bizarre THaEvData bug, this means that they are absent in the CODA stream as well. If you do see such data with the DBB class, then please send me the info on the replay script, run number, and database used. 2) The VDC planes have 368 wires each (not 384), so there are exactly 64 channels missing. These are part of a TDC (crate 1 slot 14) of which 80 channels are used. Channels 288-304 and 305-368 are in the same TDC. 288-304 are ok. Hence, the TDC seems fine, and so do the detector and crate maps. 3) 64 is an integer multiple of the number discriminator card channels and the width of the cables ...