Project

General

Profile

Actions

Bug #47124

closed

DebugUtility runs into max_execution_timeout on huge error messages

Added by Daniel Hürtgen about 11 years ago. Updated over 8 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Backend API
Target version:
-
Start date:
2013-04-11
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
6.0
PHP Version:
5.4
Tags:
Complexity:
easy
Is Regression:
No
Sprint Focus:

Description

When you have backend debugging enabled and e.g. make an db insert with huge amount of data and it fails, the database connection class will trigger the (TYPO3\CMS\Core\Utility\DebugUtility::)debug to visualize the stack trace within the backend.

Because the debug message will be rendered by javascript, the message must be encoded by the javascriptencoder (\TYPO3\CMS\Core\Encoder\JavaScriptEncoder) encode function. The javscript encoder use the character convert service to fetch character for character for encoding, which lame for at all 23100 characters i had. So i went into a max_execution_timeout after 600 seconds (10 minutes).

So i've written some test to reproduce this issue. On line 89 within the javascript encoder class, the debug string will be split into characters via the charsetconverter service, i already said. This next 4 lines cause a duration of over 10 minutes with a 23000 character long string. I've also tested it with an random 1000 character long string and it had already a duration of 9 seconds. Maybe we need a limitation for strings to prevent running into timeouts.


Files

debug_stack_trace.txt (45.8 KB) debug_stack_trace.txt Debug Stack Trace of an error got due update extList with TER Daniel Hürtgen, 2013-04-11 15:29

Related issues 2 (0 open2 closed)

Related to TYPO3 Core - Bug #43539: EM: Maximum execution time exceeded ClosedFranz Holzinger2012-12-03

Actions
Related to TYPO3 Core - Bug #46115: Importing extensions from repository failsClosed2013-03-07

Actions
Actions

Also available in: Atom PDF