]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mgr: do not require NOTIFY_TYPES in python modules 57106/head
authorJohn Mulligan <jmulligan@redhat.com>
Fri, 26 Apr 2024 14:53:33 +0000 (10:53 -0400)
committerJohn Mulligan <jmulligan@redhat.com>
Fri, 26 Apr 2024 14:53:33 +0000 (10:53 -0400)
Many python mgr modules lack a NOTIFY_TYPES member apparently without
any downsides beyond an annoying message in the logs.  This includes
commonly used mgr modules like 'volumes' and 'cephadm'.  Stop emitting
an error for missing NOTIFY_TYPES by not assuming all mgr modules in
python should provide it. The return code is also changed to indicate
that this is not an error but the return from this function is never
checked and so it should have no impact. However, if someone started
using the return value in the future this would match the log change.

Fixes: https://tracker.ceph.com/issues/55835
Signed-off-by: John Mulligan <jmulligan@redhat.com>
src/mgr/PyModule.cc

index 084cf3ffc1eac44e784b122928c729091f216327..1083aede8dd77b9c7695810eaa90e4cc4a6eacd5 100644 (file)
@@ -515,8 +515,8 @@ int PyModule::load_notify_types()
 {
   PyObject *ls = PyObject_GetAttrString(pClass, "NOTIFY_TYPES");
   if (ls == nullptr) {
-    derr << "Module " << get_name() << " has missing NOTIFY_TYPES member" << dendl;
-    return -EINVAL;
+    dout(10) << "Module " << get_name() << " has no NOTIFY_TYPES member" << dendl;
+    return 0;
   }
   if (!PyObject_TypeCheck(ls, &PyList_Type)) {
     // Relatively easy mistake for human to make, e.g. defining COMMANDS