Uploaded image for project: 'openATTIC'
  1. openATTIC
  2. OP-2741

The CRUSH Map shows a toasty error, if connection to cluster fails

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 3.5.0
    • Fix Version/s: None
    • Component/s: Backend: Ceph
    • Labels:
    • Sprint:
      Sprint 33

      Description

      By merging the following pull request https://bitbucket.org/openattic/openattic/pull-requests/586 the CRUSH Map editor will show a toasty error during loading (see screenshot).

      I can find the following Traceback:

      2017-09-29 17:22:51,683 30413 mod_wsgi ERROR exception#custom_handler - Internal Server Error: None
      Traceback (most recent call last):
        File "/usr/lib/python2.7/site-packages/rest_framework/views.py", line 400, in dispatch
          response = handler(request, *args, **kwargs)
        File "/srv/openattic/backend/ceph/restapi.py", line 75, in crushmap
          data = CrushmapVersionSerializer(self.get_object().get_crushmap(), many=False, read_only=True).data
        File "/srv/openattic/backend/ceph/models.py", line 173, in get_crushmap
          return CrushmapVersion.objects.get()
        File "/usr/lib/python2.7/site-packages/django/db/models/manager.py", line 151, in get
          return self.get_queryset().get(*args, **kwargs)
        File "/srv/openattic/backend/nodb/models.py", line 210, in get
          num = len(filtered_data)
        File "/srv/openattic/backend/nodb/models.py", line 181, in __len__
          return len(self._filtered_data)
        File "/usr/lib/python2.7/site-packages/django/utils/functional.py", line 49, in __get__
          res = instance.__dict__[self.func.__name__] = self.func(instance)
        File "/srv/openattic/backend/nodb/models.py", line 164, in _filtered_data
          filtered = [obj for obj in self._data()
        File "/srv/openattic/backend/nodb/models.py", line 93, in _data
          objects = self.model.get_all_objects(context, query=self._query)
        File "/srv/openattic/backend/ceph/models.py", line 1001, in get_all_objects
          crushmap = RadosMixin.mon_api(fsid).osd_crush_dump()
        File "/srv/openattic/backend/ceph/librados.py", line 484, in osd_crush_dump
          return self._call_mon_command('osd crush dump')
        File "/srv/openattic/backend/ceph/librados.py", line 990, in _call_mon_command
          timeout)
        File "/srv/openattic/backend/ceph/librados.py", line 377, in call_librados
          client = clients[fsid]
        File "/srv/openattic/backend/ceph/librados.py", line 362, in __getitem__
          self.instances[fsid] = ClusterConf.from_fsid(fsid).client
        File "/usr/lib/python2.7/site-packages/django/utils/functional.py", line 49, in __get__
          res = instance.__dict__[self.func.__name__] = self.func(instance)
        File "/srv/openattic/backend/ceph/librados.py", line 158, in client
          return Client(self.file_path, self.keyring)
        File "/srv/openattic/backend/ceph/librados.py", line 234, in __init__
          self.connect(self._conf_file)
        File "/srv/openattic/backend/ceph/librados.py", line 249, in connect
          self._cluster.connect()
        File "rados.pyx", line 875, in rados.Rados.connect (/home/abuild/rpmbuild/BUILD/ceph-12.2.0+git.1506009682.0e5b4307f3/build/src/pybind/rados/pyrex/rados.c:10952)
      ObjectNotFound: [errno 2] error connecting to the cluster
      

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              rimarques Ricardo Marques
              Reporter:
              tdehler Dehler, Tatjana
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated: