spacepy / dbprocessing

Automated processing controller for heliophysics data
5 stars 4 forks source link

Show "force" status in printProcessQueue #117

Open jtniehof opened 2 years ago

jtniehof commented 2 years ago

printProcessQueue, for every entry in the queue, shows the filename and the product:

$ printProcessQueue.py ./foo.sqlite 
/home/jtniehof/tmp/foo.sqlite
2022-01-26T17:00:14.402596
ProcessQueue
0   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130909_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
1   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130908_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
2   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130907_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
3   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130906_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
4   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130905_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
5   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130904_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
6   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130903_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look

It doesn't show the force status, i.e. the value of version_bump. It's sometimes nice to have this.

Proposed enhancement

Add either an indication of forcing, e.g.:

$ printProcessQueue.py ./foo.sqlite 
0*  rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130909_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
1*  rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130908_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
2   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130907_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
3   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130906_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
4   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130905_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
5   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130904_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
6   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130903_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look

Or the portion of the version which is forced:

$ printProcessQueue.py ./foo.sqlite 
0{1}    rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130909_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
1{1}    rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130908_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
2{0}    rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130907_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
3   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130906_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
4   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130905_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
5   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130904_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look
6   rbsp-a_magnetometer_uvw_emfisis-Quick-Look_20130903_v1.3.1.cdf  rbsp-a_magnetometer_uvw_emfisis-Quick-Look

I'm not sure which makes the most sense or where it should be (start of line, after position in queue, after filename, very end of line?)

Alternatives

Do-nothing, always my favorite alternative. There are several display options in the example above. This also could be a default-off that gets turned on with an command line option.

OS, Python version, and dependency version information:

Linux-4.15.0-166-generic-x86_64-with-Ubuntu-18.04-bionic
sys.version_info(major=2, minor=7, micro=17, releaselevel='final', serial=0)
sqlalchemy=1.1.11

Version of dbprocessing

Current github master (fb95a08ff01bf293a4a4059f331ad4860066ddb7)

Closure condition

Figure out the desired approach, implement, document, and ideally unit test it. This would involve the first unit tests of printProcessQueue.