Repository: dmwm/wmcore
Issue: [py2py3] Python3 does not have an 'exceptions' module

**Impact of the bug**
WMCore in general

**Describe the bug**
Some of the python3 unit tests crash when importing `exceptions` module, see the full traceback in [1]

**How to reproduce it**
```
nosetests test/python/WMCore_t/WMSpec_t/Steps_t/Executors_t/LogArch_t.py
```

**Expected behavior**
Exception handling should be functional and consistent in python2 and python3.

**Additional context and error message**
[1]
```
======================================================================
ERROR: testUnitTestBackend (WMCore_t.WMSpec_t.Steps_t.Executors_t.LogArch_t.LogArchiveTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/dmwm/wmcore_unittest/WMCore/test/python/WMCore_t/WMSpec_t/Steps_t/Executors_t/LogArch_t.py", line 119, in setUp
    taskMaker.processWorkload()
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/WMSpec/Makers/TaskMaker.py", line 127, in processWorkload
    sandboxCreator.makeSandbox(self.workdir, self.workload)
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/WMRuntime/SandboxCreator.py", line 108, in makeSandbox
    fetcherInstances = list(map(getFetcher, fetcherNames))
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/WMSpec/Steps/StepFactory.py", line 196, in getFetcher
    return _FetcherFactory.loadObject(fetcherName)
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/WMFactory.py", line 58, in loadObject
    module = __import__(module, globals(), locals(), [classname])
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/WMSpec/Steps/Fetchers/PileupFetcher.py", line 17, in <module>
    from WMCore.Services.DBS.DBSReader import DBSReader
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/Services/DBS/DBSReader.py", line 9, in <module>
    from WMCore.Services.DBS.DBSErrors import DBSReaderError
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/Services/DBS/DBSErrors.py", line 4, in <module>
    from WMCore.Services.DBS.ProdException import ProdException
  File "/home/dmwm/wmcore_unittest/WMCore/src/python/WMCore/Services/DBS/ProdException.py", line 11, in <module>
    import exceptions
ModuleNotFoundError: No module named 'exceptions'
```

Changed files:
src/python/WMComponent/DBS3Buffer/Oracle/ListRunsWorkflow.py, src/python/WMCore/WMSpec/Makers/Handlers/MakeJob.py, src/python/WMCore/Services/DBS/ProdException.py, src/python/WMCore/WMSpec/Makers/Handlers/MakeJobSlave.py

diff --git a/src/python/WMComponent/DBS3Buffer/Oracle/ListRunsWorkflow.py b/src/python/WMComponent/DBS3Buffer/Oracle/ListRunsWorkflow.py
index 87b644e5e..34591f4cf 100644
--- a/src/python/WMComponent/DBS3Buffer/Oracle/ListRunsWorkflow.py
+++ b/src/python/WMComponent/DBS3Buffer/Oracle/ListRunsWorkflow.py
@@ -8,7 +8,6 @@ For a given workflow, list the processed runs according to DBSBUFFER tables
 from future.utils import viewvalues
 
 import threading
-import exceptions
 
 from WMCore.Database.DBFormatter import DBFormatter
 
diff --git a/src/python/WMCore/Services/DBS/ProdException.py b/src/python/WMCore/Services/DBS/ProdException.py
index 2fa63f569..15bf08928 100644
--- a/src/python/WMCore/Services/DBS/ProdException.py
+++ b/src/python/WMCore/Services/DBS/ProdException.py
@@ -8,10 +8,15 @@ General Exception class for Prod modules
 
 from future.utils import viewitems
 
-import exceptions
+try:
+    import exceptions
+except ImportError:
+    import builtins as exceptions
+
 import inspect
 import logging
 
+
 class ProdException(exceptions.Exception):
     """
     _ProdException_
diff --git a/src/python/WMCore/WMSpec/Makers/Handlers/MakeJob.py b/src/python/WMCore/WMSpec/Makers/Handlers/MakeJob.py
index 76e2eba5e..ae7d1df40 100644
--- a/src/python/WMCore/WMSpec/Makers/Handlers/MakeJob.py
+++ b/src/python/WMCore/WMSpec/Makers/Handlers/MakeJob.py
@@ -11,7 +11,6 @@ __all__ = []
 from WMCore.Agent.BaseHandler import BaseHandler
 from WMCore.ThreadPool.ThreadPool import ThreadPool
 
-import exceptions
 import threading
 
 
diff --git a/src/python/WMCore/WMSpec/Makers/Handlers/MakeJobSlave.py b/src/python/WMCore/WMSpec/Makers/Handlers/MakeJobSlave.py
index 8747d9e0f..877f0ecd3 100644
--- a/src/python/WMCore/WMSpec/Makers/Handlers/MakeJobSlave.py
+++ b/src/python/WMCore/WMSpec/Makers/Handlers/MakeJobSlave.py
@@ -26,7 +26,6 @@ from WMCore.WMSpec.Makers.Interface.CreateWorkArea import CreateWorkArea
 import os
 import string
 import logging
-import exceptions
 import time
 import threading