itschrispeck opened a new pull request, #13215:
URL: https://github.com/apache/pinot/pull/13215

   We've seen some state transition failrues from `OFFLINE -> CONSUMING` with 
the below stack trace. It looks like `_startSize` overflow isn't handled, so 
this change handles it. 
   
   It also treats `0` as an overflow case during buffer expansion, since that 
would hit the same precondition check as well. 
   ```
   java.lang.IllegalArgumentException: Illegal memory allocation -1710837370 
for segment table__1__876__20240523T2008Z column 
table__1__876__20240523T2008Z:col.dict
     at 
com.google.common.base.Preconditions.checkArgument(Preconditions.java:135)
     at 
org.apache.pinot.segment.local.io.readerwriter.RealtimeIndexOffHeapMemoryManager.allocate(RealtimeIndexOffHeapMemoryManager.java:78)
     at 
org.apache.pinot.segment.local.io.writer.impl.MutableOffHeapByteArrayStore$Buffer.<init>(MutableOffHeapByteArrayStore.java:99)
     at 
org.apache.pinot.segment.local.io.writer.impl.MutableOffHeapByteArrayStore.expand(MutableOffHeapByteArrayStore.java:193)
     at 
org.apache.pinot.segment.local.io.writer.impl.MutableOffHeapByteArrayStore.<init>(MutableOffHeapByteArrayStore.java:182)
     at 
org.apache.pinot.segment.local.realtime.impl.dictionary.StringOffHeapMutableDictionary.<init>(StringOffHeapMutableDictionary.java:45)
     at 
org.apache.pinot.segment.local.realtime.impl.dictionary.MutableDictionaryFactory.getMutableDictionary(MutableDictionaryFactory.java:48)
     at 
org.apache.pinot.segment.local.segment.index.dictionary.DictionaryIndexType.createMutableDictionary(DictionaryIndexType.java:449)
     at 
org.apache.pinot.segment.local.indexsegment.mutable.MutableSegmentImpl.<init>(MutableSegmentImpl.java:321)
 
   ``` 
   
   tag: `bugfix`


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to