[ROCKETMQ-189] Misleading tip on consumeTimestamp and wrong consumeTimestamp exception message closes apache/incubator-rocketmq#97
Project: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/commit/3480aaed Tree: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/tree/3480aaed Diff: http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/diff/3480aaed Branch: refs/heads/master Commit: 3480aaed6467928728075f6a7e8e9d552c137ad8 Parents: 547004c Author: lindzh <[email protected]> Authored: Fri May 26 15:28:28 2017 +0800 Committer: dongeforever <[email protected]> Committed: Tue Jun 6 11:37:29 2017 +0800 ---------------------------------------------------------------------- .../client/impl/consumer/DefaultMQPushConsumerImpl.java | 8 ++++---- .../rocketmq/client/impl/consumer/RebalancePushImpl.java | 2 +- common/src/main/java/org/apache/rocketmq/common/UtilAll.java | 2 +- .../org/apache/rocketmq/example/simple/PushConsumer.java | 2 ++ 4 files changed, 8 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/3480aaed/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java ---------------------------------------------------------------------- diff --git a/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java b/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java index 2cafe29..8767964 100644 --- a/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java +++ b/client/src/main/java/org/apache/rocketmq/client/impl/consumer/DefaultMQPushConsumerImpl.java @@ -655,12 +655,12 @@ public class DefaultMQPushConsumerImpl implements MQConsumerInner { null); } - Date dt = UtilAll.parseDate(this.defaultMQPushConsumer.getConsumeTimestamp(), UtilAll.YYYY_MMDD_HHMMSS); + Date dt = UtilAll.parseDate(this.defaultMQPushConsumer.getConsumeTimestamp(), UtilAll.YYYYMMDDHHMMSS); if (null == dt) { throw new MQClientException( - "consumeTimestamp is invalid, YYYY_MMDD_HHMMSS" - + FAQUrl.suggestTodo(FAQUrl.CLIENT_PARAMETER_CHECK_URL), - null); + "consumeTimestamp is invalid, the valid format is yyyyMMddHHmmss,but received " + + this.defaultMQPushConsumer.getConsumeTimestamp() + + " " + FAQUrl.suggestTodo(FAQUrl.CLIENT_PARAMETER_CHECK_URL), null); } // allocateMessageQueueStrategy http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/3480aaed/client/src/main/java/org/apache/rocketmq/client/impl/consumer/RebalancePushImpl.java ---------------------------------------------------------------------- diff --git a/client/src/main/java/org/apache/rocketmq/client/impl/consumer/RebalancePushImpl.java b/client/src/main/java/org/apache/rocketmq/client/impl/consumer/RebalancePushImpl.java index 509c9a4..112bcee 100644 --- a/client/src/main/java/org/apache/rocketmq/client/impl/consumer/RebalancePushImpl.java +++ b/client/src/main/java/org/apache/rocketmq/client/impl/consumer/RebalancePushImpl.java @@ -171,7 +171,7 @@ public class RebalancePushImpl extends RebalanceImpl { } else { try { long timestamp = UtilAll.parseDate(this.defaultMQPushConsumerImpl.getDefaultMQPushConsumer().getConsumeTimestamp(), - UtilAll.YYYY_MMDD_HHMMSS).getTime(); + UtilAll.YYYYMMDDHHMMSS).getTime(); result = this.mQClientFactory.getMQAdminImpl().searchOffset(mq, timestamp); } catch (MQClientException e) { result = -1; http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/3480aaed/common/src/main/java/org/apache/rocketmq/common/UtilAll.java ---------------------------------------------------------------------- diff --git a/common/src/main/java/org/apache/rocketmq/common/UtilAll.java b/common/src/main/java/org/apache/rocketmq/common/UtilAll.java index 016da0b..e9d926f 100644 --- a/common/src/main/java/org/apache/rocketmq/common/UtilAll.java +++ b/common/src/main/java/org/apache/rocketmq/common/UtilAll.java @@ -41,7 +41,7 @@ import org.apache.rocketmq.remoting.common.RemotingHelper; public class UtilAll { public static final String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; public static final String YYYY_MM_DD_HH_MM_SS_SSS = "yyyy-MM-dd#HH:mm:ss:SSS"; - public static final String YYYY_MMDD_HHMMSS = "yyyyMMddHHmmss"; + public static final String YYYYMMDDHHMMSS = "yyyyMMddHHmmss"; final static char[] HEX_ARRAY = "0123456789ABCDEF".toCharArray(); public static int getPid() { http://git-wip-us.apache.org/repos/asf/incubator-rocketmq/blob/3480aaed/example/src/main/java/org/apache/rocketmq/example/simple/PushConsumer.java ---------------------------------------------------------------------- diff --git a/example/src/main/java/org/apache/rocketmq/example/simple/PushConsumer.java b/example/src/main/java/org/apache/rocketmq/example/simple/PushConsumer.java index d03c2c5..c8252d0 100644 --- a/example/src/main/java/org/apache/rocketmq/example/simple/PushConsumer.java +++ b/example/src/main/java/org/apache/rocketmq/example/simple/PushConsumer.java @@ -31,6 +31,8 @@ public class PushConsumer { DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("CID_JODIE_1"); consumer.subscribe("Jodie_topic_1023", "*"); consumer.setConsumeFromWhere(ConsumeFromWhere.CONSUME_FROM_FIRST_OFFSET); + //wrong time format 2017_0422_221800 + consumer.setConsumeTimestamp("20170422221800"); consumer.registerMessageListener(new MessageListenerConcurrently() { /**
