Opened 7 years ago

Closed 7 years ago

#1247 closed defect (fixed)

ERROR: Tool "Command Line Interface" failed to start

Reported by: michaelclark@… Owned by: Eric Pettersen
Priority: normal Milestone:
Component: Core Version:
Keywords: Cc:
Blocked By: Blocking:
Notify when closed: Platform: all
Project: ChimeraX

Description

Hello ChimeraX team,
I am using chimerax0.6 via SBGRID distribution on a CentOS7 machine and
experienced a crash. After restarting computer and relaunching chimerax,
the command line interface does not load. The standard output upon
launching the program is below. Is there an easy fix to get the command
line back?
Thanks,
Michael

Traceback (most recent call last):
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/toolshed/info.py", line 485, in start_tool
    ti = api._api_caller.start_tool(api, session, self, tool_info)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/toolshed/__init__.py", line 965, in start_tool
    return cls._get_func(api, "start_tool")(session, ti.name)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/cmd_line/__init__.py", line 22, in start_tool
    return CommandLine.get_singleton(session)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/cmd_line/tool.py", line 226, in get_singleton
    return tools.get_singleton(session, CommandLine, 'Command Line
Interface', **kw)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/tools.py", line 214, in get_singleton
    tinst = tool_class(session, tool_name, **kw)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/cmd_line/tool.py", line 32, in __init__
    self.history_dialog = _HistoryDialog(self)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/cmd_line/tool.py", line 263, in __init__
    self.history = FIFOHistory(self.NUM_REMEMBERED, controller.session,
"command line")
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/history.py", line 139, in __init__
    obj = self._history.load()
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/history.py", line 96, in load
    return json.load(f)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/json/__init__.py",
line 299, in load
    parse_constant=parse_constant, object_pairs_hook=object_pairs_hook,
**kw)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/json/__init__.py",
line 354, in loads
    return _default_decoder.decode(s)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/json/decoder.py",
line 339, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/json/decoder.py",
line 357, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/tools.py", line 422, in start_tools
    bi.start_tool(session, tool_name)
  File "/programs/x86_64-linux/chimerax/0.6/lib/python3.6/
site-packages/chimerax/core/toolshed/info.py", line 491, in start_tool
    "start_tool() failed for tool %s in bundle %s:\n%s" % (tool_name,
self.name, str(e)))
chimerax.core.toolshed.ToolshedError: start_tool() failed for tool Command
Line Interface in bundle ChimeraX-CommandLine:
Expecting value: line 1 column 1 (char 0)
Tool "Command Line Interface" failed to start

Change History (3)

comment:1 by Eric Pettersen, 7 years ago

Component: UnassignedCore
Owner: set to Eric Pettersen
Platform: all
Project: ChimeraX
Status: newaccepted

comment:2 by Eric Pettersen, 7 years ago

Hi Michael,
To remedy your problem remove this file:

~/.local/share/ChimeraX/command line

I will try to make ChimeraX more robust in the face of a corrupted command-ine-history file. Thanks for reporting the problem.

--Eric

Eric Pettersen
UCSF Computer Graphics Lab

comment:3 by Eric Pettersen, 7 years ago

Resolution: fixed
Status: acceptedclosed

Catch the JSON decode error (due to the corrupted file) and treat the history as empty instead of throwing the error.

Note: See TracTickets for help on using tickets.