recompiled pycparser 2.14 breaks Cinder db sync and Nova UTs
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cinder |
Invalid
|
Undecided
|
Unassigned | ||
Designate |
Fix Released
|
Critical
|
Unassigned | ||
Ironic |
Fix Released
|
Critical
|
Unassigned | ||
Magnum |
Fix Released
|
Critical
|
Unassigned | ||
OpenStack Heat |
Fix Released
|
Undecided
|
Unassigned | ||
OpenStack Shared File Systems Service (Manila) |
Fix Released
|
Critical
|
Unassigned | ||
OpenStack-Ansible |
Fix Released
|
Undecided
|
Unassigned | ||
Rally |
Fix Released
|
Undecided
|
monika | ||
ec2-api |
Fix Released
|
Critical
|
Unassigned | ||
gce-api |
Fix Released
|
Critical
|
Unassigned | ||
networking-cisco |
Fix Released
|
Critical
|
Unassigned |
Bug Description
2016-10-02 23:32:34.069 | + lib/cinder:
2016-10-02 23:32:34.691 | Traceback (most recent call last):
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | from cinder.cmd.manage import main
2016-10-02 23:32:34.691 | File "/opt/stack/
2016-10-02 23:32:34.691 | from cinder import db
2016-10-02 23:32:34.691 | File "/opt/stack/
2016-10-02 23:32:34.691 | from cinder.db.api import * # noqa
2016-10-02 23:32:34.691 | File "/opt/stack/
2016-10-02 23:32:34.691 | from cinder.api import common
2016-10-02 23:32:34.691 | File "/opt/stack/
2016-10-02 23:32:34.691 | from cinder import utils
2016-10-02 23:32:34.691 | File "/opt/stack/
2016-10-02 23:32:34.691 | from os_brick import encryptors
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | from os_brick.encryptors import nop
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | from os_brick.encryptors import base
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | from os_brick import executor
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | from os_brick.privileged import rootwrap as priv_rootwrap
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | from oslo_privsep import capabilities as c
2016-10-02 23:32:34.691 | File "/usr/local/
2016-10-02 23:32:34.691 | ffi.cdef(CDEF)
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | self._cdef(csource, override=override, packed=packed)
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | self._parser.
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | self._internal_
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | ast, macros, csource = self._parse(
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | ast = _get_parser(
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | _parser_cache = pycparser.CParser()
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | outputdir=
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | self.lexer = lex.lex(
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | lexobj.
2016-10-02 23:32:34.692 | File "/usr/local/
2016-10-02 23:32:34.692 | titem.append(
2016-10-02 23:32:34.692 | File "/usr/lib/
2016-10-02 23:32:34.692 | return _compile(pattern, flags)
2016-10-02 23:32:34.692 | File "/usr/lib/
2016-10-02 23:32:34.692 | p = sre_compile.
2016-10-02 23:32:34.692 | File "/usr/lib/
2016-10-02 23:32:34.692 | "sorry, but this version only supports 100 named groups"
2016-10-02 23:32:34.692 | AssertionError: sorry, but this version only supports 100 named groups
Looks like this is due to a newly recompiled version of pycparser 2.14 as of Oct 2nd.
The upstream issue is:
summary: |
- 2016-10-02 23:32:34.069 | + lib/cinder:init_cinder:421 : - /usr/local/bin/cinder-manage --config-file /etc/cinder/cinder.conf db - sync 2016-10-02 23:32:34.691 | Traceback (most recent call last): - 2016-10-02 23:32:34.691 | File "/usr/local/bin/cinder-manage", line 6, - in <module> 2016-10-02 23:32:34.691 | from cinder.cmd.manage import - main 2016-10-02 23:32:34.691 | File - "/opt/stack/old/cinder/cinder/cmd/manage.py", line 77, in <module> - 2016-10-02 23:32:34.691 | from cinder import db 2016-10-02 - 23:32:34.691 | File "/opt/stack/old/cinder/cinder/db/__init__.py", - line 20, in <module> 2016-10-02 23:32:34.691 | from cinder.db.api - import * # noqa 2016-10-02 23:32:34.691 | File - "/opt/stack/old/cinder/cinder/db/api.py", line 43, in <module> - 2016-10-02 23:32:34.691 | from cinder.api import common 2016-10-02 - 23:32:34.691 | File "/opt/stack/old/cinder/cinder/api/common.py", line - 30, in <module> 2016-10-02 23:32:34.691 | from cinder import utils - 2016-10-02 23:32:34.691 | File - "/opt/stack/old/cinder/cinder/utils.py", line 40, in <module> 2016-10-02 - 23:32:34.691 | from os_brick import encryptors 2016-10-02 - 23:32:34.691 | File "/usr/local/lib/python2.7/dist- - packages/os_brick/encryptors/__init__.py", line 16, in <module> - 2016-10-02 23:32:34.691 | from os_brick.encryptors import nop - 2016-10-02 23:32:34.691 | File "/usr/local/lib/python2.7/dist- - packages/os_brick/encryptors/nop.py", line 16, in <module> 2016-10-02 - 23:32:34.691 | from os_brick.encryptors import base 2016-10-02 - 23:32:34.691 | File "/usr/local/lib/python2.7/dist- - packages/os_brick/encryptors/base.py", line 19, in <module> 2016-10-02 - 23:32:34.691 | from os_brick import executor 2016-10-02 23:32:34.691 - | File "/usr/local/lib/python2.7/dist-packages/os_brick/executor.py", - line 21, in <module> 2016-10-02 23:32:34.691 | from - os_brick.privileged import rootwrap as priv_rootwrap 2016-10-02 - 23:32:34.691 | File "/usr/local/lib/python2.7/dist- - packages/os_brick/privileged/__init__.py", line 13, in <module> - 2016-10-02 23:32:34.691 | from oslo_privsep import capabilities as c - 2016-10-02 23:32:34.691 | File "/usr/local/lib/python2.7/dist- - packages/oslo_privsep/capabilities.py", line 73, in <module> 2016-10-02 - 23:32:34.691 | ffi.cdef(CDEF) 2016-10-02 23:32:34.692 | File - "/usr/local/lib/python2.7/dist-packages/cffi/api.py", line 105, in cdef - 2016-10-02 23:32:34.692 | self._cdef(csource, override=override, - packed=packed) 2016-10-02 23:32:34.692 | File - "/usr/local/lib/python2.7/dist-packages/cffi/api.py", line 119, in _cdef - 2016-10-02 23:32:34.692 | self._parser.parse(csource, - override=override, **options) 2016-10-02 23:32:34.692 | File - "/usr/local/lib/python2.7/dist-packages/cffi/cparser.py", line 299, in - parse 2016-10-02 23:32:34.692 | self._internal_parse(csource) - 2016-10-02 23:32:34.692 | File "/usr/local/lib/python2.7/dist- - packages/cffi/cparser.py", line 304, in _internal_parse 2016-10-02 - 23:32:34.692 | ast, macros, csource = self._parse(csource) - 2016-10-02 23:32:34.692 | File "/usr/local/lib/python2.7/dist- - packages/cffi/cparser.py", line 260, in _parse 2016-10-02 23:32:34.692 | - ast = _get_parser().parse(csource) 2016-10-02 23:32:34.692 | File - "/usr/local/lib/python2.7/dist-packages/cffi/cparser.py", line 40, in - _get_parser 2016-10-02 23:32:34.692 | _parser_cache = - pycparser.CParser() 2016-10-02 23:32:34.692 | File - "/usr/local/lib/python2.7/dist-packages/pycparser/c_parser.py", line 87, - in __init__ 2016-10-02 23:32:34.692 | outputdir=taboutputdir) - 2016-10-02 23:32:34.692 | File "/usr/local/lib/python2.7/dist- - packages/pycparser/c_lexer.py", line 66, in build 2016-10-02 - 23:32:34.692 | self.lexer = lex.lex(object=self, **kwargs) - 2016-10-02 23:32:34.692 | File "/usr/local/lib/python2.7/dist- - packages/pycparser/ply/lex.py", line 911, in lex 2016-10-02 23:32:34.692 - | lexobj.readtab(lextab, ldict) 2016-10-02 23:32:34.692 | File - "/usr/local/lib/python2.7/dist-packages/pycparser/ply/lex.py", line 233, - in readtab 2016-10-02 23:32:34.692 | titem.append((re.compile(pat, - lextab._lexreflags | re.VERBOSE), _names_to_funcs(func_name, fdict))) - 2016-10-02 23:32:34.692 | File "/usr/lib/python2.7/re.py", line 194, - in compile 2016-10-02 23:32:34.692 | return _compile(pattern, flags) - 2016-10-02 23:32:34.692 | File "/usr/lib/python2.7/re.py", line 249, - in _compile 2016-10-02 23:32:34.692 | p = - sre_compile.compile(pattern, flags) 2016-10-02 23:32:34.692 | File - "/usr/lib/python2.7/sre_compile.py", line 583, in compile 2016-10-02 - 23:32:34.692 | "sorry, but this version only supports 100 named - groups" 2016-10-02 23:32:34.692 | AssertionError: sorry, but this - version only supports 100 named groups + cinder-manage db sync fails with recompiled pycparser 2.14 |
Changed in cinder: | |
status: | New → Confirmed |
Changed in ironic: | |
status: | New → Confirmed |
importance: | Undecided → Critical |
Changed in heat: | |
status: | New → Confirmed |
Changed in trove: | |
importance: | Undecided → Critical |
status: | New → Confirmed |
Changed in manila: | |
status: | New → Confirmed |
Changed in designate: | |
status: | New → Confirmed |
importance: | Undecided → Critical |
Changed in rally: | |
status: | New → Confirmed |
Changed in ec2-api: | |
importance: | Undecided → Critical |
status: | New → Confirmed |
Changed in gce-api: | |
importance: | Undecided → Critical |
status: | New → Confirmed |
Changed in magnum: | |
importance: | Undecided → Critical |
status: | New → Confirmed |
Changed in networking-cisco: | |
importance: | Undecided → Critical |
status: | New → Confirmed |
Changed in trove: | |
status: | Confirmed → Fix Committed |
Changed in ironic: | |
status: | Confirmed → Fix Released |
Changed in cinder: | |
status: | Confirmed → Invalid |
Changed in ec2-api: | |
status: | Confirmed → Fix Released |
Changed in gce-api: | |
status: | Confirmed → Fix Released |
Changed in designate: | |
status: | Confirmed → Fix Released |
Changed in manila: | |
importance: | Undecided → Critical |
Changed in heat: | |
status: | Confirmed → Fix Released |
Changed in magnum: | |
status: | Confirmed → Fix Released |
no longer affects: | trove |
Changed in manila: | |
assignee: | nobody → monika (monikaparkar25) |
Changed in rally: | |
assignee: | nobody → monika (monikaparkar25) |
Changed in rally: | |
status: | Confirmed → Fix Released |
Changed in networking-cisco: | |
assignee: | nobody → Rajat Sharma (tajar29) |
Changed in networking-cisco: | |
assignee: | Rajat Sharma (tajar29) → nobody |
Changed in networking-cisco: | |
status: | Confirmed → Fix Released |
Changed in manila: | |
assignee: | monika (monikaparkar25) → nobody |
status: | Confirmed → Fix Released |
Most of our gate jobs are impacted (Nova UTs, Tempest tests, Grenade checks) by a new respin of pycparser that raises an AssertionError when imported.
Note that not only Nova but a lot of OpenStack projects are impacted : logstash. openstack. org/#/dashboard /file/logstash. json?query= message: %20\%22AssertionEr ror:%20sorry, %20but% 20this% 20version% 20only% 20supports% 20100%20named% 20groups\ %22&from= 24h
http://