[ 
https://issues.apache.org/jira/browse/ROCKETMQ-164?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eason Chen updated ROCKETMQ-164:
--------------------------------
    Description: 
we use sync_master and slave, when slave left behind from master too long and 
then hit this exception when restart again maybe because comitlog has been 
deleted.
wo suggest handle this exception.   

2017-03-24 09:55:25 WARN PullMessageThread_4 - findMappedFileByOffset failure.
java.lang.ArrayIndexOutOfBoundsException: -143
        at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:387) 
~[na:1.8.0_121]
        at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:396) 
~[na:1.8.0_121]
        at 
org.apache.rocketmq.store.MappedFileQueue.findMappedFileByOffset(MappedFileQueue.java:476)
 ~[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at org.apache.rocketmq.store.CommitLog.getMessage(CommitLog.java:730) 
[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.store.DefaultMessageStore.getMessage(DefaultMessageStore.java:430)
 [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at .....................
        at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:190)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:74)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$1.run(NettyRemotingAbstract.java:108)
 [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.remoting.netty.RequestTask.run(RequestTask.java:80) 
[rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_121]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
[na:1.8.0_121]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_121]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_121]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
2017-03-24 09:55:25 WARN PullMessageThread_26 - findMappedFileByOffset failure.

  was:
we use sync_master and slave, when slave left behind from master too long and 
then hit this exception when restart again maybe because comitlog has been 
deleted.
wo suggest handle this exception.   

2017-03-24 09:55:25 WARN PullMessageThread_4 - findMappedFileByOffset failure.
java.lang.ArrayIndexOutOfBoundsException: -143
        at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:387) 
~[na:1.8.0_121]
        at 
java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:396) 
~[na:1.8.0_121]
        at 
org.apache.rocketmq.store.MappedFileQueue.findMappedFileByOffset(MappedFileQueue.java:476)
 ~[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at org.apache.rocketmq.store.CommitLog.getMessage(CommitLog.java:730) 
[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.store.DefaultMessageStore.getMessage(DefaultMessageStore.java:430)
 [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
cn.webank.wemq.broker.plugin.WeMQPluginMessageStore.getMessage(WeMQPluginMessageStore.java:62)
 [wemq-broker-1.0.0-jdk8-SNAPSHOT.jar:1.0.0-jdk8-SNAPSHOT]
        at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:190)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:74)
 [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$1.run(NettyRemotingAbstract.java:108)
 [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
org.apache.rocketmq.remoting.netty.RequestTask.run(RequestTask.java:80) 
[rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_121]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
[na:1.8.0_121]
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
[na:1.8.0_121]
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
[na:1.8.0_121]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
2017-03-24 09:55:25 WARN PullMessageThread_26 - findMappedFileByOffset failure.


> findMappedFileByOffset failure, ArrayIndexOutOfBoundsException: -143
> --------------------------------------------------------------------
>
>                 Key: ROCKETMQ-164
>                 URL: https://issues.apache.org/jira/browse/ROCKETMQ-164
>             Project: Apache RocketMQ
>          Issue Type: Bug
>          Components: rocketmq-store
>    Affects Versions: 4.0.0-incubating
>            Reporter: Eason Chen
>            Assignee: yukon
>
> we use sync_master and slave, when slave left behind from master too long and 
> then hit this exception when restart again maybe because comitlog has been 
> deleted.
> wo suggest handle this exception.   
> 2017-03-24 09:55:25 WARN PullMessageThread_4 - findMappedFileByOffset failure.
> java.lang.ArrayIndexOutOfBoundsException: -143
>         at 
> java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:387) 
> ~[na:1.8.0_121]
>         at 
> java.util.concurrent.CopyOnWriteArrayList.get(CopyOnWriteArrayList.java:396) 
> ~[na:1.8.0_121]
>         at 
> org.apache.rocketmq.store.MappedFileQueue.findMappedFileByOffset(MappedFileQueue.java:476)
>  ~[rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at org.apache.rocketmq.store.CommitLog.getMessage(CommitLog.java:730) 
> [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at 
> org.apache.rocketmq.store.DefaultMessageStore.getMessage(DefaultMessageStore.java:430)
>  [rocketmq-store-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at .....................
>         at 
> org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:190)
>  [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at 
> org.apache.rocketmq.broker.processor.PullMessageProcessor.processRequest(PullMessageProcessor.java:74)
>  [rocketmq-broker-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at 
> org.apache.rocketmq.remoting.netty.NettyRemotingAbstract$1.run(NettyRemotingAbstract.java:108)
>  [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at 
> org.apache.rocketmq.remoting.netty.RequestTask.run(RequestTask.java:80) 
> [rocketmq-remoting-4.1.0-incubating-SNAPSHOT.jar:4.1.0-incubating-SNAPSHOT]
>         at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
> [na:1.8.0_121]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
> [na:1.8.0_121]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
>  [na:1.8.0_121]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
>  [na:1.8.0_121]
>         at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
> 2017-03-24 09:55:25 WARN PullMessageThread_26 - findMappedFileByOffset 
> failure.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to