172 views

Description

AuditRecord.setValueTruncated throws a StringIndexOutOfBoundsException when certain arguments are passed.

Steps to Reproduce

 

  1. Create a new Glide property with the following values:
    • Name: glide.max_activity_size
    • Description: Test
    • Type: integer
    • Value: 101
  2. Click Save.
  3. Navigate to Incident > Create New.
  4. Right-click the word Impact next to the field.
  5. Click Configure Dictionary.
  6. Create a new Choice Label breadbreadbreadbreadbreadbr with a Default Value of 6.
    Notice that the label is 27 characters long.
  7. Click Update.
  8. Create a new incident and fill in all the required fields.
  9. Select the new label from the impact choice list and click Submit.

The following error appears in the log:

2016-03-15 14:50:48 (829) Default-thread-3 CB221977670212001C1E5F9842415AC8 SEVERE *** ERROR *** String index out of range: 29 java.lang.StringIndexOutOfBoundsException: String index out of range: 29 at java.lang.String.substring(String.java:1951) at com.glide.audit.AuditRecord.setValueTruncated(AuditRecord.java:76)at com.glide.audit.HistoryActivityIterator.processAuditRecord(HistoryActivityIterator.java:115) at com.glide.audit.HistoryActivityIterator.loadGroup(HistoryActivityIterator.java:67) at com.glide.audit.HistoryActivityIterator.next(HistoryActivityIterator.java:48) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:271) at com.glide.ui.ng.streams.StreamEntryLoader.getEntriesSinceLastPoll(StreamEntryLoader.java:55) at com.glide.ui.ng.streams.AuditBackedStream$AuditEntryIterator.computeNext(AuditBackedStream.java:99) at com.glide.ui.ng.streams.AuditBackedStream$AuditEntryIterator.computeNext(AuditBackedStream.java:78) at com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) at com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) at com.google.common.collect.Iterators$MergingIterator.<init>(Iterators.java:1280) at com.google.common.collect.Iterators.mergeSorted(Iterators.java:1250) at com.google.common.collect.Iterables$14.iterator(Iterables.java:1012) at com.google.common.collect.Iterables$UnmodifiableIterable.iterator(Iterables.java:94) at com.google.common.collect.Iterables$11.iterator(Iterables.java:913) at com.google.common.collect.ImmutableList.copyOf(ImmutableList.java:226) at com.glide.ui.ng.streams.Stream.addEntries(Stream.java:35) at com.glide.ui.ng.streams.StreamFactory.getHistoryStream(StreamFactory.java:12) at com.glide.ui.ng.streams.NGListHistoryProcessor.process(NGListHistoryProcessor.java:122) at com.glide.ui.ng.AngularProcessor.process(AngularProcessor.java:108) at com.glide.processors.AProcessor.runProcessor(AProcessor.java:407) at com.glide.processors.AProcessor.processTransaction(AProcessor.java:182) at com.glide.processors.ProcessorRegistry.process(ProcessorRegistry.java:165) at com.glide.ui.GlideServletTransaction.process(GlideServletTransaction.java:49) at com.glide.sys.ServletTransaction.run(ServletTransaction.java:34) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)

Workaround

No workaround is available at this time.


Related Problem: PRB666733

Seen In

Fuji Patch 11

Associated Community Threads

There is no data to report.

Article Information

Last Updated:2017-07-18 11:34:02
Published:2016-11-08