[
https://issues.apache.org/jira/browse/STORM-1979?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15408253#comment-15408253
]
ASF GitHub Bot commented on STORM-1979:
---------------------------------------
Github user satishd commented on a diff in the pull request:
https://github.com/apache/storm/pull/1583#discussion_r73574871
--- Diff:
external/storm-druid/src/main/java/org/apache/storm/druid/bolt/DruidConfig.java
---
@@ -0,0 +1,114 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.storm.druid.bolt;
+
+import com.metamx.tranquility.tranquilizer.Tranquilizer;
+
+import java.io.Serializable;
+
+public class DruidConfig implements Serializable {
+
+ //Tranquilizer configs for DruidBeamBolt
+ private int maxBatchSize;
+ private int maxPendingBatches;
+ private long lingerMillis;
+ private boolean blockOnFull;
+ private boolean enableDiscardStream;
+ private String discardStreamId;
+
+ public int getMaxBatchSize() {
+ return maxBatchSize;
+ }
+
+ public int getMaxPendingBatches() {
+ return maxPendingBatches;
+ }
+
+ public long getLingerMillis() {
+ return lingerMillis;
+ }
+
+ public boolean isBlockOnFull() {
+ return blockOnFull;
+ }
+
+ public boolean isEnableDiscardStream() {
+ return enableDiscardStream;
+ }
+
+ public String getDiscardStreamId() {
+ return discardStreamId;
+ }
+
+ private DruidConfig(Builder builder) {
+ this.maxBatchSize = builder.maxBatchSize;
+ this.maxPendingBatches = builder.maxPendingBatches;
+ this.lingerMillis = builder.lingerMillis;
+ this.blockOnFull = builder.blockOnFull;
+ this.enableDiscardStream = builder.enableDiscardStream;
+ this.discardStreamId = builder.discardStreamId;
+ }
+
+ public static DruidConfig.Builder newBuilder() {
+ return new Builder();
+ }
+
+ public static class Builder {
+ private int maxBatchSize = Tranquilizer.DefaultMaxBatchSize();
+ private int maxPendingBatches =
Tranquilizer.DefaultMaxPendingBatches();
+ private long lingerMillis = Tranquilizer.DefaultLingerMillis();
+ private boolean blockOnFull = Tranquilizer.DefaultBlockOnFull();
+ private boolean enableDiscardStream = false;
+ private String discardStreamId ="druid-discard-stream";
--- End diff --
"druid-discard-stream" can be declared as a public constant like
DEFAULT_DISCARD_STREAM_ID in `DruidConfig` class, so that users can use thos
stream id while building the topology.
I prefer to remove `enableDiscardStream` and have only `discardStreamId`
which should be given by the user if user wants discarded events to be
forwarded to that stream. This API makes it simpler to set only the
discardStreamId.
> Storm Druid Connector
> ---------------------
>
> Key: STORM-1979
> URL: https://issues.apache.org/jira/browse/STORM-1979
> Project: Apache Storm
> Issue Type: Improvement
> Reporter: Sriharsha Chintalapani
> Assignee: Manikumar Reddy
>
> Storm Bolt & Trident state implementation for Druid.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)