Project

General

Profile

Actions

Bug #47124

closed

DebugUtility runs into max_execution_timeout on huge error messages

Added by Daniel Hürtgen over 11 years ago. Updated about 9 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 #1

Updated by Anja Leichsenring over 11 years ago

  • Subject changed from DebugUtility will ran into max_execution_timeout on huge error messages to DebugUtility runs into max_execution_timeout on huge error messages
Actions #2

Updated by Markus Klein over 11 years ago

  • Target version deleted (6.0.5)

Are you using iconv or mbstring for encoding?
Internal encoding is really slow, causing this sort of timeouts.

Please set $GLOBALS['TYPO3_CONF_VARS']['SYS']['t3lib_cs_utils'] accordingly.

Actions #3

Updated by Markus Wagner over 11 years ago

I have the same problem here.

Markus Klein wrote:

Are you using iconv or mbstring for encoding?
Please set $GLOBALS['TYPO3_CONF_VARS']['SYS']['t3lib_cs_utils'] accordingly.

$GLOBALS['TYPO3_CONF_VARS']['SYS']['t3lib_cs_utils'] = 'mbstring'; leads to

Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/www1/vhosts/zarges/mw.dev.zarges/TYPO3_6-0-3/typo3/sysext/core/Classes/Charset/CharsetConverter.php on line 1588

$GLOBALS['TYPO3_CONF_VARS']['SYS']['t3lib_cs_utils'] = 'iconv'; leads to

Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/www1/vhosts/zarges/mw.dev.zarges/TYPO3_6-0-3/typo3/sysext/core/Classes/Charset/CharsetConverter.php on line 1601

Actions #4

Updated by Mathias Schreiber almost 10 years ago

  • Status changed from New to Needs Feedback
  • Assignee set to Mathias Schreiber
  • Is Regression set to No

I'm puzzled how to deal with this.
You will always reach a certain point when your server will inevitably run into a timeout.
Do you have ideas how this can be dealt with?

Actions #5

Updated by Alexander Opitz over 9 years ago

As this part was changed a bit (performance wise) can you retest with TYPO CMS 6.2.13 report back if the issue still happens? (With your example, it will happen again on longer strings).

Actions #6

Updated by Alexander Opitz about 9 years ago

  • Status changed from Needs Feedback to Closed
  • Assignee deleted (Mathias Schreiber)

No feedback within the last 90 days => closing this issue.

If you think that this is the wrong decision or experience this issue again, then please write to the mailing list typo3.teams.bugs with issue number and an explanation or open a new ticket and add a relation to this ticket number.

Actions

Also available in: Atom PDF