Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Given a block name in DBS3Upload config, dump its info as json #11361

Merged
merged 1 commit into from
Dec 13, 2022

Conversation

amaltaro
Copy link
Contributor

Fixes #11358

Status

ready

Description

Renamed the DBS3Upload dumpBlock attribute to dumpBlockJsonFor, such that now, whenever a block name string is provided for the component configuration, the component creates a json.dump of the same data that gets posted to the DBS server, through the client insertBulkBlock API.

Is it backward compatible (if not, which system it affects?)

NO (previous attribute is removed, a new one goes in)

Related PRs

None

External dependencies / deployment changes

None

@cmsdmwmbot
Copy link

Jenkins results:

  • Python3 Unit tests: succeeded
  • Python3 Pylint check: failed
    • 3 warnings and errors that must be fixed
    • 6 warnings
    • 51 comments to review
  • Pylint py3k check: succeeded
  • Pycodestyle check: succeeded
    • 19 comments to review

Details at https://cmssdt.cern.ch/dmwm-jenkins/view/All/job/DMWM-WMCore-PR-test/13706/artifact/artifacts/PullRequestReport.html

Copy link
Contributor

@vkuznet vkuznet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest to expand this PR to support the following:

  • the dumpBlockJsonFor should be a list to allow specify multiple block names
  • we need to extract block ID and use it as a file name. Doing this way we'll preserve files for individual blocks and will not overwrite already existing file (as current behavior is doing). Moreover, the file name will allow to easily find block because block IDs are unique.

@amaltaro
Copy link
Contributor Author

@vkuznet That could be useful indeed, but I'd rather keep it as simple as possible. Otherwise we have to over-complicate a simple json dump to something like:
"""
get block hash id (split('#') etc)
is block hash id in list of block ids
if so, does the hash id file exists; then don't overwrite it
else dump json
"""

My experience shows that one block dump is usually enough to debug problems affecting multiple blocks.

BTW, the dump configuration is supposed to be used only to get a block dump, not to keep the component operating with that enable for any longer than that.

Copy link
Contributor

@vkuznet vkuznet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok, it is your call, single block then.

@amaltaro
Copy link
Contributor Author

I am merging this but leaving the issue opened, as there are further discussions ongoing.

@amaltaro amaltaro merged commit 4e7fc69 into dmwm:master Dec 13, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Successful (no job failure) workflows w/ missing output on DBS
3 participants