WMCore 1.5.2 WMAgent production release
This is the first WMAgent release with full support to python3. It also brings in a major refactoring made for the job PSet tweaking, where a new dependency on cmssw-wm-tools has been introduced, fully decoupling WMAgent python from CMSSW.
Release date: 21 August 2021.
Changes since release: 1.5.1.
Central services
Software stack
Features and/or feature changes
- Split initial data fetching steps && Return from handled exceptions. (Todor Ivanov) #10762
Bug Fixes
- MSOutput: skip inexistent containers in the Tape data placement (Alan Malta Rodrigues) #10717
- MSUnmerged: make rucioConMon parameter mandatory (Alan Malta Rodrigues) #10715
Enhancements
WMAgent
Features and/or feature changes
- Add new attribute for T0 Container rules (Jhonatan Amado) #10738
- Permanently stop staging out log tarball to CASTOR (Alan Malta Rodrigues) #10712
Bug Fixes
- Fix issue with merge process and output labels (Merged and MergedError) (Kenyi Hurtado) #10593 #10744
- Revert CouchDB replication port forward (Alan Malta Rodrigues) #10727
- Encode a few job classads from unicode to bytes (Alan Malta Rodrigues) #10711
- Fix job priority at submission time, taking into account maxTaskPriority, as it was originally. (Kenyi Hurtado) #10760
Enhancements
- 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
- [py2py3] modernize DQMUpload.py (Dario Mapelli) #9934
- [py2py3] fix Services_t/pycurlFileUpload_t and WebTools/REST_t - src (Dario Mapelli) #10650
- PY3: Cast performance values to float in MathAlgos (Alan Malta Rodrigues) #10750
- PY3: Pass byte string to subprocess.stdin in Scram runtime (Alan Malta Rodrigues) #10736
- PY3: Provide standard/unicode string to the PSet handlePileup method (Alan Malta Rodrigues) #10740
- PY3: Decode byte string to unicode for json.dumps (Alan Malta Rodrigues) #10740
- PY3: Implement py3 sorting for JobSplitting (Erik Gough) #10720
- [py2py3] modernize use of mylist.sort() in REST/Server.py (Dario Mapelli) #10743
- [py2py3] modernize use of pickle.load/dump - src (Dario Mapelli) #10742
- PY3: Created new job wrapper script for Python3 environment (Alan Malta Rodrigues) #10726
- PY3: Create job package with pickle protocol=4 for Python3 agents (Alan Malta Rodrigues) #10731
- PY3: Load workload pickle object during runtime in binary mode (Alan Malta Rodrigues) #10729
- [py2py3] Properly deal with strings location in the File module (Alan Malta Rodrigues) #10723
- [py2py3] modernize scripts that rely on urllib (Dario Mapelli) #10754
- [py2py3] More job runtime places to encode pickledarguments to bytes (Alan Malta Rodrigues) #10766
Important changes from the latest production WMAgent release (1.4.7)
- Many many python3 modernization changes
- DBFormatter formatDict/formatList to native string instead of bytes (Alan Malta Rodrigues) #10639
- Create workload sandbox efficiently (Alan Malta Rodrigues) #10612
- Decouple CMSSW and WMCore python versions from PSet tweak (khurtado) #10179
- Retrieve only a summary of the condor jobs in DrainStatusPoller (Alan Malta Rodrigues) #10458
- Only create Rucio connection in PileupFetcher if there is a pileup dataset (Alan Malta Rodrigues) #10470