Peter,
Good to hear from you. I have a couple of thoughts, although maybe not the answers you want. The convention in ODM is that there are no Null values in the DataValues table. For time intervals for which there should be values, but for some reason values
are not collected, the convention is to insert a NoData value. But, the ODM data loaders (both the regular data loader and the streaming data loader) key off the time stamps in the files that you give them and so only know that a value should be present if
there is a timestamp in the file for the interval that should be recorded. For example, it is not uncommon in our data to have "NaN" values and "-Inf" values reported by our dataloggers. The Streaming Data Loader can replace those values in the database
with NoData values, recognizing that they are erroneous values. But, this only works because the timestamp actually exists in the datalogger file. If there are gaps in the timestamps in your datalogger file, neither ODM data loader has functionality to automatically
fill them for you.
The UpdateSeriesCatalog table stored procedure in ODM only affects the SeriesCatalog table and so I'm not sure that's the right place to fix this issue. There may be a couple of things that could address this:
1. Why are the gaps occurring in the first place? Is is possible to change something in the way the data are being collected or transmitted to ensure that the gaps are not occurring?
2. Could you develop a script that inserts the time steps you want into your data immediately after data are loaded?
Neither of these will solve the fact that the data are discontinuous because they can't create data that was not collected. In doing real-time plotting you would have to either interpolate on the fly or filter out the NoData values anyway. But, with
all of the missing time intervals filled in with NoData values, it seems like it would be easier then to do the QA/QC.