I upgraded from 14.2.15 -> 14.2.17 today and all went smoothly, except now I have an error that the "volumes" module wont start because the "typing" module is missing.

This is an Ubuntu Xenial monitor system.  We have 3 monitors running the ceph-mgr deamon, only the first one shows the error, the others do not, but they have all been upgraded and have identical packages installed.

The ceph-mgr log shows the following:

  File "/usr/share/ceph/mgr/volumes/__init__.py", line 2, in <module>

    from .module import Module

  File "/usr/share/ceph/mgr/volumes/module.py", line 10, in <module>

    from .fs.volume import VolumeClient

  File "/usr/share/ceph/mgr/volumes/fs/volume.py", line 13, in <module>

    from .operations.subvolume import open_subvol, create_subvol, remove_subvol, \

  File "/usr/share/ceph/mgr/volumes/fs/operations/subvolume.py", line 8, in <module>

    from .versions import loaded_subvolumes

  File "/usr/share/ceph/mgr/volumes/fs/operations/versions/__init__.py", line 9, in <module>

    from .subvolume_v1 import SubvolumeV1

  File "/usr/share/ceph/mgr/volumes/fs/operations/versions/subvolume_v1.py", line 9, in <module>

    from typing import List, Dict

ImportError: No module named typing



Looking at subvolume_v1.py, the import of "typing" is not protected from the ImportError exception like it is in other modules, should it be?  The "List" and "Dict" classes are never actually used in this module at all, so that line could probably just be removed entiresly.

 Why would this error only be occurring now in 14.2.17 and not previously in 14.2.15?

thanks,
   Wyllys Ingersoll