Project

General

Profile

Actions

Feature #8496

closed

Bridge fails to visualize error traces without global declarations

Added by Evgeny Novikov about 7 years ago. Updated about 7 years ago.

Status:
Closed
Priority:
Immediate
Category:
Bridge
Target version:
Start date:
10/11/2017
Due date:
10/11/2017
% Done:

100%

Estimated time:
Published in build:

Description

I suppose that this can be a regression issue that was introduced recently.

For the attached error trace there is the following exception:

Traceback (most recent call last):
  File "/home/novikov/work/klever/bridge/reports/views.py", line 410, in report_unsafe
    etv = GetETV(ArchiveFileContent(report, 'error_trace', ERROR_TRACE_FILE).content.decode('utf8'), request.user)
  File "/home/novikov/work/klever/bridge/reports/etv.py", line 489, in __init__
    self.html_trace, self.assumes = self.__html_trace()
  File "/home/novikov/work/klever/bridge/reports/etv.py", line 502, in __html_trace
    return self.__add_thread_lines(0, 0)[0:2]
  File "/home/novikov/work/klever/bridge/reports/etv.py", line 520, in __add_thread_lines
    parsed_trace.add_line(edge_data)
  File "/home/novikov/work/klever/bridge/reports/etv.py", line 209, in add_line
    raise ValueError("Global initialization edge can't contain enter")
ValueError: Global initialization edge can't contain enter
Stack (most recent call last):
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/threading.py", line 884, in _bootstrap
    self._bootstrap_inner()
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/threading.py", line 916, in _bootstrap_inner
    self.run()
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/threading.py", line 864, in run
    self._target(*self._args, **self._kwargs)
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/socketserver.py", line 639, in process_request_thread
    self.finish_request(request, client_address)
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/socketserver.py", line 361, in finish_request
    self.RequestHandlerClass(request, client_address, self)
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/socketserver.py", line 696, in __init__
    self.handle()
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/core/servers/basehttp.py", line 155, in handle
    handler.run(self.server.get_app())
  File "/home/novikov/.pyenv/versions/3.6.1/lib/python3.6/wsgiref/handlers.py", line 137, in run
    self.result = application(self.environ, self.start_response)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/contrib/staticfiles/handlers.py", line 63, in __call__
    return self.application(environ, start_response)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/core/handlers/wsgi.py", line 157, in __call__
    response = self.get_response(request)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/core/handlers/base.py", line 124, in get_response
    response = self._middleware_chain(request)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/core/handlers/exception.py", line 41, in inner
    response = get_response(request)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/core/handlers/base.py", line 249, in _legacy_get_response
    response = self._get_response(request)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/core/handlers/base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/home/novikov/.pyenv/versions/virtual-env-3.6.1/lib/python3.6/site-packages/django/contrib/auth/decorators.py", line 23, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "/home/novikov/work/klever/bridge/tools/profiling.py", line 133, in wait
    res = f(*args, **kwargs)
  File "/home/novikov/work/klever/bridge/reports/views.py", line 412, in report_unsafe
    logger.exception(e, stack_info=True)


Files

error-trace.json (8.24 KB) error-trace.json Evgeny Novikov, 10/11/2017 02:03 PM
Actions #1

Updated by Vladimir Gratinskiy about 7 years ago

I don't remember when I supported error traces without global declarations. It was long ago. And as I remember you told me to ignore such traces.

Actions #2

Updated by Evgeny Novikov about 7 years ago

I understood that this is a consequence of changes in EMG. Before we always have global declarations but now there can be cases when we will haven't them. Moreover, if one will verify programs without EMG there also can be such the cases.

Is it hard to support such the error traces as well?

Actions #3

Updated by Evgeny Novikov about 7 years ago

  • Tracker changed from Bug to Feature

BTW, such error traces are associated pretty well with unsafe marks. So, this is likely just a visualization issue.

Actions #4

Updated by Vladimir Gratinskiy about 7 years ago

  • Due date set to 10/11/2017
  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Implemented in branch feature_8496.

Actions #5

Updated by Evgeny Novikov about 7 years ago

  • Status changed from Resolved to Closed

I tested the feature and merged the branch to master in ee1eb719.

Actions

Also available in: Atom PDF