Project

General

Profile

Bug #43029

mgr/dashboard: RBD mirroring page results in "500 - internal server error"

Added by Jason Dillaman 3 months ago. Updated about 1 month ago.

Status:
Resolved
Priority:
Normal
Category:
dashboard/rbd-mirror
Target version:
% Done:

0%

Source:
Tags:
Backport:
nautilus
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature:

Description

After restarting a rbd-mirror daemon, the dashboard will start to report "500 - internal server error" via popups in the upper right corner.

2019-11-26T10:36:35.173-0500 7ffad702a700 -1 mgr get_metadata_python Requested missing service rbd-mirror.4136
2019-11-26T10:36:35.173-0500 7ffad702a700 -1 mgr get_daemon_status_python Requested missing service rbd-mirror.4136
2019-11-26T10:36:35.173-0500 7ffad702a700  0 mgr[dashboard] Error while calling fn=<function get_daemons_and_pools at 0x7ffae7792f80> ex='NoneType' object is not subscriptable
Traceback (most recent call last):
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/tools.py", line 153, in run
    val = self.fn(*self.args, **self.kwargs)
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/rbd_mirroring.py", line 182, in get_daemons_and_pools
    daemons = get_daemons()
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/rbd_mirroring.py", line 53, in get_daemons
    status = json.loads(status['json'])
TypeError: 'NoneType' object is not subscriptable
2019-11-26T10:36:35.174-0500 7ffad146b700  0 mgr[dashboard] [26/Nov/2019:10:36:35] HTTP 
Traceback (most recent call last):
  File "/usr/lib/python3.7/site-packages/cherrypy/_cprequest.py", line 628, in respond
    self._do_respond(path_info)
  File "/usr/lib/python3.7/site-packages/cherrypy/_cprequest.py", line 687, in _do_respond
    response.body = self.handler()
  File "/usr/lib/python3.7/site-packages/cherrypy/lib/encoding.py", line 219, in __call__
    self.body = self.oldhandler(*args, **kwargs)
  File "/usr/lib/python3.7/site-packages/cherrypy/_cptools.py", line 230, in wrap
    return self.newhandler(innerfunc, *args, **kwargs)
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/services/exception.py", line 88, in dashboard_exception_handler
    return handler(*args, **kwargs)
  File "/usr/lib/python3.7/site-packages/cherrypy/_cpdispatch.py", line 54, in __call__
    return self.callable(*self.args, **self.kwargs)
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/__init__.py", line 657, in inner
    ret = func(*args, **kwargs)
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/summary.py", line 94, in __call__
    result['rbd_mirroring'] = self._rbd_mirroring()
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/summary.py", line 23, in _rbd_mirroring
    _, data = get_daemons_and_pools()
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/tools.py", line 250, in wrapper
    return rvc.run(fn, args, kwargs)
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/tools.py", line 232, in run
    raise self.exception
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/tools.py", line 153, in run
    val = self.fn(*self.args, **self.kwargs)
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/rbd_mirroring.py", line 182, in get_daemons_and_pools
    daemons = get_daemons()
  File "/home/jdillaman/ceph/src/pybind/mgr/dashboard/controllers/rbd_mirroring.py", line 53, in get_daemons
    status = json.loads(status['json'])
TypeError: 'NoneType' object is not subscriptable

Related issues

Duplicated by mgr - Bug #43008: mgr/dashboard: a failure in rbd-mirror makes other dashboard pages fail Duplicate
Copied to mgr - Backport #43212: nautilus: mgr/dashboard: RBD mirroring page results in "500 - internal server error" Resolved

History

#1 Updated by Jason Dillaman 3 months ago

  • Status changed from In Progress to Fix Under Review
  • Pull request ID set to 31907

#2 Updated by Ricardo Marques 3 months ago

Seems to be a duplicate of https://tracker.ceph.com/issues/43008

#3 Updated by Ricardo Marques 3 months ago

  • Subject changed from [dashboard] RBD mirroring page results in "500 - internal server error" to mgr/dashboard: RBD mirroring page results in "500 - internal server error"
  • Category set to dashboard/rbd-mirror
  • Target version set to v15.0.0

#4 Updated by Ricardo Marques 3 months ago

  • Duplicated by Bug #43008: mgr/dashboard: a failure in rbd-mirror makes other dashboard pages fail added

#5 Updated by Jason Dillaman 3 months ago

  • Status changed from Fix Under Review to Pending Backport

#6 Updated by Jason Dillaman 3 months ago

  • Copied to Backport #43212: nautilus: mgr/dashboard: RBD mirroring page results in "500 - internal server error" added

#7 Updated by Nathan Cutler about 1 month ago

  • Status changed from Pending Backport to Resolved

While running with --resolve-parent, the script "backport-create-issue" noticed that all backports of this issue are in status "Resolved" or "Rejected".

Also available in: Atom PDF