Uploaded image for project: 'Crucible'
  1. Crucible
  2. CRUC-7316

long comment may result with StackOverflowError

      Just observed on fisheye.dev instance. When comment like

      SECOND COMMENT http://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gifhttp://data3.whicdn.com/images/22852273/large.gif
      

      is added to review, every time frx is loaded the following error is logged:

      2015-07-15 08:04:20,809 WARN  [qtp1300016164-13975 ] fisheye noClassMethodInfo - Error parsing file with multiline pattern (\b(?:https?://(?:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)(?::(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)
      )?@)?(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?))(?:/(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),~]|(?:%[a-fA-F\d]{2}))|[;:@&=])*)(?:/(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),~]|(?:%[a-
      fA-F\d]{2}))|[;:@&=])*))*)(?:\?(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),~]|(?:%[a-fA-F\d]{2}))|[;:@&=])*))?)?(?:#(?:[/\?!a-zA-Z0-9_:.%,\-()~]*)?)?))|(\b(?:ftp://(?:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)(?::(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}
      ))|[;?&=])*))?@)?(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?))(?:/(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*)(?:/(?:(?:(?:[a-zA-Z\d$\-_.+!*'()
      ,]|(?:%[a-fA-F\d]{2}))|[?:@&=])*))*)(?:;type=[AIDaid])?)?))|(\b(?:n(ntp|news)://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))(?::(?:\d+))?)/(?:[a-zA-Z](?:[a-zA-Z\d]|[_.+-])*)(?:/(
      ?:\d+))?))|(\b(?:news:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;/?:&=])+@(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3})))|(?:[a-zA-Z](?:[a-zA-Z\d]|[_.+-])*)|\*)))|(\b(?:
      telnet://(?:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)(?::(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*))?@)?(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(
      ?:\d+)){3}))(?::(?:\d+))?))/?))|(\b(?:mailto:(?:(?:[a-zA-Z\d$\-_.+!*'(),;/?:@&=]|(?:%[a-fA-F\d]{2}))+)))|(\b(?:file://(?:(?:(?:(?:(?:[a-zA-Z\d](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?:(?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?:(?:\d+)(?:\.(?:\d+)){3}))|localhost)?/(?:
      (?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*)(?:/(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*))*))), on file <stream> and offset 15, starting with: http://dat
      java.lang.StackOverflowError
              at java.util.regex.Pattern$5.isSatisfiedBy(Pattern.java:5251)
              at java.util.regex.Pattern$5.isSatisfiedBy(Pattern.java:5251)
              at java.util.regex.Pattern$CharProperty.match(Pattern.java:3776)
              at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
              at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
              at java.util.regex.Pattern$Branch.match(Pattern.java:4604)
              at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
              at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
              at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
              at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
              at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
              at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
      ...
      

            [CRUC-7316] long comment may result with StackOverflowError

            Encountered this error on version 4.4.5.

            Stephen James Perris (Inactive) added a comment - Encountered this error on version 4.4.5.

            This issue seems to be related to CRUC-7351, which contains a workaround.

            Felipe Kraemer added a comment - This issue seems to be related to  CRUC-7351 , which contains a workaround.

            any chance this might get resolved some day?????

            Matt Makarczyk added a comment - any chance this might get resolved some day?????

            I completely concur w/ Daniel's comments above. This is a significant problem that we hit continuously. The URLs are not excessively long. Something like a URL should not trigger this kind of behavior. My only options are to babysit the log/manually change the backend database to remove offending URL; automate the truncation of the log file; or advise the developers to not put in URLs. None of these seem to be reasonable work-arounds.

            Matt Makarczyk added a comment - I completely concur w/ Daniel's comments above. This is a significant problem that we hit continuously. The URLs are not excessively long. Something like a URL should not trigger this kind of behavior. My only options are to babysit the log/manually change the backend database to remove offending URL; automate the truncation of the log file; or advise the developers to not put in URLs. None of these seem to be reasonable work-arounds.

            Hello,

            we just experienced this error when an employee added a large comment to a review.

            This caused a stack overflow which ultimately lead to full storage because the log file grew insanely - production Crucible was dead.

            Please fix this issue asap - its by far not "minor". A user should not be able to kill a production system by entering a comment into a comment field (that's the whole point of the comment field i guess).

            BR
            Daniel

            Daniel Stegmeier added a comment - Hello, we just experienced this error when an employee added a large comment to a review. This caused a stack overflow which ultimately lead to full storage because the log file grew insanely - production Crucible was dead. Please fix this issue asap - its by far not "minor". A user should not be able to kill a production system by entering a comment into a comment field (that's the whole point of the comment field i guess). BR Daniel

              cfurmanek@atlassian.com Cezary Furmanek (Inactive)
              pswiecicki Piotr Swiecicki
              Affected customers:
              4 This affects my team
              Watchers:
              9 Start watching this issue

                Created:
                Updated:
                Resolved:

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - Not Specified
                  Not Specified
                  Logged:
                  Time Spent - 2h 31m
                  2h 31m