[ https://issues.apache.org/jira/browse/KAFKA-1757?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14334389#comment-14334389 ]
Sriharsha Chintalapani commented on KAFKA-1757: ----------------------------------------------- patch merged by [~jkreps] closing this as fixed. > Can not delete Topic index on Windows > ------------------------------------- > > Key: KAFKA-1757 > URL: https://issues.apache.org/jira/browse/KAFKA-1757 > Project: Kafka > Issue Type: Bug > Components: log > Affects Versions: 0.8.2.0 > Reporter: Lukáš Vyhlídka > Assignee: Sriharsha Chintalapani > Priority: Minor > Fix For: 0.8.3 > > Attachments: KAFKA-1757.patch, lucky-v.patch > > > When running the Kafka 0.8.2-Beta (Scala 2.10) on Windows, an attempt to > delete the Topic throwed an error: > ERROR [KafkaApi-1] error when handling request Name: StopReplicaRequest; > Version: 0; CorrelationId: 38; ClientId: ; DeletePartitions: true; > ControllerId: 0; ControllerEpoch: 3; Partitions: [test,0] > (kafka.server.KafkaApis) > kafka.common.KafkaStorageException: Delete of index > 00000000000000000000.index failed. > at kafka.log.LogSegment.delete(LogSegment.scala:283) > at kafka.log.Log$$anonfun$delete$1.apply(Log.scala:608) > at kafka.log.Log$$anonfun$delete$1.apply(Log.scala:608) > at scala.collection.Iterator$class.foreach(Iterator.scala:727) > at scala.collection.AbstractIterator.foreach(Iterator.scala:1157) > at scala.collection.IterableLike$class.foreach(IterableLike.scala:72) > at scala.collection.AbstractIterable.foreach(Iterable.scala:54) > at kafka.log.Log.delete(Log.scala:608) > at kafka.log.LogManager.deleteLog(LogManager.scala:375) > at > kafka.cluster.Partition$$anonfun$delete$1.apply$mcV$sp(Partition.scala:144) > at > kafka.cluster.Partition$$anonfun$delete$1.apply(Partition.scala:139) > at > kafka.cluster.Partition$$anonfun$delete$1.apply(Partition.scala:139) > at kafka.utils.Utils$.inLock(Utils.scala:535) > at kafka.utils.Utils$.inWriteLock(Utils.scala:543) > at kafka.cluster.Partition.delete(Partition.scala:139) > at kafka.server.ReplicaManager.stopReplica(ReplicaManager.scala:158) > at > kafka.server.ReplicaManager$$anonfun$stopReplicas$3.apply(ReplicaManager.scala:191) > at > kafka.server.ReplicaManager$$anonfun$stopReplicas$3.apply(ReplicaManager.scala:190) > at scala.collection.immutable.Set$Set1.foreach(Set.scala:74) > at kafka.server.ReplicaManager.stopReplicas(ReplicaManager.scala:190) > at kafka.server.KafkaApis.handleStopReplicaRequest(KafkaApis.scala:96) > at kafka.server.KafkaApis.handle(KafkaApis.scala:59) > at kafka.server.KafkaRequestHandler.run(KafkaRequestHandler.scala:59) > at java.lang.Thread.run(Thread.java:744) > When I have investigated the issue I figured out that the index file (in my > environment it was > C:\tmp\kafka-logs\00000000-0000-0000-0000-000000000014-0\00000000000000000000.index) > was locked by the kafka process and the OS did not allow to delete that file. > I tried to fix the problem in source codes and when I added close() method > call into LogSegment.delete(), the Topic deletion started to work. > I will add here (not sure how to upload the file during issue creation) a > diff with the changes I have made so You can take a look on that whether it > is reasonable or not. It would be perfect if it could make it into the > product... > In the end I would like to say that on Linux the deletion works just fine... -- This message was sent by Atlassian JIRA (v6.3.4#6332)