This is an automated email from the ASF dual-hosted git repository.

sijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pulsar.wiki.git


The following commit(s) were added to refs/heads/master by this push:
     new b8edf85  Created Release Candidate Validation (markdown)
b8edf85 is described below

commit b8edf85c1151aaac92e8bb33ecfec02ecfedf8f7
Author: Sijie Guo <guosi...@gmail.com>
AuthorDate: Thu Jul 19 12:00:55 2018 -0700

    Created Release Candidate Validation (markdown)
---
 Release-Candidate-Validation.md | 119 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 119 insertions(+)

diff --git a/Release-Candidate-Validation.md b/Release-Candidate-Validation.md
new file mode 100644
index 0000000..0813891
--- /dev/null
+++ b/Release-Candidate-Validation.md
@@ -0,0 +1,119 @@
+Here are some instructions for reviewing and validating a release candidate.
+
+### Validate the binary distribution
+
+Unzip the binary distribution. The unzipped binary should be in a directory 
called `apache-pulsar-<release>`. All the operations below happen within that 
directory.
+
+1. Open one terminal to start a standalone cluster.
+
+```shell
+$ bin/pulsar standalone
+```
+
+2. Open another terminal to submit a Java Exclamation function.
+
+```shell
+$ bin/pulsar-admin functions create --functionConfigFile 
examples/example-function-config.yaml --jar examples/api-examples.jar
+```
+
+You should see `Created Successfully`.
+
+3. At the same terminal as step 2, retrieve the function config:
+
+```shell
+$ bin/pulsar-admin functions get --tenant test --namespace test-namespace 
--name example
+```
+
+example output:
+
+```shell
+{
+  "tenant": "test",
+  "namespace": "test-namespace",
+  "name": "example",
+  "className": "org.apache.pulsar.functions.api.examples.ExclamationFunction",
+  "userConfig": "{\"PublishTopic\":\"test_result\"}",
+  "autoAck": true,
+  "parallelism": 1,
+  "source": {
+    "topicsToSerDeClassName": {
+      "test_src": ""
+    },
+    "typeClassName": "java.lang.String"
+  },
+  "sink": {
+    "topic": "test_result",
+    "typeClassName": "java.lang.String"
+  },
+  "resources": {}
+}
+```
+
+4. At the same terminal as step 3, retrieve the function status:
+
+```shell
+$ bin/pulsar-admin functions getstatus --tenant test --namespace 
test-namespace --name example
+```
+
+example output:
+
+```shell
+{
+  "functionStatusList": [
+    {
+      "running": true,
+      "instanceId": "0",
+      "metrics": {
+        "metrics": {
+          "__total_processed__": {},
+          "__total_successfully_processed__": {},
+          "__total_system_exceptions__": {},
+          "__total_user_exceptions__": {},
+          "__total_serialization_exceptions__": {},
+          "__avg_latency_ms__": {}
+        }
+      },
+      "workerId": "c-standalone-fw-localhost-6750"
+    }
+  ]
+}
+```
+
+5. At the same terminal as step 4, subscribe the output topic `test_result`.
+
+```shell
+$ bin/pulsar-client consume -s test-sub -n 0 test_result
+```
+
+6. Open a new terminal to produce messages into the input topic `test_src`.
+
+```shell
+$ bin/pulsar-client produce -m "test-messages-`date`" -n 10 test_src
+```
+
+7. At the terminal of step 5, you will see the messages produced by the 
Exclamation function.
+
+example output:
+
+```shell
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+----- got message -----
+test-messages-Thu Jul 19 11:59:15 PDT 2018!
+```
\ No newline at end of file

Reply via email to