Hi Paul, On Thu, Apr 09, 2020 at 10:44:18AM +0200, Paul Gevers wrote: > > > May be you consider some fields as really restricted to some > > special applications and nobody would ever consider querying > > UDD for it? > > Yes, I wouldn't add blame (I don't think we add those anymore, it's > legacy, I only found two occurrences on amd64), created_at and > updated_at. I also don't think that worker and message are very useful, > but one never knows. duration_seconds and duration_human feel double and > the former is leaner for in a database.
So I probably go with the following keys (in Python syntax): valid_keys = ( 'run_id', # 'created_at', # Paul Gevers: should be ignored # 'updated_at', # Paul Gevers: should be ignored 'suite', 'arch', 'package', # ----> should be renamed to 'source' 'version', 'trigger', # usually package.*version 'status', 'requestor', # 'britney', 'debci' or e-mail 'pin_packages', # [] # 'worker', # Paul Gevers: should be ignored (is 'null' anyway) 'date', 'duration_seconds', 'last_pass_date', 'last_pass_version', 'message', # see below 'previous_status', # 'duration_human', # Paul Gevers: duration_seconds and duration_human feel double and the former is leaner for in a database # 'blame', # Paul Gevers: should be ignored ) # message can be # $ grep '"message"' packages*.json | sed 's/^.*\.json: *//' | sort | uniq # "message": "All tests passed" -> "status": "pass" # "message": "Could not run tests due to a temporary testbed failure" -> "status": "tmpfail" # "message": "elbrus" -> "status": "tmpfail" # "message": "Erroneous package" -> "status": "fail" # "message": null -> "status": "fail" # "message": "No tests in this package or all skipped" -> "status": "neutral" # "message": "Tests failed", -> "status": "fail" # "message": "Tests failed, and at least one test skipped" -> "status": "fail" # "message": "Tests passed, but at least one test skipped" -> "status": "pass" # "message": "Unexpected autopkgtest exit code 20" -> "status": "tmpfail" I agree that leaving out worker which is really always null makes sense but I tend to leave message since leaving this out looks like loosing information. I tried to find a relation to status but it seems the same status can result in different messages. I think just a field in addition will not blow up UDD way more than it recently is - may be I consider a normalised form, but usually UDD is not very normalised at all. I wonder what might be the meaning of pin_packages which is always equal []. Kind regards Andreas.