Fuel CLI throws error

Bug #1411238 reported by Sergii Golovatiuk
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Invalid
Medium
Maciej Kwiek
5.0.x
Won't Fix
Medium
Fuel Python (Deprecated)
5.1.x
Won't Fix
Medium
Fuel Python (Deprecated)
6.0.x
Won't Fix
Medium
Fuel Python (Deprecated)
7.0.x
Won't Fix
Medium
Fuel Python (Deprecated)

Bug Description

This bug was found on 5.0.1 environment. When you run

fuel node

it generates this error

[root@fuel ~]# fuel node | grep control
Traceback (most recent call last):
  File "/usr/bin/fuel", line 9, in <module>
    load_entry_point('fuelclient==0.2', 'console_scripts', 'fuel')()
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/error.py", line 88, in wrapper
    handle_exceptions(exc)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/error.py", line 86, in wrapper
    return func(*args, **kwargs)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/parser.py", line 144, in main
    parser.parse()
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/parser.py", line 76, in parse
    actions[parsed_params.action].action_func(parsed_params)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/actions/base.py", line 43, in action_func
    method(params)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/actions/node.py", line 232, in list
    node_collection = NodeCollection.get_all()
  File "/usr/lib/python2.6/site-packages/fuelclient/objects/node.py", line 149, in get_all
    return cls(Node.get_all())
  File "/usr/lib/python2.6/site-packages/fuelclient/objects/base.py", line 62, in get_all
    return map(cls.init_with_data, cls.get_all_data())
  File "/usr/lib/python2.6/site-packages/fuelclient/objects/base.py", line 58, in get_all_data
    return cls.connection.get_request(cls.class_api_path)
  File "/usr/lib/python2.6/site-packages/fuelclient/client.py", line 92, in get_request
    request.read()
  File "/usr/lib64/python2.6/json/__init__.py", line 307, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.6/json/decoder.py", line 319, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.6/json/decoder.py", line 336, in raw_decode
    obj, end = self._scanner.iterscan(s, **kw).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 217, in JSONArray
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 177, in JSONObject
    key, end = scanstring(s, end, encoding, strict)
ValueError: Unterminated string starting at: line 1 column 57056 (char 57056)

This issue is sporadic. "fule node" may work on one run then may throw error, then work again.

Changed in fuel:
assignee: nobody → Fuel Python Team (fuel-python)
Revision history for this message
Tomasz Adam Jaroszewski (tjaroszewski) wrote :

Additional error from the same environment:

[root@fuel ~]# fuel nodes
Traceback (most recent call last):
  File "/usr/bin/fuel", line 9, in <module>
    load_entry_point('fuelclient==0.2', 'console_scripts', 'fuel')()
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/error.py", line 88, in wrapper
    handle_exceptions(exc)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/error.py", line 86, in wrapper
    return func(*args, **kwargs)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/parser.py", line 144, in main
    parser.parse()
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/parser.py", line 76, in parse
    actions[parsed_params.action].action_func(parsed_params)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/actions/base.py", line 43, in action_func
    method(params)
  File "/usr/lib/python2.6/site-packages/fuelclient/cli/actions/node.py", line 232, in list
    node_collection = NodeCollection.get_all()
  File "/usr/lib/python2.6/site-packages/fuelclient/objects/node.py", line 149, in get_all
    return cls(Node.get_all())
  File "/usr/lib/python2.6/site-packages/fuelclient/objects/base.py", line 62, in get_all
    return map(cls.init_with_data, cls.get_all_data())
  File "/usr/lib/python2.6/site-packages/fuelclient/objects/base.py", line 58, in get_all_data
    return cls.connection.get_request(cls.class_api_path)
  File "/usr/lib/python2.6/site-packages/fuelclient/client.py", line 92, in get_request
    request.read()
  File "/usr/lib64/python2.6/json/__init__.py", line 307, in loads
    return _default_decoder.decode(s)
  File "/usr/lib64/python2.6/json/decoder.py", line 319, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib64/python2.6/json/decoder.py", line 336, in raw_decode
    obj, end = self._scanner.iterscan(s, **kw).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 217, in JSONArray
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 183, in JSONObject
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 183, in JSONObject
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 217, in JSONArray
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib64/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib64/python2.6/json/decoder.py", line 193, in JSONObject
    raise ValueError(errmsg("Expecting , delimiter", s, end - 1))
ValueError: Expecting , delimiter: line 1 column 57071 (char 57071)

Changed in fuel:
importance: Undecided → Medium
Dmitry Ilyin (idv1985)
Changed in fuel:
status: New → Confirmed
Dmitry Pyzhov (dpyzhov)
Changed in fuel:
milestone: none → 6.1
Mike Scherbakov (mihgen)
Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Roman Prykhodchenko (romcheg)
Changed in fuel:
milestone: 6.1 → 7.0
Revision history for this message
Vladimir Sharshov (vsharshov) wrote :

Rare error. Workaround: run command again. Known issue. Moving to 8.0

Changed in fuel:
milestone: 7.0 → 8.0
tags: added: known-issue module-client
no longer affects: fuel/8.0.x
Changed in fuel:
milestone: 7.0 → 8.0
Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Maciej Kwiek (maciej-iai)
Revision history for this message
Maciej Kwiek (maciej-iai) wrote :

I was not able to reproduce it, I ran this command:

time while fuel node; do :; done

to run fuel node for 83 minutes, there was no error. Marking as incomplete, need steps to reproduce.

Changed in fuel:
status: Confirmed → Invalid
status: Invalid → Incomplete
Revision history for this message
Vitaly Sedelnik (vsedelnik) wrote :

Won't Fix for -updates milestones because of Medium importance

Revision history for this message
Maciej Kwiek (maciej-iai) wrote :

Could not reproduce, marking as invalid.

Changed in fuel:
status: Incomplete → Invalid
Dmitry Pyzhov (dpyzhov)
tags: added: area-python
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.