Modify

Opened 23 months ago

Last modified 7 months ago

#10452 assigned defect

OSError: [Errno 2] No such file or directory

Reported by: rjollos Owned by: rjollos
Priority: normal Component: MasterTicketsPlugin
Severity: normal Keywords:
Cc: coderanger Trac Release: 0.12

Description

How to Reproduce

While doing a GET operation on /depgraph/milestone/milestone1, Trac issued an internal error.

(please provide additional details here)

Request parameters:

{}

User agent: Mozilla/5.0 (X11; Linux i686) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1229.79 Safari/537.4

System Information

Trac 0.12
Genshi 0.6
Pygments 1.3.1
pysqlite 2.6.0
Python 2.6.6 (r266:84292, Dec 27 2010, 00:02:40)
[GCC 4.4.5]
setuptools 0.6
SQLite 3.7.3
Subversion 1.7.5 (r1336830)
jQuery 1.4.2

Enabled Plugins

TracMasterTickets 3.0.2

Python Traceback

Traceback (most recent call last):
  File "/home/user/Workspace/th7945/trac-0.12/trac/web/main.py", line 513, in _dispatch_request
    dispatcher.dispatch(req)
  File "/home/user/Workspace/th7945/trac-0.12/trac/web/main.py", line 256, in dispatch
    content_type)
  File "/home/user/Workspace/th7945/trac-0.12/trac/web/chrome.py", line 844, in render_template
    stream.render(method, doctype=doctype, out=buffer)
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 183, in render
    return encode(generator, method=method, encoding=encoding, out=out)
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/output.py", line 58, in encode
    for chunk in iterator:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/output.py", line 339, in __call__
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/output.py", line 826, in __call__
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/output.py", line 670, in __call__
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/output.py", line 771, in __call__
    for kind, data, pos in chain(stream, [(None, None, None)]):
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/output.py", line 586, in __call__
    for ev in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 288, in _ensure
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 288, in _ensure
    for event in stream:
  File "/home/user/Workspace/th7945/trac-0.12/trac/web/chrome.py", line 945, in _strip_accesskeys
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 288, in _ensure
    for event in stream:
  File "/home/user/Workspace/th7945/trac-0.12/trac/web/chrome.py", line 934, in _generate
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 288, in _ensure
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 605, in _include
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/markup.py", line 378, in _match
    ctxt, start=idx + 1, **vars):
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/markup.py", line 378, in _match
    ctxt, start=idx + 1, **vars):
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/markup.py", line 327, in _match
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 545, in _flatten
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 288, in _ensure
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/path.py", line 588, in _generate
    subevent = next()
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 605, in _include
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/markup.py", line 316, in _strip
    event = next()
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 545, in _flatten
    for kind, data, pos in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/core.py", line 288, in _ensure
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/path.py", line 588, in _generate
    subevent = next()
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 605, in _include
    for event in stream:
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/markup.py", line 316, in _strip
    event = next()
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 565, in _flatten
    result = _eval_expr(data, ctxt, vars)
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/base.py", line 277, in _eval_expr
    retval = expr.evaluate(ctxt)
  File "/home/user/Workspace/th7945/genshi-0.6.0/genshi/template/eval.py", line 178, in evaluate
    return eval(self.code, _globals, {'__data__': data})
  File "/home/user/Workspace/trac-mastertickets/mastertickets/templates/depgraph.html", line 32, in <Expression u"Markup(graph_render('cmapx').decode('utf8'))">
    ${Markup(graph_render('cmapx').decode('utf8'))}
  File "/home/user/Workspace/trac-mastertickets/mastertickets/graphviz.py", line 132, in render
    proc = subprocess.Popen([dot_path, '-T%s'%format], stdin=subprocess.PIPE, stdout=subprocess.PIPE)
  File "/usr/lib/python2.6/subprocess.py", line 623, in __init__
    errread, errwrite)
  File "/usr/lib/python2.6/subprocess.py", line 1141, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

Attachments (0)

Change History (3)

comment:1 Changed 23 months ago by rjollos

When graphviz is not installed or dot_path is not configured, this error can result. We should raise a friendly TracError or add_warning under this condition.

comment:2 Changed 17 months ago by rjollos

SO:377017 might help here.

comment:3 Changed 7 months ago by rjollos

  • Status changed from new to assigned

Add Comment

Modify Ticket

Action
as assigned .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.