GitHub user lizziew opened a pull request:
https://github.com/apache/kafka/pull/6
Unmap before resizing
While I was studying how MappedByteBuffer works, I saw a sharing runtime
exception on Windows. I applied what I learned to generate a patch which uses
an internal open JDK API to solve this problem.
---
Caused by: java.io.IOException: The requested operation cannot be performed
on a
file with a user-mapped section open
at java.io.RandomAccessFile.setLength(Native Method)
at kafka.log.OffsetIndex.liftedTree2$1(OffsetIndex.scala:263)
at kafka.log.OffsetIndex.resize(OffsetIndex.scala:262)
at kafka.log.OffsetIndex.trimToValidSize(OffsetIndex.scala:247)
at kafka.log.Log.rollToOffset(Log.scala:518)
at kafka.log.Log.roll(Log.scala:502)
at kafka.log.Log.maybeRoll(Log.scala:484)
at kafka.log.Log.append(Log.scala:297)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/lizziew/kafka 0.8
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/kafka/pull/6.patch
----
----