wmglobalqueue 2.3.10__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of wmglobalqueue might be problematic. Click here for more details.
- Utils/CPMetrics.py +270 -0
- Utils/CertTools.py +62 -0
- Utils/EmailAlert.py +50 -0
- Utils/ExtendedUnitTestCase.py +62 -0
- Utils/FileTools.py +182 -0
- Utils/IteratorTools.py +80 -0
- Utils/MathUtils.py +31 -0
- Utils/MemoryCache.py +119 -0
- Utils/Patterns.py +24 -0
- Utils/Pipeline.py +137 -0
- Utils/PortForward.py +97 -0
- Utils/ProcessStats.py +103 -0
- Utils/PythonVersion.py +17 -0
- Utils/Signals.py +36 -0
- Utils/TemporaryEnvironment.py +27 -0
- Utils/Throttled.py +227 -0
- Utils/Timers.py +130 -0
- Utils/Timestamps.py +86 -0
- Utils/TokenManager.py +143 -0
- Utils/Tracing.py +60 -0
- Utils/TwPrint.py +98 -0
- Utils/Utilities.py +308 -0
- Utils/__init__.py +11 -0
- WMCore/ACDC/Collection.py +57 -0
- WMCore/ACDC/CollectionTypes.py +12 -0
- WMCore/ACDC/CouchCollection.py +67 -0
- WMCore/ACDC/CouchFileset.py +238 -0
- WMCore/ACDC/CouchService.py +73 -0
- WMCore/ACDC/DataCollectionService.py +485 -0
- WMCore/ACDC/Fileset.py +94 -0
- WMCore/ACDC/__init__.py +11 -0
- WMCore/Algorithms/Alarm.py +39 -0
- WMCore/Algorithms/MathAlgos.py +274 -0
- WMCore/Algorithms/MiscAlgos.py +67 -0
- WMCore/Algorithms/ParseXMLFile.py +115 -0
- WMCore/Algorithms/Permissions.py +27 -0
- WMCore/Algorithms/Singleton.py +58 -0
- WMCore/Algorithms/SubprocessAlgos.py +129 -0
- WMCore/Algorithms/__init__.py +7 -0
- WMCore/Cache/GenericDataCache.py +98 -0
- WMCore/Cache/WMConfigCache.py +572 -0
- WMCore/Cache/__init__.py +0 -0
- WMCore/Configuration.py +651 -0
- WMCore/DAOFactory.py +47 -0
- WMCore/DataStructs/File.py +177 -0
- WMCore/DataStructs/Fileset.py +140 -0
- WMCore/DataStructs/Job.py +182 -0
- WMCore/DataStructs/JobGroup.py +142 -0
- WMCore/DataStructs/JobPackage.py +49 -0
- WMCore/DataStructs/LumiList.py +734 -0
- WMCore/DataStructs/Mask.py +219 -0
- WMCore/DataStructs/MathStructs/ContinuousSummaryHistogram.py +197 -0
- WMCore/DataStructs/MathStructs/DiscreteSummaryHistogram.py +92 -0
- WMCore/DataStructs/MathStructs/SummaryHistogram.py +117 -0
- WMCore/DataStructs/MathStructs/__init__.py +0 -0
- WMCore/DataStructs/Pickleable.py +24 -0
- WMCore/DataStructs/Run.py +256 -0
- WMCore/DataStructs/Subscription.py +175 -0
- WMCore/DataStructs/WMObject.py +47 -0
- WMCore/DataStructs/WorkUnit.py +112 -0
- WMCore/DataStructs/Workflow.py +60 -0
- WMCore/DataStructs/__init__.py +8 -0
- WMCore/Database/CMSCouch.py +1349 -0
- WMCore/Database/ConfigDBMap.py +29 -0
- WMCore/Database/CouchUtils.py +118 -0
- WMCore/Database/DBCore.py +198 -0
- WMCore/Database/DBCreator.py +113 -0
- WMCore/Database/DBExceptionHandler.py +57 -0
- WMCore/Database/DBFactory.py +110 -0
- WMCore/Database/DBFormatter.py +177 -0
- WMCore/Database/Dialects.py +13 -0
- WMCore/Database/ExecuteDAO.py +327 -0
- WMCore/Database/MongoDB.py +241 -0
- WMCore/Database/MySQL/Destroy.py +42 -0
- WMCore/Database/MySQL/ListUserContent.py +20 -0
- WMCore/Database/MySQL/__init__.py +9 -0
- WMCore/Database/MySQLCore.py +132 -0
- WMCore/Database/Oracle/Destroy.py +56 -0
- WMCore/Database/Oracle/ListUserContent.py +19 -0
- WMCore/Database/Oracle/__init__.py +9 -0
- WMCore/Database/ResultSet.py +44 -0
- WMCore/Database/Transaction.py +91 -0
- WMCore/Database/__init__.py +9 -0
- WMCore/Database/ipy_profile_couch.py +438 -0
- WMCore/GlobalWorkQueue/CherryPyThreads/CleanUpTask.py +29 -0
- WMCore/GlobalWorkQueue/CherryPyThreads/HeartbeatMonitor.py +105 -0
- WMCore/GlobalWorkQueue/CherryPyThreads/LocationUpdateTask.py +28 -0
- WMCore/GlobalWorkQueue/CherryPyThreads/ReqMgrInteractionTask.py +35 -0
- WMCore/GlobalWorkQueue/CherryPyThreads/__init__.py +0 -0
- WMCore/GlobalWorkQueue/__init__.py +0 -0
- WMCore/GroupUser/CouchObject.py +127 -0
- WMCore/GroupUser/Decorators.py +51 -0
- WMCore/GroupUser/Group.py +33 -0
- WMCore/GroupUser/Interface.py +73 -0
- WMCore/GroupUser/User.py +96 -0
- WMCore/GroupUser/__init__.py +11 -0
- WMCore/Lexicon.py +836 -0
- WMCore/REST/Auth.py +202 -0
- WMCore/REST/CherryPyPeriodicTask.py +166 -0
- WMCore/REST/Error.py +333 -0
- WMCore/REST/Format.py +642 -0
- WMCore/REST/HeartbeatMonitorBase.py +90 -0
- WMCore/REST/Main.py +623 -0
- WMCore/REST/Server.py +2435 -0
- WMCore/REST/Services.py +24 -0
- WMCore/REST/Test.py +120 -0
- WMCore/REST/Tools.py +38 -0
- WMCore/REST/Validation.py +250 -0
- WMCore/REST/__init__.py +1 -0
- WMCore/ReqMgr/DataStructs/RequestStatus.py +209 -0
- WMCore/ReqMgr/DataStructs/RequestType.py +13 -0
- WMCore/ReqMgr/DataStructs/__init__.py +0 -0
- WMCore/ReqMgr/__init__.py +1 -0
- WMCore/Services/AlertManager/AlertManagerAPI.py +111 -0
- WMCore/Services/AlertManager/__init__.py +0 -0
- WMCore/Services/CRIC/CRIC.py +238 -0
- WMCore/Services/CRIC/__init__.py +0 -0
- WMCore/Services/DBS/DBS3Reader.py +1044 -0
- WMCore/Services/DBS/DBSConcurrency.py +44 -0
- WMCore/Services/DBS/DBSErrors.py +113 -0
- WMCore/Services/DBS/DBSReader.py +23 -0
- WMCore/Services/DBS/DBSUtils.py +139 -0
- WMCore/Services/DBS/DBSWriterObjects.py +381 -0
- WMCore/Services/DBS/ProdException.py +133 -0
- WMCore/Services/DBS/__init__.py +8 -0
- WMCore/Services/FWJRDB/FWJRDBAPI.py +118 -0
- WMCore/Services/FWJRDB/__init__.py +0 -0
- WMCore/Services/HTTPS/HTTPSAuthHandler.py +66 -0
- WMCore/Services/HTTPS/__init__.py +0 -0
- WMCore/Services/LogDB/LogDB.py +201 -0
- WMCore/Services/LogDB/LogDBBackend.py +191 -0
- WMCore/Services/LogDB/LogDBExceptions.py +11 -0
- WMCore/Services/LogDB/LogDBReport.py +85 -0
- WMCore/Services/LogDB/__init__.py +0 -0
- WMCore/Services/MSPileup/__init__.py +0 -0
- WMCore/Services/MSUtils/MSUtils.py +54 -0
- WMCore/Services/MSUtils/__init__.py +0 -0
- WMCore/Services/McM/McM.py +173 -0
- WMCore/Services/McM/__init__.py +8 -0
- WMCore/Services/MonIT/Grafana.py +133 -0
- WMCore/Services/MonIT/__init__.py +0 -0
- WMCore/Services/PyCondor/PyCondorAPI.py +154 -0
- WMCore/Services/PyCondor/PyCondorUtils.py +105 -0
- WMCore/Services/PyCondor/__init__.py +0 -0
- WMCore/Services/ReqMgr/ReqMgr.py +261 -0
- WMCore/Services/ReqMgr/__init__.py +0 -0
- WMCore/Services/ReqMgrAux/ReqMgrAux.py +419 -0
- WMCore/Services/ReqMgrAux/__init__.py +0 -0
- WMCore/Services/RequestDB/RequestDBReader.py +267 -0
- WMCore/Services/RequestDB/RequestDBWriter.py +39 -0
- WMCore/Services/RequestDB/__init__.py +0 -0
- WMCore/Services/Requests.py +624 -0
- WMCore/Services/Rucio/Rucio.py +1287 -0
- WMCore/Services/Rucio/RucioUtils.py +74 -0
- WMCore/Services/Rucio/__init__.py +0 -0
- WMCore/Services/RucioConMon/RucioConMon.py +128 -0
- WMCore/Services/RucioConMon/__init__.py +0 -0
- WMCore/Services/Service.py +400 -0
- WMCore/Services/StompAMQ/__init__.py +0 -0
- WMCore/Services/TagCollector/TagCollector.py +155 -0
- WMCore/Services/TagCollector/XMLUtils.py +98 -0
- WMCore/Services/TagCollector/__init__.py +0 -0
- WMCore/Services/UUIDLib.py +13 -0
- WMCore/Services/UserFileCache/UserFileCache.py +160 -0
- WMCore/Services/UserFileCache/__init__.py +8 -0
- WMCore/Services/WMAgent/WMAgent.py +63 -0
- WMCore/Services/WMAgent/__init__.py +0 -0
- WMCore/Services/WMArchive/CMSSWMetrics.py +526 -0
- WMCore/Services/WMArchive/DataMap.py +463 -0
- WMCore/Services/WMArchive/WMArchive.py +33 -0
- WMCore/Services/WMArchive/__init__.py +0 -0
- WMCore/Services/WMBS/WMBS.py +97 -0
- WMCore/Services/WMBS/__init__.py +0 -0
- WMCore/Services/WMStats/DataStruct/RequestInfoCollection.py +300 -0
- WMCore/Services/WMStats/DataStruct/__init__.py +0 -0
- WMCore/Services/WMStats/WMStatsPycurl.py +145 -0
- WMCore/Services/WMStats/WMStatsReader.py +445 -0
- WMCore/Services/WMStats/WMStatsWriter.py +273 -0
- WMCore/Services/WMStats/__init__.py +0 -0
- WMCore/Services/WMStatsServer/WMStatsServer.py +134 -0
- WMCore/Services/WMStatsServer/__init__.py +0 -0
- WMCore/Services/WorkQueue/WorkQueue.py +492 -0
- WMCore/Services/WorkQueue/__init__.py +0 -0
- WMCore/Services/__init__.py +8 -0
- WMCore/Services/pycurl_manager.py +574 -0
- WMCore/WMBase.py +50 -0
- WMCore/WMConnectionBase.py +164 -0
- WMCore/WMException.py +183 -0
- WMCore/WMExceptions.py +269 -0
- WMCore/WMFactory.py +76 -0
- WMCore/WMInit.py +228 -0
- WMCore/WMLogging.py +108 -0
- WMCore/WMSpec/ConfigSectionTree.py +442 -0
- WMCore/WMSpec/Persistency.py +135 -0
- WMCore/WMSpec/Steps/BuildMaster.py +87 -0
- WMCore/WMSpec/Steps/BuildTools.py +201 -0
- WMCore/WMSpec/Steps/Builder.py +97 -0
- WMCore/WMSpec/Steps/Diagnostic.py +89 -0
- WMCore/WMSpec/Steps/Emulator.py +62 -0
- WMCore/WMSpec/Steps/ExecuteMaster.py +208 -0
- WMCore/WMSpec/Steps/Executor.py +210 -0
- WMCore/WMSpec/Steps/StepFactory.py +213 -0
- WMCore/WMSpec/Steps/TaskEmulator.py +75 -0
- WMCore/WMSpec/Steps/Template.py +204 -0
- WMCore/WMSpec/Steps/Templates/AlcaHarvest.py +76 -0
- WMCore/WMSpec/Steps/Templates/CMSSW.py +613 -0
- WMCore/WMSpec/Steps/Templates/DQMUpload.py +59 -0
- WMCore/WMSpec/Steps/Templates/DeleteFiles.py +70 -0
- WMCore/WMSpec/Steps/Templates/LogArchive.py +84 -0
- WMCore/WMSpec/Steps/Templates/LogCollect.py +105 -0
- WMCore/WMSpec/Steps/Templates/StageOut.py +105 -0
- WMCore/WMSpec/Steps/Templates/__init__.py +10 -0
- WMCore/WMSpec/Steps/WMExecutionFailure.py +21 -0
- WMCore/WMSpec/Steps/__init__.py +8 -0
- WMCore/WMSpec/Utilities.py +63 -0
- WMCore/WMSpec/WMSpecErrors.py +12 -0
- WMCore/WMSpec/WMStep.py +347 -0
- WMCore/WMSpec/WMTask.py +1980 -0
- WMCore/WMSpec/WMWorkload.py +2288 -0
- WMCore/WMSpec/WMWorkloadTools.py +370 -0
- WMCore/WMSpec/__init__.py +9 -0
- WMCore/WorkQueue/DataLocationMapper.py +273 -0
- WMCore/WorkQueue/DataStructs/ACDCBlock.py +47 -0
- WMCore/WorkQueue/DataStructs/Block.py +48 -0
- WMCore/WorkQueue/DataStructs/CouchWorkQueueElement.py +148 -0
- WMCore/WorkQueue/DataStructs/WorkQueueElement.py +274 -0
- WMCore/WorkQueue/DataStructs/WorkQueueElementResult.py +152 -0
- WMCore/WorkQueue/DataStructs/WorkQueueElementsSummary.py +185 -0
- WMCore/WorkQueue/DataStructs/__init__.py +0 -0
- WMCore/WorkQueue/Policy/End/EndPolicyInterface.py +44 -0
- WMCore/WorkQueue/Policy/End/SingleShot.py +22 -0
- WMCore/WorkQueue/Policy/End/__init__.py +32 -0
- WMCore/WorkQueue/Policy/PolicyInterface.py +17 -0
- WMCore/WorkQueue/Policy/Start/Block.py +258 -0
- WMCore/WorkQueue/Policy/Start/Dataset.py +180 -0
- WMCore/WorkQueue/Policy/Start/MonteCarlo.py +131 -0
- WMCore/WorkQueue/Policy/Start/ResubmitBlock.py +171 -0
- WMCore/WorkQueue/Policy/Start/StartPolicyInterface.py +316 -0
- WMCore/WorkQueue/Policy/Start/__init__.py +34 -0
- WMCore/WorkQueue/Policy/__init__.py +57 -0
- WMCore/WorkQueue/WMBSHelper.py +772 -0
- WMCore/WorkQueue/WorkQueue.py +1237 -0
- WMCore/WorkQueue/WorkQueueBackend.py +750 -0
- WMCore/WorkQueue/WorkQueueBase.py +39 -0
- WMCore/WorkQueue/WorkQueueExceptions.py +44 -0
- WMCore/WorkQueue/WorkQueueReqMgrInterface.py +278 -0
- WMCore/WorkQueue/WorkQueueUtils.py +130 -0
- WMCore/WorkQueue/__init__.py +13 -0
- WMCore/Wrappers/JsonWrapper/JSONThunker.py +342 -0
- WMCore/Wrappers/JsonWrapper/__init__.py +7 -0
- WMCore/Wrappers/__init__.py +6 -0
- WMCore/__init__.py +10 -0
- wmglobalqueue-2.3.10.data/data/bin/wmc-dist-patch +15 -0
- wmglobalqueue-2.3.10.data/data/bin/wmc-dist-unpatch +8 -0
- wmglobalqueue-2.3.10.data/data/bin/wmc-httpd +3 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/.couchapprc +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/README.md +40 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/index.html +264 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/ElementInfoByWorkflow.js +96 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/StuckElementInfo.js +57 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/WorkloadInfoTable.js +80 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/dataTable.js +70 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/js/namespace.js +23 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/_attachments/style/main.css +75 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/couchapp.json +4 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/filters/childQueueFilter.js +13 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/filters/filterDeletedDocs.js +3 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/filters/queueFilter.js +11 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/language +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lib/mustache.js +333 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lib/validate.js +27 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lib/workqueue_utils.js +61 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/elementsDetail.js +28 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/filter.js +86 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/stuckElements.js +38 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/workRestrictions.js +153 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/lists/workflowSummary.js +28 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/rewrites.json +73 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/shows/redirect.js +23 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/shows/status.js +40 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/ElementSummaryByWorkflow.html +27 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/StuckElementSummary.html +26 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/TaskStatus.html +23 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/WorkflowSummary.html +27 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/partials/workqueue-common-lib.html +2 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/partials/yui-lib-remote.html +16 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/templates/partials/yui-lib.html +18 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/updates/in-place.js +50 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/validate_doc_update.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/vendor/couchapp/_attachments/jquery.couch.app.js +235 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/vendor/couchapp/_attachments/jquery.pathbinder.js +173 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeData/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeData/reduce.js +2 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeParentData/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activeParentData/reduce.js +2 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activePileupData/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/activePileupData/reduce.js +2 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/analyticsData/map.js +11 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/analyticsData/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/availableByPriority/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/conflicts/map.js +5 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elements/map.js +5 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByData/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByParent/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByParentData/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByPileupData/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByStatus/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsBySubscription/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByWorkflow/map.js +8 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsByWorkflow/reduce.js +3 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/elementsDetailByWorkflowAndStatus/map.js +26 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobInjectStatusByRequest/map.js +10 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobInjectStatusByRequest/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobStatusByRequest/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobStatusByRequest/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndPriority/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndPriority/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndStatus/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByChildQueueAndStatus/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByRequest/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByRequest/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatus/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatus/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatusAndPriority/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/jobsByStatusAndPriority/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/openRequests/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/recent-items/map.js +5 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/siteWhitelistByRequest/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/siteWhitelistByRequest/reduce.js +1 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/specsByWorkflow/map.js +5 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/stuckElements/map.js +38 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsInjectStatusByRequest/map.js +12 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsInjectStatusByRequest/reduce.js +3 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrl/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrl/reduce.js +2 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrlByRequest/map.js +6 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/wmbsUrlByRequest/reduce.js +2 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/workflowSummary/map.js +9 -0
- wmglobalqueue-2.3.10.data/data/data/couchapps/WorkQueue/views/workflowSummary/reduce.js +10 -0
- wmglobalqueue-2.3.10.dist-info/LICENSE +202 -0
- wmglobalqueue-2.3.10.dist-info/METADATA +24 -0
- wmglobalqueue-2.3.10.dist-info/NOTICE +16 -0
- wmglobalqueue-2.3.10.dist-info/RECORD +345 -0
- wmglobalqueue-2.3.10.dist-info/WHEEL +5 -0
- wmglobalqueue-2.3.10.dist-info/top_level.txt +2 -0
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
"""
|
|
3
|
+
_WMBSBase_
|
|
4
|
+
|
|
5
|
+
Generic methods used by all of the WMBS classes.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
from builtins import object
|
|
12
|
+
import threading
|
|
13
|
+
import copy
|
|
14
|
+
|
|
15
|
+
from WMCore.Database.Transaction import Transaction
|
|
16
|
+
from WMCore.DAOFactory import DAOFactory
|
|
17
|
+
|
|
18
|
+
try:
|
|
19
|
+
from contextlib import contextmanager
|
|
20
|
+
except (ImportError, NameError):
|
|
21
|
+
pass
|
|
22
|
+
|
|
23
|
+
class WMConnectionBase(object):
|
|
24
|
+
"""
|
|
25
|
+
Generic db connection and transaction methods used by all of the WMCore classes.
|
|
26
|
+
"""
|
|
27
|
+
def __init__(self, daoPackage, logger = None, dbi = None):
|
|
28
|
+
"""
|
|
29
|
+
___init___
|
|
30
|
+
|
|
31
|
+
Initialize all the database connection attributes and the logging
|
|
32
|
+
attritbutes. Create a DAO factory for given daoPackage as well. Finally,
|
|
33
|
+
check to see if a transaction object has been created. If none exists,
|
|
34
|
+
create one but leave the transaction closed.
|
|
35
|
+
"""
|
|
36
|
+
myThread = threading.currentThread()
|
|
37
|
+
if logger:
|
|
38
|
+
self.logger = logger
|
|
39
|
+
else:
|
|
40
|
+
self.logger = myThread.logger
|
|
41
|
+
if dbi:
|
|
42
|
+
self.dbi = dbi
|
|
43
|
+
else:
|
|
44
|
+
self.dbi = myThread.dbi
|
|
45
|
+
|
|
46
|
+
self.daofactory = DAOFactory(package = daoPackage,
|
|
47
|
+
logger = self.logger,
|
|
48
|
+
dbinterface = self.dbi)
|
|
49
|
+
|
|
50
|
+
if "transaction" not in dir(myThread):
|
|
51
|
+
myThread.transaction = Transaction(self.dbi)
|
|
52
|
+
|
|
53
|
+
return
|
|
54
|
+
|
|
55
|
+
def getDBConn(self):
|
|
56
|
+
"""
|
|
57
|
+
_getDBConn_
|
|
58
|
+
|
|
59
|
+
Retrieve the database connection that is associated with the current
|
|
60
|
+
dataabase transaction.
|
|
61
|
+
It transaction exists, it will return connection
|
|
62
|
+
which that transaction belong to.
|
|
63
|
+
This won't create the transaction if it doesn't exist, it will just return
|
|
64
|
+
None.
|
|
65
|
+
"""
|
|
66
|
+
myThread = threading.currentThread()
|
|
67
|
+
|
|
68
|
+
if "transaction" not in dir(myThread):
|
|
69
|
+
return None
|
|
70
|
+
|
|
71
|
+
return myThread.transaction.conn
|
|
72
|
+
|
|
73
|
+
def beginTransaction(self):
|
|
74
|
+
"""
|
|
75
|
+
_beginTransaction_
|
|
76
|
+
|
|
77
|
+
Begin a database transaction if one does not already exist.
|
|
78
|
+
"""
|
|
79
|
+
myThread = threading.currentThread()
|
|
80
|
+
|
|
81
|
+
if "transaction" not in dir(myThread):
|
|
82
|
+
myThread.transaction = Transaction(self.dbi)
|
|
83
|
+
return False
|
|
84
|
+
|
|
85
|
+
if myThread.transaction.transaction == None:
|
|
86
|
+
myThread.transaction.begin()
|
|
87
|
+
return False
|
|
88
|
+
|
|
89
|
+
return True
|
|
90
|
+
|
|
91
|
+
def existingTransaction(self):
|
|
92
|
+
"""
|
|
93
|
+
_existingTransaction_
|
|
94
|
+
|
|
95
|
+
Return True if there is an open transaction, False otherwise.
|
|
96
|
+
"""
|
|
97
|
+
myThread = threading.currentThread()
|
|
98
|
+
|
|
99
|
+
if "transaction" not in dir(myThread):
|
|
100
|
+
return False
|
|
101
|
+
elif myThread.transaction.transaction != None:
|
|
102
|
+
return True
|
|
103
|
+
|
|
104
|
+
return False
|
|
105
|
+
|
|
106
|
+
def commitTransaction(self, existingTransaction):
|
|
107
|
+
"""
|
|
108
|
+
_commitTransaction_
|
|
109
|
+
|
|
110
|
+
Commit a database transaction that was begun by self.beginTransaction().
|
|
111
|
+
"""
|
|
112
|
+
if not existingTransaction:
|
|
113
|
+
myThread = threading.currentThread()
|
|
114
|
+
myThread.transaction.commit()
|
|
115
|
+
|
|
116
|
+
return
|
|
117
|
+
|
|
118
|
+
def __getstate__(self):
|
|
119
|
+
"""
|
|
120
|
+
__getstate__
|
|
121
|
+
|
|
122
|
+
The database connection information isn't pickleable, so we to kill that
|
|
123
|
+
before we attempt to pickle.
|
|
124
|
+
"""
|
|
125
|
+
self.dbi = None
|
|
126
|
+
self.logger = None
|
|
127
|
+
self.daofactory = None
|
|
128
|
+
return self.__dict__
|
|
129
|
+
|
|
130
|
+
|
|
131
|
+
def transactionContext(self):
|
|
132
|
+
"""
|
|
133
|
+
Returns a transaction as a ContextManager
|
|
134
|
+
|
|
135
|
+
Usage:
|
|
136
|
+
with transactionContext():
|
|
137
|
+
databaseCode1()
|
|
138
|
+
databaseCode2()
|
|
139
|
+
|
|
140
|
+
Equates to beginTransaction() followed by either
|
|
141
|
+
commitTransaction or a rollback
|
|
142
|
+
"""
|
|
143
|
+
existingTransaction = self.beginTransaction()
|
|
144
|
+
try:
|
|
145
|
+
yield existingTransaction
|
|
146
|
+
except:
|
|
147
|
+
# responsibility for rolling back is on the transaction starter
|
|
148
|
+
if not existingTransaction:
|
|
149
|
+
self.logger.error('Exception caught, rolling back transaction')
|
|
150
|
+
threading.currentThread().transaction.rollback()
|
|
151
|
+
raise
|
|
152
|
+
else:
|
|
153
|
+
# only commits if transaction started by this invocation
|
|
154
|
+
self.commitTransaction(existingTransaction)
|
|
155
|
+
try:
|
|
156
|
+
transactionContext = contextmanager(transactionContext)
|
|
157
|
+
except NameError:
|
|
158
|
+
pass
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
def rollbackTransaction(self, existingTransaction):
|
|
162
|
+
"""Rollback transaction if we started it"""
|
|
163
|
+
if not existingTransaction:
|
|
164
|
+
threading.currentThread().transaction.rollback()
|
WMCore/WMException.py
ADDED
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
#!/usr/bin/python
|
|
2
|
+
"""
|
|
3
|
+
_WMException_
|
|
4
|
+
|
|
5
|
+
General Exception class for WM modules
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from builtins import str, bytes
|
|
10
|
+
from future.utils import viewitems
|
|
11
|
+
|
|
12
|
+
import inspect
|
|
13
|
+
import logging
|
|
14
|
+
import sys
|
|
15
|
+
import traceback
|
|
16
|
+
|
|
17
|
+
from Utils.Utilities import decodeBytesToUnicode
|
|
18
|
+
from WMCore.Configuration import PY3
|
|
19
|
+
|
|
20
|
+
WMEXCEPTION_START_STR = str("<@========== WMException Start ==========@>")
|
|
21
|
+
WMEXCEPTION_END_STR = str("<@---------- WMException End ----------@>")
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
class WMException(Exception):
|
|
25
|
+
"""
|
|
26
|
+
_WMException_
|
|
27
|
+
|
|
28
|
+
Exception class which works out details of where
|
|
29
|
+
it was raised.
|
|
30
|
+
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
def __init__(self, message, errorNo=None, **data):
|
|
34
|
+
self.name = str(self.__class__.__name__)
|
|
35
|
+
|
|
36
|
+
# Fix for the unicode encoding issue, see #8056 and #8403
|
|
37
|
+
# interprets this string using utf-8 codec and ignoring any errors.
|
|
38
|
+
# using unicode sandwich pattern
|
|
39
|
+
message = decodeBytesToUnicode(message, "ignore")
|
|
40
|
+
|
|
41
|
+
Exception.__init__(self, self.name, message)
|
|
42
|
+
|
|
43
|
+
# //
|
|
44
|
+
# // Init data dictionary with defaults
|
|
45
|
+
# //
|
|
46
|
+
self.data = {}
|
|
47
|
+
self.data.setdefault("ClassName", None)
|
|
48
|
+
self.data.setdefault("ModuleName", None)
|
|
49
|
+
self.data.setdefault("MethodName", None)
|
|
50
|
+
self.data.setdefault("ClassInstance", None)
|
|
51
|
+
self.data.setdefault("FileName", None)
|
|
52
|
+
self.data.setdefault("LineNumber", None)
|
|
53
|
+
if errorNo is None:
|
|
54
|
+
self.data.setdefault("ErrorNr", 0)
|
|
55
|
+
else:
|
|
56
|
+
self.data.setdefault("ErrorNr", errorNo)
|
|
57
|
+
|
|
58
|
+
self._message = message
|
|
59
|
+
self.addInfo(**data)
|
|
60
|
+
|
|
61
|
+
# //
|
|
62
|
+
# // Automatically determine the module name
|
|
63
|
+
# // if not set
|
|
64
|
+
if self.data['ModuleName'] is None:
|
|
65
|
+
try:
|
|
66
|
+
frame = inspect.currentframe()
|
|
67
|
+
lastframe = inspect.getouterframes(frame)[1][0]
|
|
68
|
+
excepModule = inspect.getmodule(lastframe)
|
|
69
|
+
if excepModule is not None:
|
|
70
|
+
modName = excepModule.__name__
|
|
71
|
+
self.data['ModuleName'] = modName
|
|
72
|
+
finally:
|
|
73
|
+
frame = None
|
|
74
|
+
|
|
75
|
+
# //
|
|
76
|
+
# // Find out where the exception came from
|
|
77
|
+
# //
|
|
78
|
+
try:
|
|
79
|
+
stack = inspect.stack(1)[1]
|
|
80
|
+
self.data['FileName'] = stack[1]
|
|
81
|
+
self.data['LineNumber'] = stack[2]
|
|
82
|
+
self.data['MethodName'] = stack[3]
|
|
83
|
+
finally:
|
|
84
|
+
stack = None
|
|
85
|
+
|
|
86
|
+
# //
|
|
87
|
+
# // ClassName if ClassInstance is passed
|
|
88
|
+
# //
|
|
89
|
+
try:
|
|
90
|
+
if self.data['ClassInstance'] is not None:
|
|
91
|
+
self.data['ClassName'] = self.data['ClassInstance'].__class__.__name__
|
|
92
|
+
except Exception:
|
|
93
|
+
pass
|
|
94
|
+
|
|
95
|
+
# Determine the traceback at time of __init__
|
|
96
|
+
try:
|
|
97
|
+
self.traceback = "\n".join(traceback.format_tb(sys.exc_info()[2]))
|
|
98
|
+
except Exception:
|
|
99
|
+
self.traceback = "WMException error: Couldn't get traceback\n"
|
|
100
|
+
# using unicode sandwich pattern
|
|
101
|
+
self.traceback = decodeBytesToUnicode(self.traceback, "ignore")
|
|
102
|
+
|
|
103
|
+
def __getitem__(self, key):
|
|
104
|
+
"""
|
|
105
|
+
make exception look like a dictionary
|
|
106
|
+
"""
|
|
107
|
+
return self.data[key]
|
|
108
|
+
|
|
109
|
+
def __setitem__(self, key, value):
|
|
110
|
+
"""
|
|
111
|
+
make exception look like a dictionary
|
|
112
|
+
"""
|
|
113
|
+
# using unicode sandwich pattern
|
|
114
|
+
key = decodeBytesToUnicode(key, "ignore")
|
|
115
|
+
value = decodeBytesToUnicode(value, "ignore")
|
|
116
|
+
self.data[key] = value
|
|
117
|
+
|
|
118
|
+
def addInfo(self, **data):
|
|
119
|
+
"""
|
|
120
|
+
_addInfo_
|
|
121
|
+
|
|
122
|
+
Add key=value information pairs to an
|
|
123
|
+
exception instance
|
|
124
|
+
"""
|
|
125
|
+
for key, value in viewitems(data):
|
|
126
|
+
# assumption: value is not iterable (list, dict, tuple, ...)
|
|
127
|
+
# using unicode sandwich pattern
|
|
128
|
+
key = decodeBytesToUnicode(key, "ignore")
|
|
129
|
+
value = decodeBytesToUnicode(value, "ignore")
|
|
130
|
+
self.data[key] = value
|
|
131
|
+
return
|
|
132
|
+
|
|
133
|
+
def xml(self):
|
|
134
|
+
"""create a xml string rep of this exception"""
|
|
135
|
+
strg = "<Exception>\n"
|
|
136
|
+
strg += "<Object>\n"
|
|
137
|
+
strg += "%s\n" % self.name
|
|
138
|
+
strg += "</Object>\n"
|
|
139
|
+
strg += "<Message>\n"
|
|
140
|
+
strg += self._message
|
|
141
|
+
strg += "</Message>\n"
|
|
142
|
+
strg += "<DataItems>\n"
|
|
143
|
+
for key, value in viewitems(self.data):
|
|
144
|
+
strg += "<DataItem>\n"
|
|
145
|
+
strg += "<Key>\n"
|
|
146
|
+
strg += str(key)
|
|
147
|
+
strg += "</Key>\n"
|
|
148
|
+
strg += "<Value>\n"
|
|
149
|
+
strg += str(value)
|
|
150
|
+
strg += "</Value>\n"
|
|
151
|
+
strg += "</DataItem>\n"
|
|
152
|
+
strg += "</DataItems>\n"
|
|
153
|
+
strg += "</Exception>\n"
|
|
154
|
+
logging.error(strg)
|
|
155
|
+
return strg
|
|
156
|
+
|
|
157
|
+
def __as_unicode(self):
|
|
158
|
+
"""create a string rep of this exception"""
|
|
159
|
+
# WARNING: Do not change this string - it is used to extract error from log
|
|
160
|
+
strg = WMEXCEPTION_START_STR
|
|
161
|
+
strg += "\nException Class: %s\n" % self.name
|
|
162
|
+
strg += "Message: %s\n" % self._message
|
|
163
|
+
for key, value in viewitems(self.data):
|
|
164
|
+
strg += "\t%s : %s\n" % (key, value,)
|
|
165
|
+
strg += "\nTraceback: \n"
|
|
166
|
+
strg += self.traceback
|
|
167
|
+
strg += '\n'
|
|
168
|
+
strg += WMEXCEPTION_END_STR
|
|
169
|
+
return strg
|
|
170
|
+
|
|
171
|
+
def __as_bytes(self):
|
|
172
|
+
return self.__as_unicode().encode("utf-8")
|
|
173
|
+
|
|
174
|
+
if PY3:
|
|
175
|
+
__str__ = __as_unicode
|
|
176
|
+
else:
|
|
177
|
+
__str__ = __as_bytes
|
|
178
|
+
__unicode__ = __as_unicode
|
|
179
|
+
__repr__ = __str__
|
|
180
|
+
|
|
181
|
+
|
|
182
|
+
def message(self):
|
|
183
|
+
return self._message
|
WMCore/WMExceptions.py
ADDED
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
#!/usr/bin/python
|
|
2
|
+
"""
|
|
3
|
+
_WMExceptions_
|
|
4
|
+
|
|
5
|
+
- List of standard exception ids and their
|
|
6
|
+
mappings to a human readable message.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
WMEXCEPTION = {'WMCORE-1': 'Not allowed to instantiate ',
|
|
10
|
+
'WMCORE-2': 'Problem creating database table ',
|
|
11
|
+
'WMCORE-3': 'Could not find in library class ',
|
|
12
|
+
'WMCORE-4': 'Problem with loading the class ',
|
|
13
|
+
'WMCORE-5': 'Dialect not specified in configuration ',
|
|
14
|
+
'WMCORE-6': 'Message name is same as diagnostic message name! ',
|
|
15
|
+
'WMCORE-7': 'Component name is reserved word. ',
|
|
16
|
+
'WMCORE-8': 'No config section for this component! ',
|
|
17
|
+
'WMCORE-9': 'Problem inserting a trigger flag. ',
|
|
18
|
+
'WMCORE-10': 'Problem setting trigger action. ',
|
|
19
|
+
'WMCORE-11': 'Security exception. ',
|
|
20
|
+
'WMCORE-12': 'Database connection problem ',
|
|
21
|
+
'WMCORE-13': 'Number of retries exceeded'}
|
|
22
|
+
|
|
23
|
+
"""
|
|
24
|
+
WM_JOB_ERROR_CODES
|
|
25
|
+
List of job error codes present in WMCore, some of them coming from CMSSW, and a description of the error it represents.
|
|
26
|
+
|
|
27
|
+
IMPORTANT:
|
|
28
|
+
Any change which is done for WM_JOB_ERROR_CODES has to be done also in the following twiki page:
|
|
29
|
+
https://twiki.cern.ch/twiki/bin/view/CMSPublic/JobExitCodes
|
|
30
|
+
----------------
|
|
31
|
+
Range(1 - 512)
|
|
32
|
+
standard ones in Unix and indicate a CMSSW abort that the cmsRun did not catch as exception
|
|
33
|
+
----------------
|
|
34
|
+
Range(7000 - 9000)
|
|
35
|
+
cmsRun (CMSSW) exit codes. These codes may depend on specific CMSSW version
|
|
36
|
+
https://github.com/cms-sw/cmssw/blob/CMSSW_5_0_1/FWCore/Utilities/interface/EDMException.h#L26
|
|
37
|
+
----------------
|
|
38
|
+
Range(10000 - 19999)
|
|
39
|
+
Failures related to the environment setup
|
|
40
|
+
----------------
|
|
41
|
+
Range(50000 - 59999)
|
|
42
|
+
Failures related executable file
|
|
43
|
+
----------------
|
|
44
|
+
Range(60000 - 69999)
|
|
45
|
+
Failures related staging-OUT
|
|
46
|
+
----------------
|
|
47
|
+
Range(70000 - 79999)
|
|
48
|
+
Failures related only for WMAgent. (which does not fit into ranges before)
|
|
49
|
+
----------------
|
|
50
|
+
Range(80000 - 89999)
|
|
51
|
+
Failures related only for CRAB3. (which does not fit into ranges before)
|
|
52
|
+
----------------
|
|
53
|
+
Range(90000 - 99999)
|
|
54
|
+
Other problems which does not fit to any range before.
|
|
55
|
+
----------------
|
|
56
|
+
"""
|
|
57
|
+
|
|
58
|
+
WM_JOB_ERROR_CODES = {-1: "Error return without specification.",
|
|
59
|
+
1: "Job failed to bootstrap CMSSW; likely a worker node issue.",
|
|
60
|
+
2: "Interrupt (ANSI).",
|
|
61
|
+
4: "Illegal instruction (ANSI).",
|
|
62
|
+
5: "Trace trap (POSIX).",
|
|
63
|
+
6: "Abort (ANSI) or IOT trap (4.2BSD).",
|
|
64
|
+
7: "BUS error (4.2BSD).",
|
|
65
|
+
8: "Floating point exception (ANSI).",
|
|
66
|
+
9: "killed, unblockable (POSIX) kill -9.",
|
|
67
|
+
11: "segmentation violation (ANSI) (most likely user application crashed).",
|
|
68
|
+
15: "Termination (ANSI).",
|
|
69
|
+
24: "Soft CPU limit exceeded (4.2 BSD).",
|
|
70
|
+
25: "File size limit exceeded (4.2 BSD).",
|
|
71
|
+
30: "Power failure restart (System V.).",
|
|
72
|
+
50: "Required application version not found at the site.",
|
|
73
|
+
64: "I/O error: cannot open data file (SEAL).",
|
|
74
|
+
65: "End of job from user application (CMSSW).",
|
|
75
|
+
66: "Application exception.",
|
|
76
|
+
70: "Invalid Arguments: Not all the required arguments for cmsRun is passed",
|
|
77
|
+
71: "Failed to initiate Scram project",
|
|
78
|
+
72: "Failed to enter Scram project directory",
|
|
79
|
+
73: "Failed to get Scram runtime", # Keeping old error here, as not sure from there previously it was taken: "Failed writing to read-only file system"
|
|
80
|
+
74: "Unable to untar sandbox",
|
|
81
|
+
81: "Job did not find functioning CMSSW on worker node.",
|
|
82
|
+
84: "Job failed to open local and fallback files.",
|
|
83
|
+
85: "Job failed to open local and fallback files.",
|
|
84
|
+
90: "Application exception.",
|
|
85
|
+
92: "Job failed to open local and fallback files.",
|
|
86
|
+
126: "Permission problem or command is not an executable",
|
|
87
|
+
127: "Command not found",
|
|
88
|
+
129: "Hangup (POSIX).",
|
|
89
|
+
132: "Illegal instruction (ANSI).",
|
|
90
|
+
133: "Trace trap (POSIX).",
|
|
91
|
+
134: "Abort (ANSI) or IOT trap (4.2 BSD) (most likely user application crashed).",
|
|
92
|
+
135: "Bus error (4.2 BSD).",
|
|
93
|
+
137: "SIGKILL; likely an unrelated batch system kill.",
|
|
94
|
+
139: "Segmentation violation (ANSI).",
|
|
95
|
+
143: "Termination (ANSI)(or incorporate in the msg text).",
|
|
96
|
+
147: "Error during attempted file stageout.",
|
|
97
|
+
151: "Error during attempted file stageout.",
|
|
98
|
+
152: "CPU limit exceeded (4.2 BSD).",
|
|
99
|
+
153: "File size limit exceeded (4.2 BSD).",
|
|
100
|
+
155: "Profiling alarm clock (4.2 BSD).",
|
|
101
|
+
195: "Job did not produce a FJR; will retry.",
|
|
102
|
+
243: "Timeout during attempted file stageout.",
|
|
103
|
+
7000: "Exception from command line processing.",
|
|
104
|
+
7001: "Configuration File Not Found.",
|
|
105
|
+
7002: "Configuration File Read Error.",
|
|
106
|
+
8001: "Other CMS Exception.",
|
|
107
|
+
8002: "std::exception (other than bad_alloc).",
|
|
108
|
+
8003: "Unknown Exception.",
|
|
109
|
+
8004: "std::bad_alloc (memory exhaustion).",
|
|
110
|
+
8005: "Bad Exception Type (e.g throwing a string).",
|
|
111
|
+
8006: "ProductNotFound.",
|
|
112
|
+
8007: "DictionaryNotFound.",
|
|
113
|
+
8008: "InsertFailure.",
|
|
114
|
+
8009: "Configuration.",
|
|
115
|
+
8010: "LogicError.",
|
|
116
|
+
8011: "UnimplementedFeature.",
|
|
117
|
+
8012: "InvalidReference.",
|
|
118
|
+
8013: "NullPointerError.",
|
|
119
|
+
8014: "NoProductSpecified.",
|
|
120
|
+
8015: "EventTimeout.",
|
|
121
|
+
8016: "EventCorruption.",
|
|
122
|
+
8017: "ScheduleExecutionFailure.",
|
|
123
|
+
8018: "EventProcessorFailure.",
|
|
124
|
+
8019: "FileInPathError.",
|
|
125
|
+
8020: "FileOpenError (Likely a site error).",
|
|
126
|
+
8021: "FileReadError (May be a site error).",
|
|
127
|
+
8022: "FatalRootError.",
|
|
128
|
+
8023: "MismatchedInputFiles.",
|
|
129
|
+
8024: "ProductDoesNotSupportViews.",
|
|
130
|
+
8025: "ProductDoesNotSupportPtr.",
|
|
131
|
+
8026: "NotFound (something other than a product or dictionary not found).",
|
|
132
|
+
8027: "FormatIncompatibility.",
|
|
133
|
+
8028: "FileOpenError with fallback.",
|
|
134
|
+
8029: "The job configuration has no input files specified for secondary input source.",
|
|
135
|
+
8030: "Exceeded maximum allowed VSize (ExceededResourceVSize).",
|
|
136
|
+
8031: "Exceeded maximum allowed RSS (ExceededResourceRSS).",
|
|
137
|
+
8032: "Exceeded maximum allowed time (ExceededResourceTime).",
|
|
138
|
+
8033: "Could not write output file (FileWriteError) (usually local disk problem).",
|
|
139
|
+
8034: "FileNameInconsistentWithGUID",
|
|
140
|
+
8501: "EventGenerationFailure",
|
|
141
|
+
9000: "cmsRun caught (SIGINT and SIGUSR2) signal.",
|
|
142
|
+
10031: "Directory VO_CMS_SW_DIR not found. ", # (CRAB3)
|
|
143
|
+
10032: "Failed to source CMS Environment setup script such as cmssset_default.sh, grid system or site equivalent script.", # (CRAB3)
|
|
144
|
+
10034: "Required application version is not found at the site.", # (CRAB3)
|
|
145
|
+
10040: "failed to generate cmsRun cfg file at runtime.", # (CRAB3)
|
|
146
|
+
10042: "Unable to stage-in wrapper tarball.", # (CRAB3)
|
|
147
|
+
10043: "Unable to bootstrap WMCore libraries (most likely site python is broken).", # (CRAB3)
|
|
148
|
+
11001: "Error during job bootstrap: A sandbox must be specified", # (WMA)
|
|
149
|
+
11002: "Error during job bootstrap: A job index must be specified", # (WMA)
|
|
150
|
+
11003: "Error during job bootstrap: VO_CMS_SW_DIR, OSG_APP, CVMFS or /cvmfs were not found.", # (WMA)
|
|
151
|
+
11004: "Error during job bootstrap: job environment does not contain the init.sh script.", # (WMA)
|
|
152
|
+
11005: "Error during job bootstrap: python isn't available on the worker node.", # (WMA)
|
|
153
|
+
50110: "Executable file is not found.", # (WMA)
|
|
154
|
+
50111: "Executable file has no exe permissions.", # (WMA)
|
|
155
|
+
50113: "Executable did not get enough arguments.", # (CRAB3)
|
|
156
|
+
50115: "cmsRun did not produce a valid job report at runtime (often means cmsRun segfaulted).", # (WMA, CRAB3)
|
|
157
|
+
50116: "Could not determine exit code of cmsRun executable at runtime.", # (WMA)
|
|
158
|
+
50513: "Failure to run SCRAM setup scripts.", # (WMA, CRAB3)
|
|
159
|
+
50660: "Application terminated by wrapper because using too much RAM (PSS).", # (WMA, CRAB3)
|
|
160
|
+
50662: "Application terminated by wrapper because using too much disk.", # (CRAB3)
|
|
161
|
+
50664: "Application terminated by wrapper because using too much Wall Clock time.", # (WMA, CRAB3)
|
|
162
|
+
50665: "Application terminated by wrapper because it stay idle too long.", # (CRAB3)
|
|
163
|
+
50666: "Job removed by condor for unknown reasons.", # (WMA, CRAB3)
|
|
164
|
+
50669: "Application terminated by wrapper for not defined reason.", # (CRAB3)
|
|
165
|
+
60302: "Output file(s) not found.", # (CRAB3)
|
|
166
|
+
60307: "General failure during files stage out.", # (WMA, CRAB3)
|
|
167
|
+
60311: "Local Stage Out Failure using site specific plugin.", # (WMA, CRAB3)
|
|
168
|
+
60312: "Failure in staging in log files during log collection (WMAgent).", # (WMA)
|
|
169
|
+
60313: "Failed to clean up any files that were no longer needed (WMAgent).", # (WMA)
|
|
170
|
+
60315: "StageOut initialisation error (Due to TFC, SITECONF etc).", # (WMA)
|
|
171
|
+
60317: "Forced timeout for stuck stage out.", # (To be used in CRAB3/ASO)
|
|
172
|
+
60318: "Internal error in Crab cmscp.py stageout script.", # (CRAB3)
|
|
173
|
+
60319: "Failed to do AlcaHarvest stageout.", # (WMA)
|
|
174
|
+
60320: "Failure to communicate with ASO server.", # (CRAB3)
|
|
175
|
+
60321: "Site related issue: no space, SE down, refused connection.", # (To be used in CRAB3/ASO)
|
|
176
|
+
60322: "User is not authorized to write to destination site.", # (To be used in CRAB3/ASO)
|
|
177
|
+
60323: "User quota exceeded.", # (To be used in CRAB3/ASO)
|
|
178
|
+
60324: "Other stageout exception.", # (To be used in CRAB3/ASO)
|
|
179
|
+
60401: "Failure to assemble LFN in direct-to-merge (WMAgent).", # (WMA)
|
|
180
|
+
60403: "Timeout during files stage out.", # (WMA, CRAB3)
|
|
181
|
+
60404: "Timeout during staging of log archives- status unknown (WMAgent).", # (WMA)
|
|
182
|
+
60405: "General failure to stage out log archives (WMAgent).", # (WMA)
|
|
183
|
+
60407: "Timeout in staging in log files during log collection (WMAgent).", # (WMA)
|
|
184
|
+
60408: "Failure to stage out of log files during log collection (WMAgent).", # (WMA)
|
|
185
|
+
60409: "Timeout in stage out of log files during log collection (WMAgent).", # (WMA)
|
|
186
|
+
60450: "No output files present in the report", # (WMA)
|
|
187
|
+
60451: "Output file lacked adler32 checksum (WMAgent).", # (WMA)
|
|
188
|
+
70318: "Failure in DQM upload.",
|
|
189
|
+
70452: "No run/lumi information in file (WMAgent).",
|
|
190
|
+
71101: "No sites are available to submit the job because the location of its input(s) do not pass the site whitelist/blacklist restrictions (WMAgent).",
|
|
191
|
+
71102: "The job can only run at a site that is currently in Aborted state (WMAgent).",
|
|
192
|
+
71103: "The job can run only at a site that is currently in Draining state (WMAgent).",
|
|
193
|
+
71104: "JobSubmitter component could not find a job pickle object.",
|
|
194
|
+
71105: "JobSubmitter component loaded an empty job pickle object.",
|
|
195
|
+
71300: "The job was killed by the WMAgent, reason is unknown (WMAgent).",
|
|
196
|
+
71301: "The job was killed by WMAgent because the site it was supposed to run at was set to Aborted (WMAgent).",
|
|
197
|
+
71302: "The job was killed by WMAgent because the site it was supposed to run at was set to Draining (WMAgent).",
|
|
198
|
+
71303: "The job was killed by WMAgent because the site it was supposed to run at was set to Down (WMAgent).",
|
|
199
|
+
71304: "The job was killed by the WMAgent for using too much wallclock time (WMAgent) Job status was Running.",
|
|
200
|
+
71305: "The job was killed by the WMAgent for using too much wallclock time (WMAgent) Job status was Pending.",
|
|
201
|
+
71306: "The job was killed by the WMAgent for using too much wallclock time (WMAgent) Job status was Error.",
|
|
202
|
+
71307: "The job was killed by the WMAgent for using too much wallclock time (WMAgent) Job status was Unkown.",
|
|
203
|
+
80000: "Internal error in CRAB job wrapper.", # CRAB3
|
|
204
|
+
80001: "No exit code set by job wrapper.", # CRAB3
|
|
205
|
+
80453: "Unable to determine pset hash from output file (CRAB3).",
|
|
206
|
+
90000: "Error in CRAB3 post-processing step (includes basically errors in stage out and file metadata upload).", # CRAB3 TODO: Need to separate. new stageout errors are 60321-60324 and other needed for file metadata.
|
|
207
|
+
99108: "Skipping this step due to a failure in a previous one.", # WMA
|
|
208
|
+
99109: "Uncaught exception in WMAgent step executor.", # WMA TODO: Maybe move to 7****?
|
|
209
|
+
99303: "Job failed and the original job report got lost",
|
|
210
|
+
99304: "Could not find jobCache directory. Job will be failed",
|
|
211
|
+
99305: "Found single input file with too many events to be processed in a pilot lifetime",
|
|
212
|
+
99400: "Job is killed by condor_rm or SYSTEM_PERIODIC_REMOVE",
|
|
213
|
+
99401: "Job is killed by unknown reason ",
|
|
214
|
+
99996: "Failed to find a step report in the worker node",
|
|
215
|
+
99997: "Failed to load job report",
|
|
216
|
+
99998: "Job report with size 0",
|
|
217
|
+
99999: "Some generic error with the job report"
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
# ======================================================================
|
|
221
|
+
# Removed error codes and messages which are not used. (Review date: 2015-12-04)
|
|
222
|
+
# ======================================================================
|
|
223
|
+
# 10001: "LD_LIBRARY_PATH is not defined.",
|
|
224
|
+
# 10002: "Failed to setup LCG_LD_LIBRAR_PATH.",
|
|
225
|
+
# 10016: "OSG $WORKING_DIR could not be created.",
|
|
226
|
+
# 10017: "OSG $WORKING_DIR could not be deleted.",
|
|
227
|
+
# 10018: "OSG $WORKING_DIR could not be deleted.",
|
|
228
|
+
# 10020: "Shell script cmsset_default.sh to setup cms environment is not found.",
|
|
229
|
+
# 10021: "Failed to scram application project using the afs release area.",
|
|
230
|
+
# 10022: "Failed to scram application project using CMS sw disribution on the LCG2.",
|
|
231
|
+
# 10030: "Middleware not identified.",
|
|
232
|
+
# 10033: "Platform is incompatible with the scram version.",
|
|
233
|
+
# 10035: "Scram Project Command Failed.", Not used
|
|
234
|
+
# 10036: "Scram Runtime Command Failed.",
|
|
235
|
+
# 10037: "Failed to find cms_site_config file in software area.",
|
|
236
|
+
# 10038: "Failed to find cms_site_catalogue.sh file in software area.",
|
|
237
|
+
# 10039: "cms_site_catalogue.sh failed to provide the catalogue.",
|
|
238
|
+
# 10041: "fail to find valid client for output stage out.",
|
|
239
|
+
# 50112: "User executable shell file is not found.",
|
|
240
|
+
# 50114: "OSG $WORKING_DIR could not be deleted.",
|
|
241
|
+
# 50117: "Could not update exit code in job report (a variation of 50115).",
|
|
242
|
+
# 50663: "Application terminated by wrapper because using too much CPU time.", Not used
|
|
243
|
+
# 50700: "Job Wrapper did not produce any usable output file.", Not used
|
|
244
|
+
# 50800: "Application segfaulted (likely user code problem).", Not used
|
|
245
|
+
# 50998: "Problem calculating file details (i.e. size, checksum etc).", Not used
|
|
246
|
+
# 50999: "OSG $WORKING_DIR could not be deleted.", Not used
|
|
247
|
+
# 60300: "Either OutputSE or OutputSE_DIR not defined.",
|
|
248
|
+
# 60301: "Neither zip nor tar exists.",
|
|
249
|
+
# 60303: "File already exists on the SE.",
|
|
250
|
+
# 60304: "Failed to create the summary file (production).",
|
|
251
|
+
# 60305: "Failed to create a zipped archive (production).",
|
|
252
|
+
# 60306: "Failed to copy and register output file.",
|
|
253
|
+
# 60308: "An output file was saved to fall back local SE after failing to copy to remote SE.",
|
|
254
|
+
# 60309: "Failed to create an output directory in the catalogue.",
|
|
255
|
+
# 60310: "Failed to register an output file in the catalogue.",
|
|
256
|
+
# 60313: "Failed to delete the output from the previous run via lcg-del command.", # Mh.. only lcg-del? Not used
|
|
257
|
+
# 60314: "Failed to invoke ProdAgent StageOut Script.", Not used
|
|
258
|
+
# 60316: "Failed to create a directory on the SE.", Not used
|
|
259
|
+
# 60317: "Forced timeout for stuck stage out.", # (To be used in CRAB3/ASO)
|
|
260
|
+
# 60402: "Failure to assemble LFN in direct-to-merge by event (WMAgent).", # (WMA)
|
|
261
|
+
# 60406: "Failure in staging in log files during log collection (WMAgent).", Not used
|
|
262
|
+
# 60410: "Failure in deleting log files in log collection (WMAgent).", # Not used
|
|
263
|
+
# 60411: "Timeout in deleting log files in log collection (WMAgent).", # Not used
|
|
264
|
+
# 60514: "PreScriptFailure.", # Not used anymore
|
|
265
|
+
# 60515: "PreScriptScramFailure.", # Not used anymore
|
|
266
|
+
# 60999: "SG $WORKING_DIR could not be deleted.", # Not used
|
|
267
|
+
# 70000: "Output_sandbox too big for WMS: output can not be retrieved.", Not used
|
|
268
|
+
# 70500: "Warning: problem with ModifyJobReport.", # More details here: https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideCrabFaq#Exit_code_70500 Not used!
|
|
269
|
+
# ======================================================================
|