/
Fatal error during error stack trace processing

Fatal error during error stack trace processing

In 

Error rendering macro 'jira' : Unable to locate Jira server for this macro. It may be due to Application Link configuration.
 we've introduced logging engine, that allows to log every error, that is happening in In-Portal in form, that allows easy error log processing later on.

However recently I've noticed a case, where error is happening inside error processing code of kLogger class. PHP threats such case as super-error and doesn't pass it back to kLogger class to prevent recursion. Because of it both errors are not logged:

  • error, that happened originally
  • error during original error processing in kLogger class

In this case, problem happened because of kBase::__toString method thought, that no harm will come if it calls kBase::getPrefixSpecial method. It turned out, that this method has an descendant in kEventHandler class, that throws an exception at all times. This is actually a protection against developers calling this method by accident and getting incorrect results (because kEvent::getPrefixSpecial method should be used in such cases).

kbase_tostring_exception_fix.patch

Related Tasks

Unable to locate Jira server for this macro. It may be due to Application Link configuration.