Skip to content
Snippets Groups Projects
  1. Mar 10, 2025
  2. Mar 04, 2025
  3. Feb 18, 2025
    • Erin (Josh) Rigler's avatar
      Controller Update: · 114bbd6f
      Erin (Josh) Rigler authored
      - align timestamps more consistently for "update" intervals
      - (related) add "interval" option to get_realtime_interval
      114bbd6f
  4. Jan 17, 2025
  5. Jan 06, 2025
  6. Oct 21, 2024
  7. Oct 15, 2024
  8. May 28, 2024
    • Erin (Josh) Rigler's avatar
      Pull inputs in run(), not run_as_update() · dd71bde9
      Erin (Josh) Rigler authored
      For years, when invoking geomag-algorithms' update mechanism, inputs
      were pulled and checked from the run_as_update() method inside the
      Controller class. I never understood this. It seemed to break the
      logic of the update mechanism if no inputs were available for the
      current inteval/gap. This might even be the source of noted issues
      where running back-filling scripts didn't behave as expected, and
      those scripts needed to be run multiple times.
      
      What's more, the run_as_update() method logically seems like the
      most appropriate place to read *outputs* and check for gaps. Whereas
      the run() method seems like the most appropriate place to read
      inputs, apply algorithms, and write out outputs.
      
      In any case, this change should not break any existing code. It
      should only allow the update mechanism to complete, every time, and
      as originally intended, rather than be short-circuited when input
      data are missing for the current interval (but might be available
      for previous intervals)..
      dd71bde9
  9. Apr 22, 2024
    • Erin (Josh) Rigler's avatar
      Fix Controller.run_as_update() · 126d6e14
      Erin (Josh) Rigler authored
      This broke when changes were made to allow processing data more recent than
      the last top-of-the-minute (~8 months ago). The only "updates" that worked
      since then were for 1-second data. It's a little bit lazy because it relies
      on the output_factory to return traces with proper starttimes and endtimes
      (that is, they fall on the tops of minutes). Probably we should be more
      explicit in correcting the starttimes and endtimes to line up on expected
      timestamps. Pushing this fix now because it has operational impacts.
      126d6e14
  10. Aug 24, 2023
  11. Aug 16, 2023
  12. Apr 25, 2023
  13. Apr 24, 2023
  14. Jan 13, 2023
  15. Aug 13, 2022
  16. Aug 12, 2022
  17. Aug 11, 2022
    • Erin (Josh) Rigler's avatar
      update interval no longer shrinks with recursion · 6355305d
      Erin (Josh) Rigler authored
      Previously, the endtime-starttime interval being processed by the
      `run_as_update` method would shrink by 1 (second) with each recursion.
      This ultimately broke `run_as_update` when processing anything other
      than 1-second data, but it wasn't obvious because we rarely had to
      actually recurse. There is a little trickery now to ensure that user-
      provided starttime and endtime are inclusive of the full first
      (most recent) update interval, while subsequent, calculated, endtimes
      are set equal to the prior starttime minus specified output_interval
      (e.g., 'second', 'minute', etc.).
      6355305d
  18. May 27, 2022
    • Erin (Josh) Rigler's avatar
      Remove BYTESIO object creation · e918b4c9
      Erin (Josh) Rigler authored
      It turns out that none of the factories currently being used in
      production expects bytes as input, and in fact, Util.read_url()
      converts everthing to a string anyway, so a BYTES-oriented input
      would couldn't not possibly be working. So, just remove all use
      of BYTESIO, and instead use only STRINGIO.
      e918b4c9
  19. May 18, 2022
Loading