This is an automated email from the ASF dual-hosted git repository.
penghui pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new b4c3d43 [pulsar-admin-tool] add cli command to get last message Id
(#8082)
b4c3d43 is described below
commit b4c3d43b0730f1ccac7c86e9df648efddfee3cb0
Author: Rajan Dhabalia <[email protected]>
AuthorDate: Tue Sep 29 20:28:42 2020 -0700
[pulsar-admin-tool] add cli command to get last message Id (#8082)
### Motivation
Add CLI support get last-message-id
---
.../org/apache/pulsar/admin/cli/PulsarAdminToolTest.java | 3 +++
.../org/apache/pulsar/admin/cli/CmdPersistentTopics.java | 15 +++++++++++++++
2 files changed, 18 insertions(+)
diff --git
a/pulsar-client-tools-test/src/test/java/org/apache/pulsar/admin/cli/PulsarAdminToolTest.java
b/pulsar-client-tools-test/src/test/java/org/apache/pulsar/admin/cli/PulsarAdminToolTest.java
index 1f18e83..96de8d8 100644
---
a/pulsar-client-tools-test/src/test/java/org/apache/pulsar/admin/cli/PulsarAdminToolTest.java
+++
b/pulsar-client-tools-test/src/test/java/org/apache/pulsar/admin/cli/PulsarAdminToolTest.java
@@ -783,6 +783,9 @@ public class PulsarAdminToolTest {
cmdTopics.run(split("reset-cursor persistent://myprop/clust/ns1/ds1 -s
sub1 -t 1m"));
verify(mockTopics).resetCursor(eq("persistent://myprop/clust/ns1/ds1"),
eq("sub1"),
longThat(new TimestampMatcher()));
+
+ cmdTopics.run(split("last-message-id
persistent://myprop/clust/ns1/ds1"));
+
verify(mockTopics).getLastMessageId(eq("persistent://myprop/clust/ns1/ds1"));
}
@Test
diff --git
a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdPersistentTopics.java
b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdPersistentTopics.java
index 7b32c64..ade5436 100644
---
a/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdPersistentTopics.java
+++
b/pulsar-client-tools/src/main/java/org/apache/pulsar/admin/cli/CmdPersistentTopics.java
@@ -80,6 +80,7 @@ public class CmdPersistentTopics extends CmdBase {
jcommander.addCommand("delete-partitioned-topic", new
DeletePartitionedCmd());
jcommander.addCommand("peek-messages", new PeekMessages());
jcommander.addCommand("get-message-by-id", new GetMessageById());
+ jcommander.addCommand("last-message-id", new GetLastMessageId());
jcommander.addCommand("reset-cursor", new ResetCursor());
jcommander.addCommand("terminate", new Terminate());
jcommander.addCommand("compact", new Compact());
@@ -595,6 +596,20 @@ public class CmdPersistentTopics extends CmdBase {
}
}
+
+ @Parameters(commandDescription = "Get last message Id of the topic")
+ private class GetLastMessageId extends CliCommand {
+ @Parameter(description =
"persistent://property/cluster/namespace/topic", required = true)
+ private java.util.List<String> params;
+
+ @Override
+ void run() throws PulsarAdminException {
+ String persistentTopic = validatePersistentTopic(params);
+ MessageId messageId =
persistentTopics.getLastMessageId(persistentTopic);
+ print(messageId);
+ }
+ }
+
@Parameters(commandDescription = "Compact a topic")
private class Compact extends CliCommand {
@Parameter(description =
"persistent://property/cluster/namespace/topic", required = true)