Releases: dmwm/WMCore
WMCore 1.4.2 services production release
This release no longer uses any of the PhEDEx functionality and Rucio is enabled as the standard Data Management system. It also brings an alpha version of a new microservice (MSRuleCleaner), which will be responsible for cleaning unneeded input and output data rules. Last but not least, RucioInjector component now supports block deletion and output container data placement, meaning it now provides 100% of the expected functionality.
Changes since release: 1.4.1.
Release date: 5 Nov 2020.
Central services
Features and/or feature changes
- MSOutput: Add getTransferInfo to MSOutput and info request to MSManager. #9978
- MSOutput: treat NANOAOD/NANOAODSIM as any other datatier in the output data placement logic #9988
- MSOutput: create Disk rules with an weight attr, default to ddm_quota #9993
- MSOutput: use different lifetime configuration for RelVal Disk rules #10046
- If listDataRules API fail, raise a WMRucioException #9999
- MSTransferor: remove PhEDEx functionality #10002
- MSRulecleaner initial commit. #10003
Bug Fixes
- MSOutput: Skip Tape (too) data placement for Resubmission workflows #9983
- Properly validate RequestPriority parameter #9994
- MSTransferor: resolve RSE expression for pileup location #10041
- Fix pileup data location in global workqueue #10042
Enhancements
- Use list_replication_rules Rucio API to list rules #9963
- Add CMSMonitoring dependency for ReqMgr2 #10004
- Introduce deploy-centralvm.sh #10014
- List of json templates that can undergo input data placement #10034
WMAgent
Features
- Disable PhEDExInjector; Enable all tiers to be injected in Rucio #9980
- Treat NANOAOD/NANOAODSIM as any other datatier in the output data placement logic #9988
- Skip Custodial and make generic Disk NonCustodial data placement in RucioInjector #9989
- If listDataRules API fail, raise a WMRucioException #9999
- Implementation for the Rucio getPFN method #10029
- Increase polling cycle for WorkQueueManagerLocationPoller to 1h #9981
- Block deletion logic implemented in RucioInjector #9959 #10044
- Deal with T0 output data subscription in RucioInjector #10006
Bug Fixes
- Only add replicas if parent block has been properly added/attached into Rucio #10024
- Ignore availability for block level rules against the origin site/RSE #10031
Enhancements
Python3 related changes
WMCore 1.4.1 services and WMAgent production release
This release completes all the MicroServices and Global WorkQueue work required to support Rucio as a Data Management system in production.
Changes since release: 1.4.0.
Release date: 6 Oct 2020.
Central services
Features and/or feature changes
- MSOutput: make RSE expression configurable when picking a Tape RSE #9957
- MSOutput: skip tape data placement for RelVals #9920
- MSOutput: flag HIRelVal workflows as RelVal in the mongodb records #9919
- MSOutput: new DatasetSize param for the mongo record; fetch container size from DM systems #9916
- MSOutput: make alert notification and RSE attribute configurable #9915
- Avoid resolving container location with the dataset_locks, whenever possible #9955
- Different algorithm to run the block/container data location #9936
- Add listParentDIDs functionality to Rucio service #9935
- Drop Tape RSEs from the pileup location #9930
- Decouple PhEDEx from the DBS3Reader wrapper module #9927
- PyPI packaging for ReqMgr2 #9874
- MSTransferor: fix DQMHarvest input data placement; print exception error #9949
Bug Fixes
- MSMonitor: deal with ZeroDivision exception for large rules in INJECT state #9951
- Drop Tape RSEs from the MSTransferor input location #9944
- Fix Rucio data location method; support dropping Tape RSEs #9936
Enhancements
WMAgent
Features
- Flag to disable PhEDExInjector; setup to enable all datatiers in RucioInjector #9947
- Construct the PU location via rucio considering MSTransferor locks #9930
- Drop Tape RSEs from the pileup location #9930
- Decouple PhEDEx from the DBS3Reader wrapper module #9927
Bug Fixes
- Avoid passing unicode strings to ParameterSet function #9924
- Fix checkStuckLGE script referencing unitialized variable #9922
Enhancements
Python3 related changes
WMCore 1.4.0 services production release
In short, this release brings a substantial amount of changes to support Python3 within WMCore, depending on the python future
package. The majority of the work to integrate Rucio within WMCore MicroServices has been completed as well.
Changes since release: 1.3.6.
Release date: 15 Sept 2020.
Central services
Features
- A substantial portion of the code now depends on the
future
python package, to support python 3 in parallel with python 2. - Rely on
twine
to upload pypi packages #9780 - Bump rucio-clients from 1.22.2 to .1.23.0 #9846
- Added getAccountLimits method to the Rucio wrapper #9857
- MS: Track Rucio rule progress in MSMonitor #9881 #9899
- Use python and python libraries from CVMFS COMP under slc7_amd64_gcc630 #9819
- MSTransferor: support input data placement with Rucio #9759
- Default rucio rules to asynchronous #9759
- Rucio wrapper API to find where data is locked and available #9889
- Single node dataset-level subscription for DQMHarvest workflows #9889
- MS: Update MSOutput record schema #9901
- MS: Update schema for MSOutput records with OutputMap; Updated MSOutput logic #9904
- Added TiersToDM parameter to the campaign configuration #9906
- MSOutput: skip output data placement for Resubmission request type #9910
- MSOutput: support custodial/tape data placement #9911
- Added Rucio pick site function #9884
- MSOutput: PhEDEx/Rucio logic to decide which RSE to use for Tape transfers #9912
- Get block replicas info using the Rucio bulk API #9900
Bug Fixes
- Update Rucio get_account_usage to get_local_account_usage API #9850
- Update ParentageResolved flag for StepChains without parent as well #9865
- Do not send parent/child data to DBS if there is nothing to be fixed #9853
- Fix HEAD request via pycurl_manager; added a few extra getters #9855
- Improve py2 compatibility of WMException init #9868
- Fix Rucio rule creation when there are duplicate rules #9897
- Avoid failing MSTransferor cycle if Campaigns are misconfigured #9909
Enhancements
- Add MSOutput to WMCore diagram #9804
- Add MSOutput to Micro Services diagram. #9802
- Fix missing job report error codes #9781
- Update WMAgent and WMCore python requirements #9825
- Script to print a summary of LQEs stuck in Available for a given workflow #9863
- Support caching of RSE expressions in the Rucio wrapper #9892
WMAgent
Features
- Use python and python libraries from CVMFS COMP under slc7_amd64_gcc630 #9819
- Use PSN as PNN for opportunistic diskless resources #9693
- Force HEPCloud resources to be down in the CERN agents #9844
Bug Fixes
- Add leading zeros to adler32 to ensure 8 chars length #9809
Enhancements
- Notify Todor upon component automatic restarts #9866
Python3 related changes
- PY3: PSetTweaks - compatible with both python2 and python3 #9740
- PY3: Utils - compatible with both python2 and python3 #9731
- PY3: Configuration - sys.version_info compatible with py2.6 #9839
- PY3: TestInit - Remove dependency on MySQL-python #9848
- PY3: update stdlib - not pickle #9762 #9875
- PY3: WMCore.Cache - compatible with both python2 and python3 #9818
- PY3: Properly deal with strings in REST/Main #9871
WMCore 1.3.6 services production release
In short, this release brings a fully functional MSOutput microservice; a remake of the MSTransferor logic; and the first steps towards supporting python3 in WMCore.
Changes since release: 1.3.5.
Release date: 7 July 2020.
Central services
Features
- MS: Add support for Rucio in MSOutput Consumer thread && Handle DuplicateRule error from Rucio client.#9772
- Validate/fail workflow assignment for improper use of TrustSitelists/TrustPUSitelists (skip ACDCs). #9770 #9793
- Remove status 'completed' from msOutput. #9773
Bug Fixes
- MS: Couple primary/parent block distribution to where the PU dataset is. #9764
- MS: In case the pileup needs to be transferred, transfer all the input blocks to the same location. #9800
- MS: consider datatiers to be excluded in MSOutput; properly deal with DQMHarvest and skipped output datasets. #9755
- MS: Properly handle exceptions inside docTransformer for MSOutput Producer thread. #9750
- MS: Slice large list of runs when calling DBS blocks REST API. #9747
- Fix RequestPriority update during assignment. #9748
- Update old integration Rucio URLs. #9775
Enhancements
- Add MSOutput to WMCore diagram. #9804
- Add MSOutput to Micro Services diagram. #9802
- Reduce default number of pycurl connections to 50. #9785
- Replace StringIO by the python3 io module. #8733
WMAgent
Features
- Add guid consistency check support for secondary input. #9716
Bug Fixes
- Fix python version evaluation in Configuration module. #9766
Enhancements
- Remove duplicated REQUIRED_OS logic, as this has been integrated in T2_CH_CERN_HLT already. #9767
- Add nose2 to the wmagent requirements file. #9778
- Only fail cleanup jobs if they fail to delete all input files. #9754
- Add CreationFailure exit code. #9533
- Print WQ queue url when fetching available elements; break long line down. #9742
- Replace StringIO by the python3 io module. #8733
- Enable RucioInjector component for NANO tiers. #9733
1.0.14 for CRAB - #1
Merge pull request #6718 from emaszs/1.0.14_crab Allow pycurl_manager.py to accept encoded string as data. Fixes #6467
1.0.12 CRAB 2
Next release for CRAB
Tag 1 for CRAB based on WMCore 1.0.12
Merge pull request #6527 from mmascher/1.0.12_crab Remove line that becames problematic in building packages