Hangleton commented on code in PR #13584:
URL: https://github.com/apache/kafka/pull/13584#discussion_r1191598672


##########
core/src/test/scala/unit/kafka/log/LogSegmentTest.scala:
##########
@@ -65,6 +68,32 @@ class LogSegmentTest {
     Utils.delete(logDir)
   }
 
+  /**
+   * LogSegmentOffsetOverflowException should be thrown while appending the 
logs if:
+   * 1. largestOffset < 0
+   * 2. largestOffset - baseOffset < 0
+   * 3. largestOffset - baseOffset > Integer.MAX_VALUE
+   */
+  @ParameterizedTest
+  @CsvSource(Array(
+    "0, -2147483648",
+    "0, 2147483648",
+    "1, 0",
+    "100, 10",
+    "2147483648, 0",
+    "-2147483648, 0",
+    "2147483648,4294967296"
+  ))
+  def testAppendForLogSegmentOffsetOverflowException(baseOffset: Long, 
largestOffset: Long): Unit = {

Review Comment:
   I see, thanks for checking. Could we maybe confirm if the overflow exception 
comes from this line in `TimeIndex#maybeAppend`:
   
   ```
   mmap.putInt(relativeOffset(offset))
   ```
   
   And if that is the case, why is the relative offset < 0 or > max_int?



-- 
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: jira-unsubscr...@kafka.apache.org

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

Reply via email to