WMCore 1.5.3 central services production release
This release contains many feature changes and bug fixes. It's worth highlighting that support
to GPU workflows has been introduced for ReReco and TaskChain request specs. The remaining critical
issues with the unmerged microservice have been fixed and it's now fully functional.
Last but not least, the WMCore codebase is now fully dual stack (python2 and python3).
Release date: 16 September 2021.
Changes since release: 1.5.1.
Central services
Software stack
- Update Python3 requirements list with Sphinx and Jinja2 (Alan Malta Rodrigues) #10794
Features and/or feature changes
- [MSOutput]: only produce documents for workflows not yet in the database (Alan Malta Rodrigues) #10773
- [ReqMgr2] Override factoryWorkloadConstruction in the Resubmission spec (Alan Malta Rodrigues) #10781
- [ReqMgr2] Support GPU parameters at StdBase/ReReco; validation functions implemented (Alan Malta Rodrigues) #10799
- [ReqMgr2] Add support to GPUs in TaskChain spec (Alan Malta Rodrigues) #10805
Bug Fixes
- [MSOutput] Skip inexistent containers in the Tape data placement (Alan Malta Rodrigues) #10717
- [MSUnmerged] Make rucioConMon parameter mandatory (Alan Malta Rodrigues) #10715
- [MSUnmerged] Split initial data fetching steps && Return from handled exceptions. (Todor Ivanov) #10762
- [MSTransferor] Fix undefined variable in MSTransferor (Alan Malta Rodrigues) #10769
- [ReqMgr2] Fix spec validation for Multicore/Memory/Streams/TpE (Alan Malta Rodrigues) #10781
- [ReqMgr2] Keep Resubmission spec and json data consistent (Alan Malta Rodrigues) #10789
- [ReqMgr2] Fix Multicore/EventStreams override in Resubmission of StepChains (Alan Malta Rodrigues) #10795
- [MSUnmerged] Delete file lists in slices. (Todor Ivanov) #10792
Enhancements
- Define pylint message template in the pylintrc file (Alan Malta Rodrigues) #10776
WMAgent
Features and/or feature changes
- Stop staging out log tarball to CASTOR (Alan Malta Rodrigues) #10712
- Created new job wrapper script for Python3 environment (Alan Malta Rodrigues) #10726
- CouchDB 3: Add new Error HTTP Status Codes to CMSCouch.py (phenomax) #10785
Bug Fixes
- Encode a few job classads from unicode to bytes (Alan Malta Rodrigues) #10711
- Revert CouchDB replication port forward (Alan Malta Rodrigues) #10727
- Fix issue with merge process and output labels (Merged and MergedError) (Kenyi Hurtado) #10593
- Define funcName variable in the right place (Alan Malta Rodrigues) #10744
- Decode byte string to unicode for json.dumps (Alan Malta Rodrigues) #10740
- Provide standard/unicode string to the PSet handlePileup method (Alan Malta Rodrigues) #10740
- Cast performance values to float in MathAlgos (Alan Malta Rodrigues) #10750
- Fix job priority at submission time, taking into account maxTaskPriority, as it was originally. (Kenyi Hurtado) #10760
- Fix missing parenthesis (Kenyi Hurtado) #10771
Enhancements
- Add new attribute for T0 Container rules (Jhonatan Amado) #10738
- Define cms_type=int for rucio rules created against Rucio Int (Alan Malta Rodrigues) #10756
- Convert a WorkQueueManagerCleaner log info to debug (Alan Malta Rodrigues) #10755
Python3 related changes
- #10349 - JobSubmitter_t and JobSubmitterCaching_t - test (Dario Mapelli) #10608
- Properly deal with strings location in the File module (Alan Malta Rodrigues) #10723
- #10371 check - fix JobCreator_t.py - test (Dario Mapelli) #10724
- Load workload pickle object during runtime in binary mode (Alan Malta Rodrigues) #10729
- Create job package with pickle protocol=4 for Python3 agents (Alan Malta Rodrigues) #10731
- modernize use of pickle.load/dump - src (Dario Mapelli) #10742
- modernize use of mylist.sort() in REST/Server.py (Dario Mapelli) #10743
- Implement py3 sorting for JobSplitting (Erik Gough) #10720
- Pass byte string to subprocess.stdin in Scram runtime (Alan Malta Rodrigues) #10736
- Fix Services_t/pycurlFileUpload_t and WebTools/REST_t - src (Dario Mapelli) #10650
- Modernize DQMUpload.py (Dario Mapelli) #9934
- Modernize scripts that rely on urllib (Dario Mapelli) #10754
- More job runtime places to encode pickledarguments to bytes (Alan Malta Rodrigues) #10766
- Modernization of leftover files - src (Dario Mapelli) #10768
- RESTFormatter.to_string returns 'native str' (Dario Mapelli) #10753