[Bug 1840023] Re: PEP479 in ceph cli help command

James Page james.page at ubuntu.com
Thu Apr 9 09:30:22 UTC 2020


also OK on eoan

** Changed in: ceph (Ubuntu)
       Status: New => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ceph in Ubuntu.
https://bugs.launchpad.net/bugs/1840023

Title:
  PEP479 in ceph cli help command

Status in ceph package in Ubuntu:
  Fix Released

Bug description:
  Affected ubuntu version: Current stable version (19.04). 
  Installed kernel: 5.0.0-13
  Python2 version: 2.7.16
  Python3 version: 3.7.3
  Ceph version: 13.2.6 (7b695f835b03642f85998b2ae7b6dd093d9fbce4) mimic (stable)

  To reproduce:

  Install ceph (via ceph-deploy or otherwise) from the ubuntu
  repository.

  Run: `ceph --help`

  Below the section 'Monitor commands' the expected output is a list of
  commands that can be used to manipulate ceph monitors. Instead, the
  output is:

  Traceback (most recent call last):
    File "/usr/bin/ceph", line 443, in wrap
      raise StopIteration
  StopIteration

  The above exception was the direct cause of the following exception:

  Traceback (most recent call last):
    File "/usr/bin/ceph", line 1241, in <module>
      retval = main()
    File "/usr/bin/ceph", line 1024, in main
      return do_extended_help(parser, childargs, ('mon', ''), ' '.join(childargs))
    File "/usr/bin/ceph", line 390, in do_extended_help
      return help_for_target(target, partial)
    File "/usr/bin/ceph", line 387, in help_for_target
      return help_for_sigs(outbuf.decode('utf-8'), partial)
    File "/usr/bin/ceph", line 373, in help_for_sigs
      partial=partial))
    File "/usr/bin/ceph", line 468, in format_help
      siglines = [l for l in wrap(concise, sig_width, 1)]
    File "/usr/bin/ceph", line 468, in <listcomp>
      siglines = [l for l in wrap(concise, sig_width, 1)]
  RuntimeError: generator raised StopIteration

  With an earlier python version and ceph version, this section of the
  output looked like this:

   Monitor commands:
   =================
  [Contacting monitor, timeout after 5 seconds]
  auth add <entity> {<caps> [<caps>...]}   add auth info for <entity> from input
                                            file, or random key if no input is
                                            given, and/or any caps specified in
                                            the command
  auth caps <entity> <caps> [<caps>...]    update caps for <name> from caps
                                            specified in the command
  auth del <entity>                        delete all caps for <name>
  auth export {<entity>}                   write keyring for requested entity, or
                                            master keyring if none given
  auth get <entity>                        write keyring file with requested key
  auth get-key <entity>                    display requested key
  auth get-or-create <entity> {<caps>      add auth info for <entity> from input
   [<caps>...]}                             file, or random key if no input given,
                                            and/or any caps specified in the
                                            command
  auth get-or-create-key <entity> {<caps>  get, or add, key for <name> from
   [<caps>...]}                             system/caps pairs specified in the
                                            command.  If key already exists, any
                                            given caps must match the existing
                                            caps for that key.
  auth import                              auth import: read keyring file from -i
                                            <file>
  (further output truncated). 

  Further investigation reveals:

  The likely cause is a python 3.7 change denoted PEP479 where
  StopIteration exceptions are now errors. Also see
  https://docs.python.org/3/whatsnew/3.7.html.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ceph/+bug/1840023/+subscriptions



More information about the Ubuntu-openstack-bugs mailing list