reqmgr2ms-output 2.3.8rc8__tar.gz → 2.3.8rc10__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {reqmgr2ms-output-2.3.8rc8/src/python/reqmgr2ms_output.egg-info → reqmgr2ms-output-2.3.8rc10}/PKG-INFO +1 -1
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSOutput/MSOutput.py +36 -8
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/Service/RestApiHub.py +4 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WorkQueue/WorkQueue.py +34 -28
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/__init__.py +1 -1
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10/src/python/reqmgr2ms_output.egg-info}/PKG-INFO +1 -1
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/LICENSE +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/MANIFEST.in +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/NOTICE +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/README.md +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/HWMon/wmcore-SysStat +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/acdcserver-tools +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/ParseSpecCmsswdist.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/adjustMongoDocs.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/checkDsetFileCount.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/checkStuckLQE.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/createPileupObjects.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/drainAgent.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/fixWorkflowParentage.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/getWQStatusByWorkflow.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/injectUnified.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/mongoInit.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/parseUnifiedCampaigns.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/setrequeststatus.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/summaryWMStatsFailures.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/updatePileupObjects.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/updateTotalStats.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/workflowCompletion.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/attempt-to-patch.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/buildrelease.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/check-ACDC-parentage +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/check-phedex-dbs-status +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/check-request-wq-status +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/clean-oracle +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/combineMinifyWMStats.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/couch-thrash.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/couch_archiver.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/create-iam-token.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/createStoreResults.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/dbsbuffer-file-fix.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/deploy-rpm-to-jenkins.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/docker.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/fix-dbs-parentage +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/inject-to-config-cache +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/kill-workflow-in-agent +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/kill-workflow-in-global +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/make-local-clones.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/outputmodules-from-config +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/patchComponent.sh +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/paused-jobs +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/purgeDeletedCouchDoc.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/reqmgr-put-default-config +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/reqmgr-sw-update +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/vaildateCMSSWMergeVersion +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-component-standalone +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-couchapp-init +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-delete-couchdb-workflow +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-mod-config +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-resource-control +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-unregister-wmstats +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-upload-config +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-workqueue +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmc-dist-patch +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmc-dist-unpatch +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmc-httpd +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmcore-db-init +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmcore-new-config +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmcore-new-flow +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmcoreD +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/requirements.txt +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/setup.cfg +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/setup.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/setup_build.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/setup_dependencies.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/CPMetrics.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/CertTools.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/EmailAlert.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/ExtendedUnitTestCase.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/FileTools.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/IteratorTools.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/MathUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/MemoryCache.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Patterns.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Pipeline.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/PortForward.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/ProcessStats.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/PythonVersion.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Signals.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/TemporaryEnvironment.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Throttled.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Timers.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Timestamps.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/TokenManager.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Tracing.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/TwPrint.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/Utilities.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/Alarm.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/MathAlgos.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/MiscAlgos.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/ParseXMLFile.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/Permissions.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/Singleton.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/SubprocessAlgos.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Cache/GenericDataCache.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Cache/WMConfigCache.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Cache/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Configuration.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DAOFactory.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/File.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Fileset.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Job.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/JobGroup.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/JobPackage.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/LumiList.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Mask.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/MathStructs/ContinuousSummaryHistogram.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/MathStructs/DiscreteSummaryHistogram.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/MathStructs/SummaryHistogram.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/MathStructs/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Pickleable.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Run.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Subscription.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/WMObject.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/WorkUnit.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Workflow.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/CMSCouch.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ConfigDBMap.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/CouchUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBCore.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBCreator.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBExceptionHandler.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBFactory.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBFormatter.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Dialects.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ExecuteDAO.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MongoDB.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MySQL/Destroy.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MySQL/ListUserContent.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MySQL/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MySQLCore.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Oracle/Destroy.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Oracle/ListUserContent.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Oracle/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ResultSet.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Transaction.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ipy_profile_couch.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/CouchObject.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/Decorators.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/Group.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/Interface.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/User.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Lexicon.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/CherryPyThreads/HeartbeatMonitor.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/CherryPyThreads/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/DataStructs/DefaultStructs.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/DataStructs/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSCore/MSAuth.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSCore/MSCore.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSCore/MSManager.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSCore/TaskManager.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSCore/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSOutput/MSOutputStreamer.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSOutput/MSOutputTemplate.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSOutput/RelValPolicy.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/MSOutput/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/Service/Data.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/Service/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/Tools/Common.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/Tools/PycurlRucio.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/Tools/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/WebGui/FrontPage.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/MicroService/WebGui/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Auth.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/CherryPyPeriodicTask.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Error.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Format.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/HeartbeatMonitorBase.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Main.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Server.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Services.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Test.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Tools.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/Validation.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/REST/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/ReqMgr/DataStructs/RequestStatus.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/ReqMgr/DataStructs/RequestType.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/ReqMgr/DataStructs/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/ReqMgr/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/AlertManager/AlertManagerAPI.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/AlertManager/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/CRIC/CRIC.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/CRIC/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/DBS3Reader.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/DBSConcurrency.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/DBSErrors.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/DBSReader.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/DBSUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/DBSWriterObjects.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/ProdException.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/DBS/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/FWJRDB/FWJRDBAPI.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/FWJRDB/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/HTTPS/HTTPSAuthHandler.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/HTTPS/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/LogDB/LogDB.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/LogDB/LogDBBackend.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/LogDB/LogDBExceptions.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/LogDB/LogDBReport.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/LogDB/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/MSPileup/MSPileupUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/MSPileup/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/McM/McM.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/McM/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/MonIT/Grafana.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/MonIT/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/PyCondor/PyCondorAPI.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/PyCondor/PyCondorUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/PyCondor/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/ReqMgr/ReqMgr.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/ReqMgr/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/ReqMgrAux/ReqMgrAux.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/ReqMgrAux/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/RequestDB/RequestDBReader.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/RequestDB/RequestDBWriter.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/RequestDB/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/Requests.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/Rucio/Rucio.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/Rucio/RucioUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/Rucio/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/RucioConMon/RucioConMon.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/RucioConMon/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/Service.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/StompAMQ/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/TagCollector/TagCollector.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/TagCollector/XMLUtils.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/TagCollector/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/UUIDLib.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/UserFileCache/UserFileCache.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/UserFileCache/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMAgent/WMAgent.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMAgent/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMArchive/CMSSWMetrics.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMArchive/DataMap.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMArchive/WMArchive.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMArchive/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMBS/WMBS.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMBS/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStats/DataStruct/RequestInfoCollection.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStats/DataStruct/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStats/WMStatsPycurl.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStats/WMStatsReader.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStats/WMStatsWriter.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStats/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStatsServer/WMStatsServer.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WMStatsServer/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/WorkQueue/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Services/pycurl_manager.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMBase.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMConnectionBase.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMException.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMExceptions.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMFactory.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMInit.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/WMLogging.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Wrappers/JsonWrapper/JSONThunker.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Wrappers/JsonWrapper/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Wrappers/__init__.py +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/reqmgr2ms_output.egg-info/SOURCES.txt +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/reqmgr2ms_output.egg-info/dependency_links.txt +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/reqmgr2ms_output.egg-info/requires.txt +0 -0
- {reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/reqmgr2ms_output.egg-info/top_level.txt +0 -0
@@ -519,6 +519,7 @@ class MSOutput(MSCore):
|
|
519
519
|
(msPipelineNonRelVal, self.msOutNonRelValColl)]
|
520
520
|
for pipeColl in pipeCollections:
|
521
521
|
wfCounters = 0
|
522
|
+
wfCountersOk = 0
|
522
523
|
pipeLine = pipeColl[0]
|
523
524
|
dbColl = pipeColl[1]
|
524
525
|
pipeLineName = pipeLine.getPipelineName()
|
@@ -526,8 +527,10 @@ class MSOutput(MSCore):
|
|
526
527
|
# FIXME:
|
527
528
|
# To redefine those exceptions as MSoutputExceptions and
|
528
529
|
# start using those here so we do not mix with general errors
|
530
|
+
wfCounters += 1
|
529
531
|
try:
|
530
532
|
pipeLine.run(docOut)
|
533
|
+
wfCountersOk += 1
|
531
534
|
except (KeyError, TypeError) as ex:
|
532
535
|
msg = "%s Possibly malformed record in MongoDB. Err: %s. " % (pipeLineName, str(ex))
|
533
536
|
msg += "Continue to the next document."
|
@@ -542,10 +545,12 @@ class MSOutput(MSCore):
|
|
542
545
|
msg = "%s General error from pipeline. Err: %s. " % (pipeLineName, str(ex))
|
543
546
|
msg += "Will retry again in the next cycle."
|
544
547
|
self.logger.exception(msg)
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
548
|
+
workflowname = docOut.get("_id", "")
|
549
|
+
self.alertGenericError(self.mode, workflowname, msg, str(ex), str(docOut))
|
550
|
+
continue
|
551
|
+
self.logger.info("Successfully processed %d workflows from pipeline: %s", wfCountersOk, pipeLineName)
|
552
|
+
self.logger.info("Failed to proccess %d workflows from pipeline: %s", wfCounters - wfCountersOk, pipeLineName)
|
553
|
+
wfCounterTotal += wfCountersOk
|
549
554
|
|
550
555
|
return wfCounterTotal
|
551
556
|
|
@@ -579,12 +584,12 @@ class MSOutput(MSCore):
|
|
579
584
|
Functor(self.docCleaner)])
|
580
585
|
# TODO:
|
581
586
|
# To generate the object from within the Function scope see above.
|
582
|
-
|
587
|
+
counterOk = 0
|
583
588
|
for request in requestRecords:
|
584
|
-
counter += 1
|
585
589
|
pipeLineName = msPipeline.getPipelineName()
|
586
590
|
try:
|
587
591
|
msPipeline.run(request)
|
592
|
+
counterOk += 1
|
588
593
|
except (KeyError, TypeError) as ex:
|
589
594
|
msg = "%s Possibly broken read from ReqMgr2 API or other. Err: %s." % (pipeLineName, str(ex))
|
590
595
|
msg += " Continue to the next document."
|
@@ -594,8 +599,10 @@ class MSOutput(MSCore):
|
|
594
599
|
msg = "%s General Error from pipeline. Err: %s. " % (pipeLineName, str(ex))
|
595
600
|
msg += "Giving up Now."
|
596
601
|
self.logger.exception(str(ex))
|
597
|
-
|
598
|
-
|
602
|
+
workflowname = request.get("_id", "")
|
603
|
+
self.alertGenericError(self.mode, workflowname, msg, str(ex), str(request))
|
604
|
+
continue
|
605
|
+
return counterOk
|
599
606
|
|
600
607
|
def docTransformer(self, doc):
|
601
608
|
"""
|
@@ -1023,3 +1030,24 @@ class MSOutput(MSCore):
|
|
1023
1030
|
self.logger.critical(alertDescription)
|
1024
1031
|
if self.msConfig["sendNotification"] and not isRelVal:
|
1025
1032
|
self.sendAlert(alertName, alertSeverity, alertSummary, alertDescription, self.alertServiceName)
|
1033
|
+
|
1034
|
+
def alertGenericError(self, caller, workflowname, msg, exMsg, document):
|
1035
|
+
"""
|
1036
|
+
Send an alert to Prometheus in the case of a generic error with ms-output
|
1037
|
+
|
1038
|
+
:param caller: str, indicates if the error comes from Producer or Consumer
|
1039
|
+
:param workflowname: str, representing the workflow name
|
1040
|
+
:param msg: str, context about the error
|
1041
|
+
:param exMsg: str, excetpion message
|
1042
|
+
:param document: str, serialized mongodb document
|
1043
|
+
:return: none
|
1044
|
+
"""
|
1045
|
+
alertName = "ms-output: Generic MSOutput error inside {} while processing workflow '{}'".format(caller, workflowname)
|
1046
|
+
alertSeverity = "high"
|
1047
|
+
alertSummary = "[MSOutput] Generic MSOutput error inside {} while processing workflow '{}'".format(caller, workflowname)
|
1048
|
+
alertDescription = "wf: {}\n\nmsg: {}\n\nex: {}\n\n{}".format(workflowname, msg, exMsg, document)
|
1049
|
+
self.logger.error("%s\n%s\n%s", alertName, alertSummary, alertDescription)
|
1050
|
+
if self.msConfig["sendNotification"]:
|
1051
|
+
self.sendAlert(alertName, alertSeverity, alertSummary, alertDescription, self.alertServiceName)
|
1052
|
+
|
1053
|
+
|
@@ -39,4 +39,8 @@ class RestApiHub(RESTApi):
|
|
39
39
|
# the mount point should match service configuration, e.g. in MSPileup we define
|
40
40
|
# mount point as /ms-pileup/data, e.g. http://.../ms-pileup/data
|
41
41
|
if 'ms-pileup' in mount:
|
42
|
+
# add new API "pileup" and it will be accessible as /ms-pileup/data/pileup
|
42
43
|
self._add({"pileup": Data(app, self, config, mount)})
|
44
|
+
elif 'ms-transferor' in mount:
|
45
|
+
# add new API "transferor" and it will be accessible as /ms-transferor/data/transferor
|
46
|
+
self._add({"transferor": Data(app, self, config, mount)})
|
@@ -237,34 +237,6 @@ class WorkQueue(object):
|
|
237
237
|
elements = [x['id'] for x in data.get('rows', []) if x['key'][1] not in nonCancelableElements]
|
238
238
|
return self.updateElements(*elements, Status='CancelRequested')
|
239
239
|
|
240
|
-
def updateSiteLists(self, wf, siteWhiteList=None, siteBlackList=None):
|
241
|
-
"""
|
242
|
-
Update site list parameters in elements matching a given workflow and a list of element statuse
|
243
|
-
|
244
|
-
:param wf: workflow name
|
245
|
-
:param siteWhiteList: optional list of strings, new site white list
|
246
|
-
:param siteBlackList: optional list of strings, new site black list
|
247
|
-
:return: None
|
248
|
-
"""
|
249
|
-
# Update elements in Available status
|
250
|
-
data = self.db.loadView('WorkQueue', 'jobStatusByRequest',
|
251
|
-
{'reduce': False})
|
252
|
-
states = ['Available']
|
253
|
-
elementsToUpdate = [x['id'] for x in data.get('rows', []) if x['key'][-1] in states and wf in x['key']]
|
254
|
-
if elementsToUpdate:
|
255
|
-
self.logger.info("Updating %d elements in status %s for workflow %s", len(elementsToUpdate), states, wf)
|
256
|
-
self.updateElements(*elementsToUpdate, SiteWhiteList=siteWhiteList, SiteBlackList=siteBlackList)
|
257
|
-
# Update the spec, if it exists
|
258
|
-
if self.db.documentExists(wf):
|
259
|
-
wmspec = WMWorkloadHelper()
|
260
|
-
# update local workqueue couchDB
|
261
|
-
wmspec.load(self.hostWithAuth + "/%s/%s/spec" % (self.db.name, wf))
|
262
|
-
wmspec.setSiteWhiteList(siteWhiteList)
|
263
|
-
wmspec.setSiteBlackList(siteBlackList)
|
264
|
-
dummy_values = {'name': wmspec.name()}
|
265
|
-
wmspec.saveCouch(self.hostWithAuth, self.db.name, dummy_values)
|
266
|
-
return
|
267
|
-
|
268
240
|
def updatePriority(self, wf, priority):
|
269
241
|
"""Update priority of a workflow, this implies
|
270
242
|
updating the spec and the priority of the Available elements"""
|
@@ -284,6 +256,40 @@ class WorkQueue(object):
|
|
284
256
|
wmspec.saveCouch(self.hostWithAuth, self.db.name, dummy_values)
|
285
257
|
return
|
286
258
|
|
259
|
+
def updateElementsByWorkflow(self, workload, updateParams, status=None):
|
260
|
+
"""
|
261
|
+
Update all available WorkQueue elements of a given workflow with a set
|
262
|
+
of arguments provided through the `updateParams` dictionary
|
263
|
+
:param workload: A workflow spec
|
264
|
+
:param updateParams: A dictionary with parameters to be updated
|
265
|
+
:param status: A list of allowed WorkQueue elements statuses to be considered for updating
|
266
|
+
Default: None - do not filter by status
|
267
|
+
:return: No value, raises exceptions from internal methods in case of errors.
|
268
|
+
"""
|
269
|
+
# Fetch the whole view with Workqueue elements per given workflow
|
270
|
+
wfName = workload.name()
|
271
|
+
data = self.db.loadView('WorkQueue', 'elementsDetailByWorkflowAndStatus',
|
272
|
+
{'startkey': [wfName], 'endkey': [wfName, {}],
|
273
|
+
'reduce': False})
|
274
|
+
|
275
|
+
# Fetch only a list of WorkQueue element Ids && Filter them by allowed status
|
276
|
+
if status:
|
277
|
+
elementsToUpdate = [x['id'] for x in data.get('rows', []) if x['value']['Status'] in status]
|
278
|
+
else:
|
279
|
+
elementsToUpdate = [x['id'] for x in data.get('rows', [])]
|
280
|
+
|
281
|
+
# Update all WorkQueue elements with the parameters provided in a single push
|
282
|
+
if elementsToUpdate:
|
283
|
+
self.updateElements(*elementsToUpdate, **updateParams)
|
284
|
+
|
285
|
+
# Update the spec, if it exists
|
286
|
+
if self.db.documentExists(wfName):
|
287
|
+
# Update all workload parameters based on the full reqArgs dictionary
|
288
|
+
workload.updateWorkloadArgs(updateParams)
|
289
|
+
# Commit the changes of the current workload object to the database:
|
290
|
+
workload.saveCouchUrl(workload.specUrl())
|
291
|
+
return
|
292
|
+
|
287
293
|
def getWorkflowNames(self, inboxFlag=False):
|
288
294
|
"""Get workflow names from workqueue db"""
|
289
295
|
if inboxFlag:
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/ParseSpecCmsswdist.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/adjustMongoDocs.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/checkDsetFileCount.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/createPileupObjects.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/fixWorkflowParentage.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/getWQStatusByWorkflow.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/parseUnifiedCampaigns.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/setrequeststatus.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/summaryWMStatsFailures.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/updatePileupObjects.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/updateTotalStats.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/adhoc-scripts/workflowCompletion.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/bin/wmagent-delete-couchdb-workflow
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/ExtendedUnitTestCase.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/Utils/TemporaryEnvironment.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/Alarm.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/MathAlgos.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/MiscAlgos.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/Permissions.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/Singleton.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Algorithms/__init__.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Cache/GenericDataCache.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Cache/WMConfigCache.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Cache/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/File.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Fileset.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Job.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/JobGroup.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/JobPackage.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/LumiList.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Mask.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Pickleable.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Run.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/WMObject.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/WorkUnit.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/Workflow.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/DataStructs/__init__.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/CMSCouch.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ConfigDBMap.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/CouchUtils.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBCore.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBCreator.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBFactory.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/DBFormatter.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Dialects.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ExecuteDAO.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MongoDB.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MySQL/Destroy.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/MySQLCore.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/ResultSet.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/Transaction.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/Database/__init__.py
RENAMED
File without changes
|
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/CouchObject.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/Decorators.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/Group.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/Interface.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/User.py
RENAMED
File without changes
|
{reqmgr2ms-output-2.3.8rc8 → reqmgr2ms-output-2.3.8rc10}/src/python/WMCore/GroupUser/__init__.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|