Merge remote-tracking branch 'upstream/master' into STORM-166
Conflicts:
STORM-UI-REST-API.md
pom.xml
storm-core/src/clj/backtype/storm/daemon/nimbus.clj
storm-core/src/clj/backtype/storm/daemon/supervisor.clj
storm-core/src/clj/backtype/storm/ui/core.clj
storm-core/src/jvm/backtype/storm/generated/ClusterSummary.java
storm-core/src/jvm/backtype/storm/generated/TopologyInfo.java
storm-core/src/jvm/backtype/storm/generated/TopologySummary.java
storm-core/src/py/storm/ttypes.py
storm-core/test/clj/backtype/storm/nimbus_test.clj
Project: http://git-wip-us.apache.org/repos/asf/storm/repo
Commit: http://git-wip-us.apache.org/repos/asf/storm/commit/85e4d5ef
Tree: http://git-wip-us.apache.org/repos/asf/storm/tree/85e4d5ef
Diff: http://git-wip-us.apache.org/repos/asf/storm/diff/85e4d5ef
Branch: refs/heads/nimbus-ha-branch
Commit: 85e4d5efce66352469cb4c9947922731e834ca5d
Parents: 8d4e561 559f0f2
Author: Parth Brahmbhatt <[email protected]>
Authored: Mon Mar 2 15:16:05 2015 -0800
Committer: Parth Brahmbhatt <[email protected]>
Committed: Mon Mar 2 15:16:05 2015 -0800
----------------------------------------------------------------------
.gitignore | 4 +-
BYLAWS.md | 31 +-
CHANGELOG.md | 18 +
DEVELOPER.md | 24 +-
README.markdown | 3 +
SECURITY.md | 10 +-
STORM-UI-REST-API.md | 46 +-
bin/storm-config.cmd | 14 +-
bin/storm.cmd | 33 +-
conf/defaults.yaml | 2 +-
docs/documentation/Trident-API-Overview.md | 2 +-
docs/images/architecture.png | Bin 0 -> 69825 bytes
docs/images/architecture.svg | 1458 +++
docs/images/bolt.png | Bin 0 -> 24796 bytes
docs/images/bolt.svg | 743 ++
docs/images/security.png | Bin 0 -> 72415 bytes
docs/images/security.svg | 1779 ++++
docs/images/spout.png | Bin 0 -> 22911 bytes
docs/images/spout.svg | 833 ++
docs/images/storm.svg | 1326 +++
docs/images/topology.png | Bin 59837 -> 64740 bytes
docs/images/topology.svg | 1044 ++
docs/images/topology_dark.png | Bin 0 -> 49692 bytes
docs/images/topology_dark.svg | 1101 +++
.../jvm/storm/starter/BasicDRPCTopology.java | 3 +-
external/storm-hdfs/pom.xml | 18 +-
.../storm/hdfs/bolt/HdfsFileTopology.java | 6 +-
.../storm/hdfs/bolt/SequenceFileTopology.java | 4 +-
.../storm/hdfs/trident/TridentFileTopology.java | 2 +-
.../hdfs/trident/TridentSequenceTopology.java | 6 +-
external/storm-hive/README.md | 113 +
external/storm-hive/pom.xml | 143 +
.../org/apache/storm/hive/bolt/HiveBolt.java | 289 +
.../bolt/mapper/DelimitedRecordHiveMapper.java | 143 +
.../storm/hive/bolt/mapper/HiveMapper.java | 81 +
.../hive/bolt/mapper/JsonRecordHiveMapper.java | 132 +
.../apache/storm/hive/common/HiveOptions.java | 146 +
.../org/apache/storm/hive/common/HiveUtils.java | 76 +
.../apache/storm/hive/common/HiveWriter.java | 420 +
.../apache/storm/hive/trident/HiveState.java | 306 +
.../storm/hive/trident/HiveStateFactory.java | 31 +
.../apache/storm/hive/trident/HiveUpdater.java | 14 +
.../apache/storm/hive/bolt/HiveSetupUtil.java | 220 +
.../apache/storm/hive/bolt/HiveTopology.java | 150 +
.../hive/bolt/HiveTopologyPartitioned.java | 153 +
.../apache/storm/hive/bolt/TestHiveBolt.java | 330 +
.../storm/hive/common/TestHiveWriter.java | 193 +
.../storm/hive/trident/TridentHiveTopology.java | 190 +
external/storm-jdbc/LICENSE | 202 +
external/storm-jdbc/README.md | 240 +
external/storm-jdbc/pom.xml | 125 +
.../storm/jdbc/bolt/AbstractJdbcBolt.java | 57 +
.../apache/storm/jdbc/bolt/JdbcInsertBolt.java | 71 +
.../apache/storm/jdbc/bolt/JdbcLookupBolt.java | 76 +
.../org/apache/storm/jdbc/common/Column.java | 111 +
.../apache/storm/jdbc/common/JdbcClient.java | 228 +
.../java/org/apache/storm/jdbc/common/Util.java | 75 +
.../storm/jdbc/mapper/JdbcLookupMapper.java | 26 +
.../apache/storm/jdbc/mapper/JdbcMapper.java | 33 +
.../jdbc/mapper/SimpleJdbcLookupMapper.java | 46 +
.../storm/jdbc/mapper/SimpleJdbcMapper.java | 92 +
.../storm/jdbc/trident/state/JdbcQuery.java | 40 +
.../storm/jdbc/trident/state/JdbcState.java | 145 +
.../jdbc/trident/state/JdbcStateFactory.java | 40 +
.../storm/jdbc/trident/state/JdbcUpdater.java | 32 +
.../storm/jdbc/common/JdbcClientTest.java | 88 +
.../org/apache/storm/jdbc/common/UtilTest.java | 69 +
.../org/apache/storm/jdbc/spout/UserSpout.java | 90 +
.../jdbc/topology/AbstractUserTopology.java | 106 +
.../jdbc/topology/UserPersistanceTopology.java | 48 +
.../UserPersistanceTridentTopology.java | 61 +
external/storm-jdbc/src/test/sql/test.sql | 1 +
.../src/jvm/storm/kafka/PartitionManager.java | 5 +-
external/storm-redis/LICENSE | 202 +
external/storm-redis/README.md | 137 +
external/storm-redis/pom.xml | 65 +
.../storm/redis/bolt/AbstractRedisBolt.java | 67 +
.../trident/mapper/TridentTupleMapper.java | 27 +
.../trident/state/RedisClusterMapState.java | 294 +
.../redis/trident/state/RedisClusterState.java | 80 +
.../trident/state/RedisClusterStateQuerier.java | 78 +
.../trident/state/RedisClusterStateUpdater.java | 76 +
.../redis/trident/state/RedisMapState.java | 323 +
.../storm/redis/trident/state/RedisState.java | 83 +
.../redis/trident/state/RedisStateQuerier.java | 70 +
.../state/RedisStateSetCountQuerier.java | 74 +
.../trident/state/RedisStateSetUpdater.java | 80 +
.../redis/trident/state/RedisStateUpdater.java | 75 +
.../redis/util/config/JedisClusterConfig.java | 82 +
.../redis/util/config/JedisPoolConfig.java | 97 +
.../util/container/JedisClusterContainer.java | 47 +
.../JedisCommandsContainerBuilder.java | 38 +
.../JedisCommandsInstanceContainer.java | 25 +
.../redis/util/container/JedisContainer.java | 65 +
.../storm/redis/topology/LookupWordCount.java | 127 +
.../redis/topology/PersistentWordCount.java | 117 +
.../storm/redis/topology/WordCounter.java | 58 +
.../apache/storm/redis/topology/WordSpout.java | 88 +
.../storm/redis/trident/PrintFunction.java | 40 +
.../redis/trident/WordCountTridentRedis.java | 97 +
.../trident/WordCountTridentRedisCluster.java | 103 +
.../WordCountTridentRedisClusterMap.java | 101 +
.../redis/trident/WordCountTridentRedisMap.java | 95 +
.../redis/trident/WordCountTupleMapper.java | 16 +
pom.xml | 15 +-
storm-core/pom.xml | 13 +-
storm-core/src/clj/backtype/storm/bootstrap.clj | 64 -
storm-core/src/clj/backtype/storm/clojure.clj | 2 +-
storm-core/src/clj/backtype/storm/config.clj | 3 +-
.../src/clj/backtype/storm/daemon/drpc.clj | 6 +-
.../src/clj/backtype/storm/daemon/executor.clj | 26 +-
.../src/clj/backtype/storm/daemon/nimbus.clj | 26 +-
.../clj/backtype/storm/daemon/supervisor.clj | 179 +-
.../src/clj/backtype/storm/daemon/task.clj | 16 +-
.../src/clj/backtype/storm/daemon/worker.clj | 70 +-
.../src/clj/backtype/storm/messaging/local.clj | 2 +-
storm-core/src/clj/backtype/storm/tuple.clj | 4 +-
storm-core/src/clj/backtype/storm/ui/core.clj | 61 +-
.../src/clj/backtype/storm/ui/helpers.clj | 1 +
storm-core/src/clj/backtype/storm/util.clj | 3 +
.../storm/drpc/DRPCInvocationsClient.java | 6 +
.../src/jvm/backtype/storm/drpc/DRPCSpout.java | 14 +-
.../jvm/backtype/storm/drpc/ReturnResults.java | 8 +-
.../storm/generated/AlreadyAliveException.java | 149 +-
.../storm/generated/AuthorizationException.java | 149 +-
.../src/jvm/backtype/storm/generated/Bolt.java | 194 +-
.../jvm/backtype/storm/generated/BoltStats.java | 908 +-
.../storm/generated/ClusterSummary.java | 383 +-
.../storm/generated/ComponentCommon.java | 426 +-
.../storm/generated/ComponentObject.java | 86 +-
.../backtype/storm/generated/Credentials.java | 220 +-
.../storm/generated/DRPCExecutionException.java | 149 +-
.../backtype/storm/generated/DRPCRequest.java | 185 +-
.../storm/generated/DistributedRPC.java | 529 +-
.../generated/DistributedRPCInvocations.java | 1199 ++-
.../jvm/backtype/storm/generated/ErrorInfo.java | 300 +-
.../backtype/storm/generated/ExecutorInfo.java | 198 +-
.../storm/generated/ExecutorSpecificStats.java | 72 +-
.../backtype/storm/generated/ExecutorStats.java | 486 +-
.../storm/generated/ExecutorSummary.java | 371 +-
.../storm/generated/GetInfoOptions.java | 166 +-
.../storm/generated/GlobalStreamId.java | 185 +-
.../jvm/backtype/storm/generated/Grouping.java | 163 +-
.../generated/InvalidTopologyException.java | 149 +-
.../backtype/storm/generated/JavaObject.java | 239 +-
.../backtype/storm/generated/JavaObjectArg.java | 108 +-
.../backtype/storm/generated/KillOptions.java | 176 +-
.../jvm/backtype/storm/generated/Nimbus.java | 9177 +++++++++++++-----
.../storm/generated/NotAliveException.java | 149 +-
.../backtype/storm/generated/NullStruct.java | 112 +-
.../storm/generated/NumErrorsChoice.java | 3 +-
.../storm/generated/RebalanceOptions.java | 348 +-
.../storm/generated/ShellComponent.java | 202 +-
.../jvm/backtype/storm/generated/SpoutSpec.java | 194 +-
.../backtype/storm/generated/SpoutStats.java | 614 +-
.../storm/generated/StateSpoutSpec.java | 194 +-
.../backtype/storm/generated/StormTopology.java | 410 +-
.../backtype/storm/generated/StreamInfo.java | 249 +-
.../backtype/storm/generated/SubmitOptions.java | 208 +-
.../storm/generated/SupervisorSummary.java | 309 +-
.../backtype/storm/generated/TopologyInfo.java | 661 +-
.../storm/generated/TopologyInitialStatus.java | 3 +-
.../storm/generated/TopologySummary.java | 538 +-
.../storm/messaging/ConnectionWithStatus.java | 32 +
.../backtype/storm/messaging/netty/Client.java | 712 +-
.../messaging/netty/SaslStormClientHandler.java | 5 +-
.../backtype/storm/messaging/netty/Server.java | 182 +-
.../netty/StormClientPipelineFactory.java | 5 +-
.../security/auth/SimpleTransportPlugin.java | 2 +-
.../trident/drpc/ReturnResultsReducer.java | 4 +-
.../trident/spout/RichSpoutBatchExecutor.java | 1 +
storm-core/src/py/storm/DistributedRPC-remote | 35 +-
storm-core/src/py/storm/DistributedRPC.py | 38 +-
.../py/storm/DistributedRPCInvocations-remote | 43 +-
.../src/py/storm/DistributedRPCInvocations.py | 95 +-
storm-core/src/py/storm/Nimbus-remote | 111 +-
storm-core/src/py/storm/Nimbus.py | 640 +-
storm-core/src/py/storm/constants.py | 6 +-
storm-core/src/py/storm/ttypes.py | 470 +-
storm-core/src/ui/public/index.html | 1 +
.../test/clj/backtype/storm/clojure_test.clj | 9 +-
.../test/clj/backtype/storm/drpc_test.clj | 8 +-
.../test/clj/backtype/storm/grouping_test.clj | 9 +-
.../clj/backtype/storm/integration_test.clj | 10 +-
.../storm/messaging/netty_integration_test.clj | 5 +-
.../storm/messaging/netty_unit_test.clj | 73 +-
.../test/clj/backtype/storm/messaging_test.clj | 6 +-
.../test/clj/backtype/storm/metrics_test.clj | 8 +-
.../test/clj/backtype/storm/multilang_test.clj | 6 +-
.../test/clj/backtype/storm/nimbus_test.clj | 22 +-
.../scheduler/multitenant_scheduler_test.clj | 4 +-
.../test/clj/backtype/storm/scheduler_test.clj | 4 +-
.../storm/security/auth/AuthUtils_test.clj | 6 +-
.../backtype/storm/security/auth/auth_test.clj | 13 +-
.../storm/security/auth/drpc_auth_test.clj | 7 +-
.../storm/security/auth/nimbus_auth_test.clj | 10 +-
.../clj/backtype/storm/subtopology_test.clj | 9 +-
.../test/clj/backtype/storm/supervisor_test.clj | 16 +-
.../test/clj/backtype/storm/tick_tuple_test.clj | 7 +-
.../clj/backtype/storm/transactional_test.clj | 14 +-
.../test/clj/backtype/storm/worker_test.clj | 37 +
storm-dist/binary/src/main/assembly/binary.xml | 38 +-
202 files changed, 32950 insertions(+), 7507 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/STORM-UI-REST-API.md
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/conf/defaults.yaml
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/pom.xml
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/pom.xml
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/src/clj/backtype/storm/config.clj
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/src/clj/backtype/storm/daemon/nimbus.clj
----------------------------------------------------------------------
diff --cc storm-core/src/clj/backtype/storm/daemon/nimbus.clj
index 30d123d,f1b4082..eee0417
--- a/storm-core/src/clj/backtype/storm/daemon/nimbus.clj
+++ b/storm-core/src/clj/backtype/storm/daemon/nimbus.clj
@@@ -14,24 -14,32 +14,36 @@@
;; See the License for the specific language governing permissions and
;; limitations under the License.
(ns backtype.storm.daemon.nimbus
+ (:import [org.apache.thrift.server THsHaServer THsHaServer$Args])
+ (:import [org.apache.thrift.protocol TBinaryProtocol
TBinaryProtocol$Factory])
+ (:import [org.apache.thrift.exception])
+ (:import [org.apache.thrift.transport TNonblockingServerTransport
TNonblockingServerSocket])
+ (:import [org.apache.commons.io FileUtils])
(:import [java.nio ByteBuffer]
- [java.util Collections]
- [java.util Collections HashMap])
++ [java.util Collections HashMap]
+ [backtype.storm.generated NimbusSummary])
- (:import [java.io FileNotFoundException])
+ (:import [java.io FileNotFoundException File FileOutputStream])
+ (:import [java.net InetAddress])
(:import [java.nio.channels Channels WritableByteChannel])
(:import [backtype.storm.security.auth ThriftServer ThriftConnectionType
ReqContext AuthUtils])
(:use [backtype.storm.scheduler.DefaultScheduler])
(:import [backtype.storm.scheduler INimbus SupervisorDetails WorkerSlot
TopologyDetails
Cluster Topologies SchedulerAssignment SchedulerAssignmentImpl
DefaultScheduler ExecutorDetails])
- (:use [backtype.storm bootstrap util zookeeper])
+ (:import [backtype.storm.nimbus NimbusInfo])
- (:import [backtype.storm.generated AuthorizationException GetInfoOptions
- NumErrorsChoice])
- (:use [backtype.storm.config :only [validate-configs-with-schemas]])
+ (:import [backtype.storm.utils TimeCacheMap TimeCacheMap$ExpiredCallback
Utils ThriftTopologyUtils
+ BufferFileInputStream])
+ (:import [backtype.storm.generated NotAliveException AlreadyAliveException
StormTopology ErrorInfo
+ ExecutorInfo InvalidTopologyException Nimbus$Iface
Nimbus$Processor SubmitOptions TopologyInitialStatus
+ KillOptions RebalanceOptions ClusterSummary SupervisorSummary
TopologySummary TopologyInfo
+ ExecutorSummary AuthorizationException GetInfoOptions
NumErrorsChoice])
+ (:import [backtype.storm.daemon Shutdownable])
- (:use [backtype.storm util config log timer])
++ (:use [backtype.storm util config log timer zookeeper])
+ (:require [backtype.storm [cluster :as cluster] [stats :as stats]])
+ (:require [clojure.set :as set])
+ (:import [backtype.storm.daemon.common StormBase Assignment])
(:use [backtype.storm.daemon common])
(:import [org.apache.zookeeper data.ACL ZooDefs$Ids ZooDefs$Perms])
+ (:import [backtype.storm.utils VersionInfo])
(:gen-class
:methods [^{:static true} [launch [backtype.storm.scheduler.INimbus]
void]]))
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/src/clj/backtype/storm/daemon/supervisor.clj
----------------------------------------------------------------------
diff --cc storm-core/src/clj/backtype/storm/daemon/supervisor.clj
index e53cb52,b9f9632..d315925
--- a/storm-core/src/clj/backtype/storm/daemon/supervisor.clj
+++ b/storm-core/src/clj/backtype/storm/daemon/supervisor.clj
@@@ -28,11 -35,8 +35,9 @@@
(:gen-class
:methods [^{:static true} [launch [backtype.storm.scheduler.ISupervisor]
void]]))
- (bootstrap)
-
(defmulti download-storm-code cluster-mode)
(defmulti launch-worker (fn [supervisor & _] (cluster-mode (:conf
supervisor))))
+(defmulti mk-code-distributor cluster-mode)
;; used as part of a map from port to this
(defrecord LocalAssignment [storm-id executors])
@@@ -302,7 -306,7 +307,8 @@@
))
:assignment-versions (atom {})
:sync-retry (atom 0)
+ :code-distributor (mk-code-distributor conf)
+ :download-lock (Object.)
})
(defn sync-processes [supervisor]
@@@ -431,16 -458,7 +463,7 @@@
(doseq [[storm-id master-code-dir] storm-code-map]
(when (and (not (downloaded-storm-ids storm-id))
(assigned-storm-ids storm-id))
- (log-message "Downloading code for storm id "
- storm-id
- " from "
- master-code-dir)
- (download-storm-code conf storm-id master-code-dir supervisor)
- (log-message "Finished downloading code for storm id "
- storm-id
- " from "
- master-code-dir)
- ))
- (download-storm-code conf storm-id master-code-dir download-lock)))
++ (download-storm-code conf storm-id master-code-dir supervisor
download-lock)))
(log-debug "Writing new assignment "
(pr-str new-assignment))
@@@ -544,21 -562,30 +567,23 @@@
;; distributed implementation
(defmethod download-storm-code
- :distributed [conf storm-id master-code-dir supervisor]
- :distributed [conf storm-id master-code-dir download-lock]
++ :distributed [conf storm-id master-code-dir supervisor download-lock]
;; Downloading to permanent location is atomic
(let [tmproot (str (supervisor-tmp-dir conf) file-path-separator (uuid))
- stormroot (supervisor-stormdist-root conf storm-id)]
+ stormroot (supervisor-stormdist-root conf storm-id)
+ master-meta-file-path (master-storm-metafile-path master-code-dir)
+ supervisor-meta-file-path (supervisor-storm-metafile-path tmproot)]
- (FileUtils/forceMkdir (File. tmproot))
- (Utils/downloadFromMaster conf master-meta-file-path
supervisor-meta-file-path)
- (if (:code-distributor supervisor)
- (.download (:code-distributor supervisor) storm-id (File.
supervisor-meta-file-path)))
- (extract-dir-from-jar (supervisor-stormjar-path tmproot)
RESOURCES-SUBDIR tmproot)
- (if (.exists (File. stormroot)) (FileUtils/forceDelete (File.
stormroot)))
- (FileUtils/moveDirectory (File. tmproot) (File. stormroot))
- (setup-storm-code-dir conf (read-supervisor-storm-conf conf storm-id)
stormroot)
- ))
+ (locking download-lock
- (log-message "Downloading code for storm id "
- storm-id
- " from "
- master-code-dir)
- (FileUtils/forceMkdir (File. tmproot))
-
- (Utils/downloadFromMaster conf (master-stormjar-path
master-code-dir) (supervisor-stormjar-path tmproot))
- (Utils/downloadFromMaster conf (master-stormcode-path
master-code-dir) (supervisor-stormcode-path tmproot))
- (Utils/downloadFromMaster conf (master-stormconf-path
master-code-dir) (supervisor-stormconf-path tmproot))
- (extract-dir-from-jar (supervisor-stormjar-path tmproot)
RESOURCES-SUBDIR tmproot)
- (if-not (.exists (File. stormroot))
- (FileUtils/moveDirectory (File. tmproot) (File. stormroot))
- (FileUtils/deleteDirectory (File. tmproot)))
- (setup-storm-code-dir conf (read-supervisor-storm-conf conf
storm-id) stormroot)
- (log-message "Finished downloading code for storm id "
- storm-id
- " from "
- master-code-dir))
- ))
++ (log-message "Downloading code for storm id " storm-id " from "
master-code-dir)
++ (FileUtils/forceMkdir (File. tmproot))
++ (Utils/downloadFromMaster conf master-meta-file-path
supervisor-meta-file-path)
++ (if (:code-distributor supervisor)
++ (.download (:code-distributor supervisor) storm-id (File.
supervisor-meta-file-path)))
++ (extract-dir-from-jar (supervisor-stormjar-path tmproot)
RESOURCES-SUBDIR tmproot)
++ (if (.exists (File. stormroot)) (FileUtils/forceDelete (File.
stormroot)))
++ (FileUtils/moveDirectory (File. tmproot) (File. stormroot))
++ (setup-storm-code-dir conf (read-supervisor-storm-conf conf storm-id)
stormroot)
++ (log-message "Finished downloading code for storm id " storm-id "
from " master-code-dir))))
(defn write-log-metadata-to-yaml-file! [storm-id port data conf]
(let [file (get-log-metadata-file storm-id port)]
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/src/clj/backtype/storm/ui/core.clj
----------------------------------------------------------------------
diff --cc storm-core/src/clj/backtype/storm/ui/core.clj
index 726da73,f656b12..7fc9273
--- a/storm-core/src/clj/backtype/storm/ui/core.clj
+++ b/storm-core/src/clj/backtype/storm/ui/core.clj
@@@ -17,8 -17,9 +17,9 @@@
(ns backtype.storm.ui.core
(:use compojure.core)
(:use ring.middleware.reload)
+ (:use [ring.middleware.json :only [wrap-json-params]])
(:use [hiccup core page-helpers])
- (:use [backtype.storm config util log])
+ (:use [backtype.storm config util log zookeeper])
(:use [backtype.storm.ui helpers])
(:use [backtype.storm.daemon [common :only [ACKER-COMPONENT-ID
ACKER-INIT-STREAM-ID ACKER-ACK-STREAM-ID
ACKER-FAIL-STREAM-ID system-id?
mk-authorization-handler]]])
@@@ -492,18 -495,21 +493,20 @@@
(cluster-summary (.getClusterInfo ^Nimbus$Client nimbus) user)))
([^ClusterSummary summ user]
(let [sups (.get_supervisors summ)
- used-slots (reduce + (map #(.get_num_used_workers ^SupervisorSummary
%) sups))
- total-slots (reduce + (map #(.get_num_workers ^SupervisorSummary %)
sups))
- free-slots (- total-slots used-slots)
- total-tasks (->> (.get_topologies summ)
- (map #(.get_num_tasks ^TopologySummary %))
- (reduce +))
- total-executors (->> (.get_topologies summ)
- (map #(.get_num_executors ^TopologySummary %))
- (reduce +))]
+ used-slots (reduce + (map #(.get_num_used_workers
^SupervisorSummary %) sups))
+ total-slots (reduce + (map #(.get_num_workers ^SupervisorSummary
%) sups))
+ free-slots (- total-slots used-slots)
+ topologies (.get_topologies_size summ)
+ total-tasks (->> (.get_topologies summ)
+ (map #(.get_num_tasks ^TopologySummary %))
+ (reduce +))
+ total-executors (->> (.get_topologies summ)
+ (map #(.get_num_executors ^TopologySummary %))
+ (reduce +))]
{"user" user
"stormVersion" (str (VersionInfo/getVersion))
- "nimbusUptime" (pretty-uptime-sec (.get_nimbus_uptime_secs summ))
"supervisors" (count sups)
+ "topologies" topologies
"slotsTotal" total-slots
"slotsUsed" used-slots
"slotsFree" free-slots
@@@ -869,9 -855,15 +872,15 @@@
spec errors))))
(defn topology-config [topology-id]
- (with-nimbus nimbus
- (from-json (.getTopologyConf ^Nimbus$Client nimbus topology-id))))
+ (thrift/with-configured-nimbus-connection nimbus
+ (from-json (.getTopologyConf ^Nimbus$Client nimbus topology-id))))
+ (defn topology-op-response [topology-id op]
+ {"topologyOperation" op,
+ "topologyId" topology-id,
+ "status" "success"
+ })
+
(defn check-include-sys?
[sys?]
(if (or (nil? sys?) (= "false" sys?)) false true))
@@@ -920,8 -910,8 +930,8 @@@
(json-response (component-page id component (:window m)
(check-include-sys? (:sys m)) user) (:callback m))))
(GET "/api/v1/token" [ & m]
(json-response (format "{\"antiForgeryToken\": \"%s\"}"
*anti-forgery-token*) (:callback m) :serialize-fn identity))
- (POST "/api/v1/topology/:id/activate" [:as {:keys [cookies
servlet-request]} id]
+ (POST "/api/v1/topology/:id/activate" [:as {:keys [cookies
servlet-request]} id & m]
- (with-nimbus nimbus
+ (thrift/with-configured-nimbus-connection nimbus
(let [tplg (->> (doto
(GetInfoOptions.)
(.set_num_err_choice NumErrorsChoice/NONE))
@@@ -930,9 -920,9 +940,9 @@@
(assert-authorized-user servlet-request "activate" (topology-config
id))
(.activate nimbus name)
(log-message "Activating topology '" name "'")))
- (resp/redirect (str "/api/v1/topology/" (url-encode id))))
- (POST "/api/v1/topology/:id/deactivate" [:as {:keys [cookies
servlet-request]} id]
- (json-response (topology-op-response id "deactivate") (m "callback")))
++ (json-response (topology-op-response id "activate") (m "callback")))
+ (POST "/api/v1/topology/:id/deactivate" [:as {:keys [cookies
servlet-request]} id & m]
- (with-nimbus nimbus
+ (thrift/with-configured-nimbus-connection nimbus
(let [tplg (->> (doto
(GetInfoOptions.)
(.set_num_err_choice NumErrorsChoice/NONE))
@@@ -941,9 -931,9 +951,9 @@@
(assert-authorized-user servlet-request "deactivate" (topology-config
id))
(.deactivate nimbus name)
(log-message "Deactivating topology '" name "'")))
- (resp/redirect (str "/api/v1/topology/" (url-encode id))))
- (POST "/api/v1/topology/:id/rebalance/:wait-time" [:as {:keys [cookies
servlet-request]} id wait-time]
+ (json-response (topology-op-response id "deactivate") (m "callback")))
+ (POST "/api/v1/topology/:id/rebalance/:wait-time" [:as {:keys [cookies
servlet-request]} id wait-time & m]
- (with-nimbus nimbus
+ (thrift/with-configured-nimbus-connection nimbus
(let [tplg (->> (doto
(GetInfoOptions.)
(.set_num_err_choice NumErrorsChoice/NONE))
@@@ -952,11 -943,16 +963,16 @@@
options (RebalanceOptions.)]
(assert-authorized-user servlet-request "rebalance" (topology-config
id))
(.set_wait_secs options (Integer/parseInt wait-time))
+ (if (and (not-nil? rebalance-options) (contains? rebalance-options
"numWorkers"))
+ (.set_num_workers options (Integer/parseInt (.toString
(rebalance-options "numWorkers")))))
+ (if (and (not-nil? rebalance-options) (contains? rebalance-options
"executors"))
+ (doseq [keyval (rebalance-options "executors")]
+ (.put_to_num_executors options (key keyval) (Integer/parseInt
(.toString (val keyval))))))
(.rebalance nimbus name options)
(log-message "Rebalancing topology '" name "' with wait time: "
wait-time " secs")))
- (resp/redirect (str "/api/v1/topology/" (url-encode id))))
- (POST "/api/v1/topology/:id/kill/:wait-time" [:as {:keys [cookies
servlet-request]} id wait-time]
+ (json-response (topology-op-response id "rebalance") (m "callback")))
+ (POST "/api/v1/topology/:id/kill/:wait-time" [:as {:keys [cookies
servlet-request]} id wait-time & m]
- (with-nimbus nimbus
+ (thrift/with-configured-nimbus-connection nimbus
(let [tplg (->> (doto
(GetInfoOptions.)
(.set_num_err_choice NumErrorsChoice/NONE))
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/src/jvm/backtype/storm/generated/ClusterSummary.java
----------------------------------------------------------------------
diff --cc storm-core/src/jvm/backtype/storm/generated/ClusterSummary.java
index 7e32c72,ee25ac8..e5651df
--- a/storm-core/src/jvm/backtype/storm/generated/ClusterSummary.java
+++ b/storm-core/src/jvm/backtype/storm/generated/ClusterSummary.java
@@@ -38,16 -50,24 +50,24 @@@ import javax.annotation.Generated
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
- public class ClusterSummary implements
org.apache.thrift.TBase<ClusterSummary, ClusterSummary._Fields>,
java.io.Serializable, Cloneable {
+ @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date =
"2015-2-6")
++@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date =
"2015-3-2")
+ public class ClusterSummary implements
org.apache.thrift.TBase<ClusterSummary, ClusterSummary._Fields>,
java.io.Serializable, Cloneable, Comparable<ClusterSummary> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new
org.apache.thrift.protocol.TStruct("ClusterSummary");
private static final org.apache.thrift.protocol.TField
SUPERVISORS_FIELD_DESC = new org.apache.thrift.protocol.TField("supervisors",
org.apache.thrift.protocol.TType.LIST, (short)1);
- private static final org.apache.thrift.protocol.TField
NIMBUS_UPTIME_SECS_FIELD_DESC = new
org.apache.thrift.protocol.TField("nimbus_uptime_secs",
org.apache.thrift.protocol.TType.I32, (short)2);
private static final org.apache.thrift.protocol.TField
TOPOLOGIES_FIELD_DESC = new org.apache.thrift.protocol.TField("topologies",
org.apache.thrift.protocol.TType.LIST, (short)3);
+ private static final org.apache.thrift.protocol.TField NIMBUSES_FIELD_DESC
= new org.apache.thrift.protocol.TField("nimbuses",
org.apache.thrift.protocol.TType.LIST, (short)4);
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes =
new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new
ClusterSummaryStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new ClusterSummaryTupleSchemeFactory());
+ }
+
private List<SupervisorSummary> supervisors; // required
- private int nimbus_uptime_secs; // required
private List<TopologySummary> topologies; // required
+ private List<NimbusSummary> nimbuses; // required
/** The set of fields this struct contains, along with convenience methods
for finding and manipulating them. */
public enum _Fields implements org.apache.thrift.TFieldIdEnum {
@@@ -114,7 -134,8 +134,6 @@@
}
// isset id assignments
-
- private static final int __NIMBUS_UPTIME_SECS_ISSET_ID = 0;
- private byte __isset_bitfield = 0;
public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData>
metaDataMap;
static {
Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new
EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@@ -149,27 -170,22 +168,27 @@@
* Performs a deep copy on <i>other</i>.
*/
public ClusterSummary(ClusterSummary other) {
- __isset_bitfield = other.__isset_bitfield;
if (other.is_set_supervisors()) {
- List<SupervisorSummary> __this__supervisors = new
ArrayList<SupervisorSummary>();
+ List<SupervisorSummary> __this__supervisors = new
ArrayList<SupervisorSummary>(other.supervisors.size());
for (SupervisorSummary other_element : other.supervisors) {
__this__supervisors.add(new SupervisorSummary(other_element));
}
this.supervisors = __this__supervisors;
}
- this.nimbus_uptime_secs = other.nimbus_uptime_secs;
if (other.is_set_topologies()) {
- List<TopologySummary> __this__topologies = new
ArrayList<TopologySummary>();
+ List<TopologySummary> __this__topologies = new
ArrayList<TopologySummary>(other.topologies.size());
for (TopologySummary other_element : other.topologies) {
__this__topologies.add(new TopologySummary(other_element));
}
this.topologies = __this__topologies;
}
+ if (other.is_set_nimbuses()) {
- List<NimbusSummary> __this__nimbuses = new ArrayList<NimbusSummary>();
++ List<NimbusSummary> __this__nimbuses = new
ArrayList<NimbusSummary>(other.nimbuses.size());
+ for (NimbusSummary other_element : other.nimbuses) {
+ __this__nimbuses.add(new NimbusSummary(other_element));
+ }
+ this.nimbuses = __this__nimbuses;
+ }
}
public ClusterSummary deepCopy() {
@@@ -403,26 -404,27 +422,27 @@@
@Override
public int hashCode() {
- HashCodeBuilder builder = new HashCodeBuilder();
+ List<Object> list = new ArrayList<Object>();
boolean present_supervisors = true && (is_set_supervisors());
- builder.append(present_supervisors);
+ list.add(present_supervisors);
if (present_supervisors)
- builder.append(supervisors);
+ list.add(supervisors);
- boolean present_nimbus_uptime_secs = true;
- list.add(present_nimbus_uptime_secs);
- if (present_nimbus_uptime_secs)
- list.add(nimbus_uptime_secs);
-
boolean present_topologies = true && (is_set_topologies());
- builder.append(present_topologies);
+ list.add(present_topologies);
if (present_topologies)
- builder.append(topologies);
+ list.add(topologies);
+ boolean present_nimbuses = true && (is_set_nimbuses());
- builder.append(present_nimbuses);
++ list.add(present_nimbuses);
+ if (present_nimbuses)
- builder.append(nimbuses);
++ list.add(nimbuses);
+
- return builder.toHashCode();
+ return list.hashCode();
}
+ @Override
public int compareTo(ClusterSummary other) {
if (!getClass().equals(other.getClass())) {
return getClass().getName().compareTo(other.getClass().getName());
@@@ -441,22 -442,22 +460,22 @@@
return lastComparison;
}
}
- lastComparison =
Boolean.valueOf(is_set_topologies()).compareTo(typedOther.is_set_topologies());
- lastComparison =
Boolean.valueOf(is_set_nimbus_uptime_secs()).compareTo(other.is_set_nimbus_uptime_secs());
++ lastComparison =
Boolean.valueOf(is_set_topologies()).compareTo(other.is_set_topologies());
if (lastComparison != 0) {
return lastComparison;
}
- if (is_set_nimbus_uptime_secs()) {
- lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.nimbus_uptime_secs,
other.nimbus_uptime_secs);
+ if (is_set_topologies()) {
- lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.topologies, typedOther.topologies);
++ lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.topologies, other.topologies);
if (lastComparison != 0) {
return lastComparison;
}
}
- lastComparison =
Boolean.valueOf(is_set_nimbuses()).compareTo(typedOther.is_set_nimbuses());
- lastComparison =
Boolean.valueOf(is_set_topologies()).compareTo(other.is_set_topologies());
++ lastComparison =
Boolean.valueOf(is_set_nimbuses()).compareTo(other.is_set_nimbuses());
if (lastComparison != 0) {
return lastComparison;
}
- if (is_set_topologies()) {
- lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.topologies, other.topologies);
+ if (is_set_nimbuses()) {
- lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nimbuses,
typedOther.nimbuses);
++ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.nimbuses,
other.nimbuses);
if (lastComparison != 0) {
return lastComparison;
}
@@@ -627,10 -519,7 +537,11 @@@
throw new org.apache.thrift.protocol.TProtocolException("Required field
'topologies' is unset! Struct:" + toString());
}
+ if (!is_set_nimbuses()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field
'nimbuses' is unset! Struct:" + toString());
+ }
+
+ // check for sub-struct validity
}
private void writeObject(java.io.ObjectOutputStream out) throws
java.io.IOException {
@@@ -649,5 -540,175 +560,211 @@@
}
}
+ private static class ClusterSummaryStandardSchemeFactory implements
SchemeFactory {
+ public ClusterSummaryStandardScheme getScheme() {
+ return new ClusterSummaryStandardScheme();
+ }
+ }
+
+ private static class ClusterSummaryStandardScheme extends
StandardScheme<ClusterSummary> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot,
ClusterSummary struct) throws org.apache.thrift.TException {
+ org.apache.thrift.protocol.TField schemeField;
+ iprot.readStructBegin();
+ while (true)
+ {
+ schemeField = iprot.readFieldBegin();
+ if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
+ break;
+ }
+ switch (schemeField.id) {
+ case 1: // SUPERVISORS
+ if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+ {
+ org.apache.thrift.protocol.TList _list74 =
iprot.readListBegin();
+ struct.supervisors = new
ArrayList<SupervisorSummary>(_list74.size);
+ SupervisorSummary _elem75;
+ for (int _i76 = 0; _i76 < _list74.size; ++_i76)
+ {
+ _elem75 = new SupervisorSummary();
+ _elem75.read(iprot);
+ struct.supervisors.add(_elem75);
+ }
+ iprot.readListEnd();
+ }
+ struct.set_supervisors_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
- case 2: // NIMBUS_UPTIME_SECS
- if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
- struct.nimbus_uptime_secs = iprot.readI32();
- struct.set_nimbus_uptime_secs_isSet(true);
- } else {
- org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
- }
- break;
+ case 3: // TOPOLOGIES
+ if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+ {
+ org.apache.thrift.protocol.TList _list77 =
iprot.readListBegin();
+ struct.topologies = new
ArrayList<TopologySummary>(_list77.size);
+ TopologySummary _elem78;
+ for (int _i79 = 0; _i79 < _list77.size; ++_i79)
+ {
+ _elem78 = new TopologySummary();
+ _elem78.read(iprot);
+ struct.topologies.add(_elem78);
+ }
+ iprot.readListEnd();
+ }
+ struct.set_topologies_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
++ case 4: // NIMBUSES
++ if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
++ {
++ org.apache.thrift.protocol.TList _list80 =
iprot.readListBegin();
++ struct.nimbuses = new ArrayList<NimbusSummary>(_list80.size);
++ NimbusSummary _elem81;
++ for (int _i82 = 0; _i82 < _list80.size; ++_i82)
++ {
++ _elem81 = new NimbusSummary();
++ _elem81.read(iprot);
++ struct.nimbuses.add(_elem81);
++ }
++ iprot.readListEnd();
++ }
++ struct.set_nimbuses_isSet(true);
++ } else {
++ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
++ }
++ break;
+ default:
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ iprot.readFieldEnd();
+ }
+ iprot.readStructEnd();
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot,
ClusterSummary struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.supervisors != null) {
+ oprot.writeFieldBegin(SUPERVISORS_FIELD_DESC);
+ {
+ oprot.writeListBegin(new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
struct.supervisors.size()));
- for (SupervisorSummary _iter80 : struct.supervisors)
++ for (SupervisorSummary _iter83 : struct.supervisors)
+ {
- _iter80.write(oprot);
++ _iter83.write(oprot);
+ }
+ oprot.writeListEnd();
+ }
+ oprot.writeFieldEnd();
+ }
- oprot.writeFieldBegin(NIMBUS_UPTIME_SECS_FIELD_DESC);
- oprot.writeI32(struct.nimbus_uptime_secs);
- oprot.writeFieldEnd();
+ if (struct.topologies != null) {
+ oprot.writeFieldBegin(TOPOLOGIES_FIELD_DESC);
+ {
+ oprot.writeListBegin(new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
struct.topologies.size()));
- for (TopologySummary _iter81 : struct.topologies)
++ for (TopologySummary _iter84 : struct.topologies)
++ {
++ _iter84.write(oprot);
++ }
++ oprot.writeListEnd();
++ }
++ oprot.writeFieldEnd();
++ }
++ if (struct.nimbuses != null) {
++ oprot.writeFieldBegin(NIMBUSES_FIELD_DESC);
++ {
++ oprot.writeListBegin(new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
struct.nimbuses.size()));
++ for (NimbusSummary _iter85 : struct.nimbuses)
+ {
- _iter81.write(oprot);
++ _iter85.write(oprot);
+ }
+ oprot.writeListEnd();
+ }
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class ClusterSummaryTupleSchemeFactory implements
SchemeFactory {
+ public ClusterSummaryTupleScheme getScheme() {
+ return new ClusterSummaryTupleScheme();
+ }
+ }
+
+ private static class ClusterSummaryTupleScheme extends
TupleScheme<ClusterSummary> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot,
ClusterSummary struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ {
+ oprot.writeI32(struct.supervisors.size());
- for (SupervisorSummary _iter82 : struct.supervisors)
++ for (SupervisorSummary _iter86 : struct.supervisors)
+ {
- _iter82.write(oprot);
++ _iter86.write(oprot);
+ }
+ }
- oprot.writeI32(struct.nimbus_uptime_secs);
+ {
+ oprot.writeI32(struct.topologies.size());
- for (TopologySummary _iter83 : struct.topologies)
++ for (TopologySummary _iter87 : struct.topologies)
++ {
++ _iter87.write(oprot);
++ }
++ }
++ {
++ oprot.writeI32(struct.nimbuses.size());
++ for (NimbusSummary _iter88 : struct.nimbuses)
+ {
- _iter83.write(oprot);
++ _iter88.write(oprot);
+ }
+ }
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot,
ClusterSummary struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ {
- org.apache.thrift.protocol.TList _list84 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
- struct.supervisors = new ArrayList<SupervisorSummary>(_list84.size);
- SupervisorSummary _elem85;
- for (int _i86 = 0; _i86 < _list84.size; ++_i86)
++ org.apache.thrift.protocol.TList _list89 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
++ struct.supervisors = new ArrayList<SupervisorSummary>(_list89.size);
++ SupervisorSummary _elem90;
++ for (int _i91 = 0; _i91 < _list89.size; ++_i91)
+ {
- _elem85 = new SupervisorSummary();
- _elem85.read(iprot);
- struct.supervisors.add(_elem85);
++ _elem90 = new SupervisorSummary();
++ _elem90.read(iprot);
++ struct.supervisors.add(_elem90);
+ }
+ }
+ struct.set_supervisors_isSet(true);
- struct.nimbus_uptime_secs = iprot.readI32();
- struct.set_nimbus_uptime_secs_isSet(true);
+ {
- org.apache.thrift.protocol.TList _list87 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
- struct.topologies = new ArrayList<TopologySummary>(_list87.size);
- TopologySummary _elem88;
- for (int _i89 = 0; _i89 < _list87.size; ++_i89)
++ org.apache.thrift.protocol.TList _list92 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
++ struct.topologies = new ArrayList<TopologySummary>(_list92.size);
++ TopologySummary _elem93;
++ for (int _i94 = 0; _i94 < _list92.size; ++_i94)
+ {
- _elem88 = new TopologySummary();
- _elem88.read(iprot);
- struct.topologies.add(_elem88);
++ _elem93 = new TopologySummary();
++ _elem93.read(iprot);
++ struct.topologies.add(_elem93);
+ }
+ }
+ struct.set_topologies_isSet(true);
++ {
++ org.apache.thrift.protocol.TList _list95 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
++ struct.nimbuses = new ArrayList<NimbusSummary>(_list95.size);
++ NimbusSummary _elem96;
++ for (int _i97 = 0; _i97 < _list95.size; ++_i97)
++ {
++ _elem96 = new NimbusSummary();
++ _elem96.read(iprot);
++ struct.nimbuses.add(_elem96);
++ }
++ }
++ struct.set_nimbuses_isSet(true);
+ }
+ }
+
}
http://git-wip-us.apache.org/repos/asf/storm/blob/85e4d5ef/storm-core/src/jvm/backtype/storm/generated/TopologyInfo.java
----------------------------------------------------------------------
diff --cc storm-core/src/jvm/backtype/storm/generated/TopologyInfo.java
index 1ba5c5f,6e1a503..37c5c63
--- a/storm-core/src/jvm/backtype/storm/generated/TopologyInfo.java
+++ b/storm-core/src/jvm/backtype/storm/generated/TopologyInfo.java
@@@ -38,7 -50,9 +50,9 @@@ import javax.annotation.Generated
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
- public class TopologyInfo implements org.apache.thrift.TBase<TopologyInfo,
TopologyInfo._Fields>, java.io.Serializable, Cloneable {
+ @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"})
-@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date =
"2015-2-6")
++@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date =
"2015-3-2")
+ public class TopologyInfo implements org.apache.thrift.TBase<TopologyInfo,
TopologyInfo._Fields>, java.io.Serializable, Cloneable,
Comparable<TopologyInfo> {
private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new
org.apache.thrift.protocol.TStruct("TopologyInfo");
private static final org.apache.thrift.protocol.TField ID_FIELD_DESC = new
org.apache.thrift.protocol.TField("id",
org.apache.thrift.protocol.TType.STRING, (short)1);
@@@ -49,17 -63,21 +63,23 @@@
private static final org.apache.thrift.protocol.TField ERRORS_FIELD_DESC =
new org.apache.thrift.protocol.TField("errors",
org.apache.thrift.protocol.TType.MAP, (short)6);
private static final org.apache.thrift.protocol.TField
SCHED_STATUS_FIELD_DESC = new org.apache.thrift.protocol.TField("sched_status",
org.apache.thrift.protocol.TType.STRING, (short)513);
private static final org.apache.thrift.protocol.TField OWNER_FIELD_DESC =
new org.apache.thrift.protocol.TField("owner",
org.apache.thrift.protocol.TType.STRING, (short)514);
+ private static final org.apache.thrift.protocol.TField
REPLICATION_COUNT_FIELD_DESC = new
org.apache.thrift.protocol.TField("replication_count",
org.apache.thrift.protocol.TType.I32, (short)515);
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes =
new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new
TopologyInfoStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new TopologyInfoTupleSchemeFactory());
+ }
+
private String id; // required
private String name; // required
private int uptime_secs; // required
private List<ExecutorSummary> executors; // required
private String status; // required
private Map<String,List<ErrorInfo>> errors; // required
- private String sched_status; // required
- private String owner; // required
- private int replication_count; // required
+ private String sched_status; // optional
+ private String owner; // optional
++ private int replication_count; // optional
/** The set of fields this struct contains, along with convenience methods
for finding and manipulating them. */
public enum _Fields implements org.apache.thrift.TFieldIdEnum {
@@@ -145,9 -160,8 +165,9 @@@
// isset id assignments
private static final int __UPTIME_SECS_ISSET_ID = 0;
+ private static final int __REPLICATION_COUNT_ISSET_ID = 1;
- private BitSet __isset_bit_vector = new BitSet(2);
-
+ private byte __isset_bitfield = 0;
- private static final _Fields optionals[] =
{_Fields.SCHED_STATUS,_Fields.OWNER};
++ private static final _Fields optionals[] =
{_Fields.SCHED_STATUS,_Fields.OWNER,_Fields.REPLICATION_COUNT};
public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData>
metaDataMap;
static {
Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new
EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@@ -476,28 -484,6 +495,28 @@@
}
}
+ public int get_replication_count() {
+ return this.replication_count;
+ }
+
+ public void set_replication_count(int replication_count) {
+ this.replication_count = replication_count;
+ set_replication_count_isSet(true);
+ }
+
+ public void unset_replication_count() {
- __isset_bit_vector.clear(__REPLICATION_COUNT_ISSET_ID);
++ __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield,
__REPLICATION_COUNT_ISSET_ID);
+ }
+
+ /** Returns true if field replication_count is set (has been assigned a
value) and false otherwise */
+ public boolean is_set_replication_count() {
- return __isset_bit_vector.get(__REPLICATION_COUNT_ISSET_ID);
++ return EncodingUtils.testBit(__isset_bitfield,
__REPLICATION_COUNT_ISSET_ID);
+ }
+
+ public void set_replication_count_isSet(boolean value) {
- __isset_bit_vector.set(__REPLICATION_COUNT_ISSET_ID, value);
++ __isset_bitfield = EncodingUtils.setBit(__isset_bitfield,
__REPLICATION_COUNT_ISSET_ID, value);
+ }
+
public void setFieldValue(_Fields field, Object value) {
switch (field) {
case ID:
@@@ -736,56 -700,52 +755,57 @@@
@Override
public int hashCode() {
- HashCodeBuilder builder = new HashCodeBuilder();
+ List<Object> list = new ArrayList<Object>();
boolean present_id = true && (is_set_id());
- builder.append(present_id);
+ list.add(present_id);
if (present_id)
- builder.append(id);
+ list.add(id);
boolean present_name = true && (is_set_name());
- builder.append(present_name);
+ list.add(present_name);
if (present_name)
- builder.append(name);
+ list.add(name);
boolean present_uptime_secs = true;
- builder.append(present_uptime_secs);
+ list.add(present_uptime_secs);
if (present_uptime_secs)
- builder.append(uptime_secs);
+ list.add(uptime_secs);
boolean present_executors = true && (is_set_executors());
- builder.append(present_executors);
+ list.add(present_executors);
if (present_executors)
- builder.append(executors);
+ list.add(executors);
boolean present_status = true && (is_set_status());
- builder.append(present_status);
+ list.add(present_status);
if (present_status)
- builder.append(status);
+ list.add(status);
boolean present_errors = true && (is_set_errors());
- builder.append(present_errors);
+ list.add(present_errors);
if (present_errors)
- builder.append(errors);
+ list.add(errors);
boolean present_sched_status = true && (is_set_sched_status());
- builder.append(present_sched_status);
+ list.add(present_sched_status);
if (present_sched_status)
- builder.append(sched_status);
+ list.add(sched_status);
boolean present_owner = true && (is_set_owner());
- builder.append(present_owner);
+ list.add(present_owner);
if (present_owner)
- builder.append(owner);
+ list.add(owner);
+ boolean present_replication_count = true && (is_set_replication_count());
- builder.append(present_replication_count);
++ list.add(present_replication_count);
+ if (present_replication_count)
- builder.append(replication_count);
++ list.add(replication_count);
+
- return builder.toHashCode();
+ return list.hashCode();
}
+ @Override
public int compareTo(TopologyInfo other) {
if (!getClass().equals(other.getClass())) {
return getClass().getName().compareTo(other.getClass().getName());
@@@ -874,16 -833,6 +893,16 @@@
return lastComparison;
}
}
- lastComparison =
Boolean.valueOf(is_set_replication_count()).compareTo(typedOther.is_set_replication_count());
++ lastComparison =
Boolean.valueOf(is_set_replication_count()).compareTo(other.is_set_replication_count());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (is_set_replication_count()) {
- lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.replication_count,
typedOther.replication_count);
++ lastComparison =
org.apache.thrift.TBaseHelper.compareTo(this.replication_count,
other.replication_count);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
return 0;
}
@@@ -1210,5 -967,314 +1043,337 @@@
}
}
+ private static class TopologyInfoStandardSchemeFactory implements
SchemeFactory {
+ public TopologyInfoStandardScheme getScheme() {
+ return new TopologyInfoStandardScheme();
+ }
+ }
+
+ private static class TopologyInfoStandardScheme extends
StandardScheme<TopologyInfo> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, TopologyInfo
struct) throws org.apache.thrift.TException {
+ org.apache.thrift.protocol.TField schemeField;
+ iprot.readStructBegin();
+ while (true)
+ {
+ schemeField = iprot.readFieldBegin();
+ if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
+ break;
+ }
+ switch (schemeField.id) {
+ case 1: // ID
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.id = iprot.readString();
+ struct.set_id_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 2: // NAME
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.name = iprot.readString();
+ struct.set_name_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 3: // UPTIME_SECS
+ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+ struct.uptime_secs = iprot.readI32();
+ struct.set_uptime_secs_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 4: // EXECUTORS
+ if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
+ {
- org.apache.thrift.protocol.TList _list290 =
iprot.readListBegin();
- struct.executors = new
ArrayList<ExecutorSummary>(_list290.size);
- ExecutorSummary _elem291;
- for (int _i292 = 0; _i292 < _list290.size; ++_i292)
++ org.apache.thrift.protocol.TList _list298 =
iprot.readListBegin();
++ struct.executors = new
ArrayList<ExecutorSummary>(_list298.size);
++ ExecutorSummary _elem299;
++ for (int _i300 = 0; _i300 < _list298.size; ++_i300)
+ {
- _elem291 = new ExecutorSummary();
- _elem291.read(iprot);
- struct.executors.add(_elem291);
++ _elem299 = new ExecutorSummary();
++ _elem299.read(iprot);
++ struct.executors.add(_elem299);
+ }
+ iprot.readListEnd();
+ }
+ struct.set_executors_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 5: // STATUS
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.status = iprot.readString();
+ struct.set_status_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 6: // ERRORS
+ if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
+ {
- org.apache.thrift.protocol.TMap _map293 =
iprot.readMapBegin();
- struct.errors = new
HashMap<String,List<ErrorInfo>>(2*_map293.size);
- String _key294;
- List<ErrorInfo> _val295;
- for (int _i296 = 0; _i296 < _map293.size; ++_i296)
++ org.apache.thrift.protocol.TMap _map301 =
iprot.readMapBegin();
++ struct.errors = new
HashMap<String,List<ErrorInfo>>(2*_map301.size);
++ String _key302;
++ List<ErrorInfo> _val303;
++ for (int _i304 = 0; _i304 < _map301.size; ++_i304)
+ {
- _key294 = iprot.readString();
++ _key302 = iprot.readString();
+ {
- org.apache.thrift.protocol.TList _list297 =
iprot.readListBegin();
- _val295 = new ArrayList<ErrorInfo>(_list297.size);
- ErrorInfo _elem298;
- for (int _i299 = 0; _i299 < _list297.size; ++_i299)
++ org.apache.thrift.protocol.TList _list305 =
iprot.readListBegin();
++ _val303 = new ArrayList<ErrorInfo>(_list305.size);
++ ErrorInfo _elem306;
++ for (int _i307 = 0; _i307 < _list305.size; ++_i307)
+ {
- _elem298 = new ErrorInfo();
- _elem298.read(iprot);
- _val295.add(_elem298);
++ _elem306 = new ErrorInfo();
++ _elem306.read(iprot);
++ _val303.add(_elem306);
+ }
+ iprot.readListEnd();
+ }
- struct.errors.put(_key294, _val295);
++ struct.errors.put(_key302, _val303);
+ }
+ iprot.readMapEnd();
+ }
+ struct.set_errors_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 513: // SCHED_STATUS
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.sched_status = iprot.readString();
+ struct.set_sched_status_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
+ case 514: // OWNER
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.owner = iprot.readString();
+ struct.set_owner_isSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ break;
++ case 515: // REPLICATION_COUNT
++ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
++ struct.replication_count = iprot.readI32();
++ struct.set_replication_count_isSet(true);
++ } else {
++ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
++ }
++ break;
+ default:
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot,
schemeField.type);
+ }
+ iprot.readFieldEnd();
+ }
+ iprot.readStructEnd();
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot,
TopologyInfo struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.id != null) {
+ oprot.writeFieldBegin(ID_FIELD_DESC);
+ oprot.writeString(struct.id);
+ oprot.writeFieldEnd();
+ }
+ if (struct.name != null) {
+ oprot.writeFieldBegin(NAME_FIELD_DESC);
+ oprot.writeString(struct.name);
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldBegin(UPTIME_SECS_FIELD_DESC);
+ oprot.writeI32(struct.uptime_secs);
+ oprot.writeFieldEnd();
+ if (struct.executors != null) {
+ oprot.writeFieldBegin(EXECUTORS_FIELD_DESC);
+ {
+ oprot.writeListBegin(new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
struct.executors.size()));
- for (ExecutorSummary _iter300 : struct.executors)
++ for (ExecutorSummary _iter308 : struct.executors)
+ {
- _iter300.write(oprot);
++ _iter308.write(oprot);
+ }
+ oprot.writeListEnd();
+ }
+ oprot.writeFieldEnd();
+ }
+ if (struct.status != null) {
+ oprot.writeFieldBegin(STATUS_FIELD_DESC);
+ oprot.writeString(struct.status);
+ oprot.writeFieldEnd();
+ }
+ if (struct.errors != null) {
+ oprot.writeFieldBegin(ERRORS_FIELD_DESC);
+ {
+ oprot.writeMapBegin(new
org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING,
org.apache.thrift.protocol.TType.LIST, struct.errors.size()));
- for (Map.Entry<String, List<ErrorInfo>> _iter301 :
struct.errors.entrySet())
++ for (Map.Entry<String, List<ErrorInfo>> _iter309 :
struct.errors.entrySet())
+ {
- oprot.writeString(_iter301.getKey());
++ oprot.writeString(_iter309.getKey());
+ {
- oprot.writeListBegin(new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
_iter301.getValue().size()));
- for (ErrorInfo _iter302 : _iter301.getValue())
++ oprot.writeListBegin(new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
_iter309.getValue().size()));
++ for (ErrorInfo _iter310 : _iter309.getValue())
+ {
- _iter302.write(oprot);
++ _iter310.write(oprot);
+ }
+ oprot.writeListEnd();
+ }
+ }
+ oprot.writeMapEnd();
+ }
+ oprot.writeFieldEnd();
+ }
+ if (struct.sched_status != null) {
+ if (struct.is_set_sched_status()) {
+ oprot.writeFieldBegin(SCHED_STATUS_FIELD_DESC);
+ oprot.writeString(struct.sched_status);
+ oprot.writeFieldEnd();
+ }
+ }
+ if (struct.owner != null) {
+ if (struct.is_set_owner()) {
+ oprot.writeFieldBegin(OWNER_FIELD_DESC);
+ oprot.writeString(struct.owner);
+ oprot.writeFieldEnd();
+ }
+ }
++ if (struct.is_set_replication_count()) {
++ oprot.writeFieldBegin(REPLICATION_COUNT_FIELD_DESC);
++ oprot.writeI32(struct.replication_count);
++ oprot.writeFieldEnd();
++ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class TopologyInfoTupleSchemeFactory implements
SchemeFactory {
+ public TopologyInfoTupleScheme getScheme() {
+ return new TopologyInfoTupleScheme();
+ }
+ }
+
+ private static class TopologyInfoTupleScheme extends
TupleScheme<TopologyInfo> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, TopologyInfo
struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ oprot.writeString(struct.id);
+ oprot.writeString(struct.name);
+ oprot.writeI32(struct.uptime_secs);
+ {
+ oprot.writeI32(struct.executors.size());
- for (ExecutorSummary _iter303 : struct.executors)
++ for (ExecutorSummary _iter311 : struct.executors)
+ {
- _iter303.write(oprot);
++ _iter311.write(oprot);
+ }
+ }
+ oprot.writeString(struct.status);
+ {
+ oprot.writeI32(struct.errors.size());
- for (Map.Entry<String, List<ErrorInfo>> _iter304 :
struct.errors.entrySet())
++ for (Map.Entry<String, List<ErrorInfo>> _iter312 :
struct.errors.entrySet())
+ {
- oprot.writeString(_iter304.getKey());
++ oprot.writeString(_iter312.getKey());
+ {
- oprot.writeI32(_iter304.getValue().size());
- for (ErrorInfo _iter305 : _iter304.getValue())
++ oprot.writeI32(_iter312.getValue().size());
++ for (ErrorInfo _iter313 : _iter312.getValue())
+ {
- _iter305.write(oprot);
++ _iter313.write(oprot);
+ }
+ }
+ }
+ }
+ BitSet optionals = new BitSet();
+ if (struct.is_set_sched_status()) {
+ optionals.set(0);
+ }
+ if (struct.is_set_owner()) {
+ optionals.set(1);
+ }
- oprot.writeBitSet(optionals, 2);
++ if (struct.is_set_replication_count()) {
++ optionals.set(2);
++ }
++ oprot.writeBitSet(optionals, 3);
+ if (struct.is_set_sched_status()) {
+ oprot.writeString(struct.sched_status);
+ }
+ if (struct.is_set_owner()) {
+ oprot.writeString(struct.owner);
+ }
++ if (struct.is_set_replication_count()) {
++ oprot.writeI32(struct.replication_count);
++ }
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, TopologyInfo
struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ struct.id = iprot.readString();
+ struct.set_id_isSet(true);
+ struct.name = iprot.readString();
+ struct.set_name_isSet(true);
+ struct.uptime_secs = iprot.readI32();
+ struct.set_uptime_secs_isSet(true);
+ {
- org.apache.thrift.protocol.TList _list306 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
- struct.executors = new ArrayList<ExecutorSummary>(_list306.size);
- ExecutorSummary _elem307;
- for (int _i308 = 0; _i308 < _list306.size; ++_i308)
++ org.apache.thrift.protocol.TList _list314 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
++ struct.executors = new ArrayList<ExecutorSummary>(_list314.size);
++ ExecutorSummary _elem315;
++ for (int _i316 = 0; _i316 < _list314.size; ++_i316)
+ {
- _elem307 = new ExecutorSummary();
- _elem307.read(iprot);
- struct.executors.add(_elem307);
++ _elem315 = new ExecutorSummary();
++ _elem315.read(iprot);
++ struct.executors.add(_elem315);
+ }
+ }
+ struct.set_executors_isSet(true);
+ struct.status = iprot.readString();
+ struct.set_status_isSet(true);
+ {
- org.apache.thrift.protocol.TMap _map309 = new
org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING,
org.apache.thrift.protocol.TType.LIST, iprot.readI32());
- struct.errors = new HashMap<String,List<ErrorInfo>>(2*_map309.size);
- String _key310;
- List<ErrorInfo> _val311;
- for (int _i312 = 0; _i312 < _map309.size; ++_i312)
++ org.apache.thrift.protocol.TMap _map317 = new
org.apache.thrift.protocol.TMap(org.apache.thrift.protocol.TType.STRING,
org.apache.thrift.protocol.TType.LIST, iprot.readI32());
++ struct.errors = new HashMap<String,List<ErrorInfo>>(2*_map317.size);
++ String _key318;
++ List<ErrorInfo> _val319;
++ for (int _i320 = 0; _i320 < _map317.size; ++_i320)
+ {
- _key310 = iprot.readString();
++ _key318 = iprot.readString();
+ {
- org.apache.thrift.protocol.TList _list313 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
- _val311 = new ArrayList<ErrorInfo>(_list313.size);
- ErrorInfo _elem314;
- for (int _i315 = 0; _i315 < _list313.size; ++_i315)
++ org.apache.thrift.protocol.TList _list321 = new
org.apache.thrift.protocol.TList(org.apache.thrift.protocol.TType.STRUCT,
iprot.readI32());
++ _val319 = new ArrayList<ErrorInfo>(_list321.size);
++ ErrorInfo _elem322;
++ for (int _i323 = 0; _i323 < _list321.size; ++_i323)
+ {
- _elem314 = new ErrorInfo();
- _elem314.read(iprot);
- _val311.add(_elem314);
++ _elem322 = new ErrorInfo();
++ _elem322.read(iprot);
++ _val319.add(_elem322);
+ }
+ }
- struct.errors.put(_key310, _val311);
++ struct.errors.put(_key318, _val319);
+ }
+ }
+ struct.set_errors_isSet(true);
- BitSet incoming = iprot.readBitSet(2);
++ BitSet incoming = iprot.readBitSet(3);
+ if (incoming.get(0)) {
+ struct.sched_status = iprot.readString();
+ struct.set_sched_status_isSet(true);
+ }
+ if (incoming.get(1)) {
+ struct.owner = iprot.readString();
+ struct.set_owner_isSet(true);
+ }
++ if (incoming.get(2)) {
++ struct.replication_count = iprot.readI32();
++ struct.set_replication_count_isSet(true);
++ }
+ }
+ }
+
}