Details
-
Bug
-
Resolution: Obsolete
-
Low
-
None
-
3.5.17
Description
When the DaisyHtmlDiffer fails, it will only fail once for each locale, and be cached. (I'm pretty sure). However it will store and rethrow whatever exception occurred every time the diff is requested, and the AbstractNotificationsListener will log the exception at error level with full stacktrace. The downsides are:
- The misleading appearance of many many diffing failures, which one will falsely indicate a probably performance issue and caching failure. (at least I hope it's false)
- Way too much logging, resulting in an actual minor performance issue
- Possibly unnecessary memory usage resulting in another performance issue. (I don't know how much is stored within the DaisyDiff exception. My guess is it's less than an actual diff).
Example stacktrace:
2011-09-12 20:43:56,144 ERROR [http-9080-28] [mail.notification.listeners.AbstractNotificationsListener] sendNotification Send Notification: Error deter mining diff for: page: Policy - Computer Standards v.56 (1696826531). Diff will be omitted from the notification email. -- url: /pages/doeditpage.action | page: 1696826531 | userName: rhastie | referer: https://extranet.atlassian.com/pages/editpage.action?pageId=16968265 31 | action: doeditpage com.atlassian.confluence.diff.DiffException: Index: 1706, Size: 1706 at com.atlassian.confluence.diff.DaisyHtmlDiffer.createOrGetFutureDiff(DaisyHtmlDiffer.java:152) at com.atlassian.confluence.diff.DaisyHtmlDiffer.diff(DaisyHtmlDiffer.java:95) at com.atlassian.confluence.diff.WikiConvertingHtmlDiffer.diff(WikiConvertingHtmlDiffer.java:31) at com.atlassian.confluence.mail.notification.listeners.AbstractNotificationsListener.sendNotification(AbstractNotificationsListener.java:124) at com.atlassian.confluence.mail.notification.listeners.AbstractNotificationsListener.sendNotifications(AbstractNotificationsListener.java:252) at com.atlassian.confluence.mail.notification.listeners.AbstractNotificationsListener.sendSpaceNotifications(AbstractNotificationsListener.java: 229) at com.atlassian.confluence.mail.notification.listeners.PageNotificationsListener.handleEvent(PageNotificationsListener.java:85)