diff --git a/_posts/ 
new file mode 100644
index 0000000..87dda1b
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,294 @@
+layout: post
+title: Storm 0.10.0 Beta Released
+author: P. Taylor Goetz
+Fast on the heals of the 0.9.5 maintenance release, the Apache Storm community 
is pleased to announce that Apache Storm 0.10.0-beta has been released and is 
now available on [the downloads page](/downloads.html).
+Aside from many stability and performance improvements, this release includes 
a number of important new features, some of which are highlighted below.
+Secure, Multi-Tenant Deployment
+Much like the early days of Hadoop, Apache Storm originally evolved in an 
environment where security was not a high-priority concern. Rather, it was 
assumed that Storm would be deployed to environments suitably cordoned off from 
security threats. While a large number of users were comfortable setting up 
their own security measures for Storm (usually at the Firewall/OS level), this 
proved a hindrance to broader adoption among larger enterprises where security 
policies prohibited deployment without specific safeguards.
+Yahoo! hosts one of the largest Storm deployments in the world, and their 
engineering team recognized the need for security early on, so it implemented 
many of the features necessary to secure its own Apache Storm deployment. 
Yahoo!, Hortonworks, Symantec, and the broader Apache Storm community have 
worked together to bring those security innovations into the main Apache Storm 
code base.
+We are pleased to announce that work is now complete. Some of the highlights 
of Storm's new security features include:
+ * Kerberos Authentication with Automatic Credential Push and Renewal
+ * Pluggable Authorization and ACLs
+ * Multi-Tenant Scheduling with Per-User isolation and configurable resource 
+ * User Impersonation
+ * SSL Support for Storm UI, Log Viewer, and DRPC (Distributed Remote 
Procedure Call)
+ * Secure integration with other Hadoop Projects (such as ZooKeeper, HDFS, 
HBase, etc.)
+ * User isolation (Storm topologies run as the user who submitted them)
+For more details and instructions for securing Storm, please see [the security 
+A Foundation for Rolling Upgrades and Continuity of Operations
+In the past, upgrading a Storm cluster could be an arduous process that 
involved un-deploying existing topologies, removing state from local disk and 
ZooKeeper, installing the upgrade, and finally redeploying topologies. From an 
operations perspective, this process was disruptive to say the very least.
+The underlying cause of this headache was rooted in the data format Storm 
processes used to store both local and distributed state. Between versions, 
these data structures would change in incompatible ways.
+Beginning with version 0.10.0, this limitation has been eliminated. In the 
future, upgrading from Storm 0.10.0 to a newer version can be accomplished 
seamlessly, with zero down time. In fact, for users who use [Apache 
Ambari]( for cluster provisioning and management, the 
process can be completely automated.
+Easier Deployment and Declarative Topology Wiring with Flux
+Apache Storm 0.10.0 now includes Flux, which is a framework and set of 
utilities that make defining and deploying Storm topologies less painful and 
developer-intensive. A common pain point mentioned by Storm users is the fact 
that the wiring for a Topology graph is often tied up in Java code, and that 
any changes require recompilation and repackaging of the topology jar file. 
Flux aims to alleviate that pain by allowing you to package all your Storm 
components in a single jar, and use an external text file to define the layout 
and configuration of your topologies.
+Some of Flux' features include:
+ * Easily configure and deploy Storm topologies (Both Storm core and 
Micro-batch API) without embedding configuration in your topology code
+ * Support for existing topology code
+ * Define Storm Core API (Spouts/Bolts) using a flexible YAML DSL
+ * YAML DSL support for most Storm components (storm-kafka, storm-hdfs, 
storm-hbase, etc.)
+ * Convenient support for multi-lang components
+ * External property substitution/filtering for easily switching between 
configurations/environments (similar to Maven-style `${}` 
+You can read more about Flux on the [Flux documentation 
+Partial Key Groupings
+In addition to the standard Stream Groupings Storm has always supported, 
version 0.10.0 introduces a new grouping named "Partial Key Grouping". With the 
Partial Stream Grouping, the tuple  stream is partitioned by the fields 
specified in the grouping, like the Fields Grouping, but are load balanced 
between two downstream bolts, which provides better utilization of resources 
when the incoming data is skewed. 
+Documentation for the Partial Key Grouping and other stream groupings 
supported by Storm can be found 
[here]( [This research 
 provides additional details regarding how it works and its advantages.
+Improved Logging Framework
+Debugging distributed applications can be difficult, and usually focuses on 
one main source of information: application log files. But in a very low 
latency system like Storm where every millisecond counts, logging can be a 
double-edged sword: If you log too little information you may miss the 
information you need to solve a problem; log too much and you risk degrading 
the overall performance of your application as resources are consumed by the 
logging framework.
+In version 0.10.0 Storm's logging framework now uses [Apache Log4j 
2]( which, like Storm's internal messaging 
subsystem, uses the extremely performant [LMAX 
Disruptor]( messaging library. Log4j 
2 boast an 18x higher throughput and orders of magnitude lower latency than 
Storm's previous logging framework. More efficient resource utilization at the 
logging level means more resources are available where they matter most: 
executing your business logic.
+A few of the important features these changes bring include:
+ * Rolling log files with size, duration, and date-based triggers that are 
+ * Dynamic log configuration updates without dropping log messages
+ * Remote log monitoring and (re)configuration via JMX
+ * A Syslog/[RFC-5424]( appender.
+ * Integration with log aggregators such as syslog-ng
+Streaming ingest with Apache Hive
+Introduced in version 0.13, [Apache Hive]( includes a 
[Streaming Data Ingest 
that allows data to be written continuously into Hive. The incoming data can be 
continuously committed in small batches of records into existing Hive partition 
or table. Once the data is committed its immediately visible to all hive 
+Apache Storm 0.10.0 introduces both a Storm Core API bolt implementation 
+that allows users to stream data from Storm directly into hive. Storm's Hive 
integration also includes a 
[State]( implementation 
for Storm's Micro-batching/Transactional API (Trident) that allows you to write 
to Hive from a micro-batch/transactional topology and supports exactly-once 
semantics for data persistence.
+For more information on Storm's Hive integration, see the [storm-hive 
+Microsoft Azure Event Hubs Integration
+With Microsoft Azure's [support for running Storm on 
 Storm is now a first class citizen of the Azure cloud computing platform. To 
better support Storm integration with Azure services, Microsoft engineers have 
contributed several components that allow Storm to integrate directly with 
[Microsoft Azure Event 
+Storm's Event Hubs integration includes both spout and bolt implementations 
for reading from, and writing to Event Hubs. The Event Hub integration also 
includes a Micro-batching/Transactional (Trident) spout implementation that 
supports fully fault-tolerant and reliable processing, as well as support for 
exactly-once message processing semantics.
+Redis Support
+Apache Storm 0.10.0 also introduces support for the [Redis]( 
data structure server. Storm's Redis support includes bolt implementations for 
both writing to and querying Redis from a Storm topology, and is easily 
extended for custom use cases. For Storm's micro-batching/transactional API, 
the Redis support includes both [Trident State and 
implementations for fault-tolerant state management with Redis.
+Further information can be found in the [storm-redis 
+JDBC/RDBMS Integration
+Many stream processing data flows require accessing data from or writing data 
to a relational data store. Storm 0.10.0 introduces highly flexible and 
customizable support for integrating with virtually any JDBC-compliant database.
+The Storm-JDBC package includes core Storm bolt and Trident state 
implementations that allow a storm topology to either insert Storm tuple data 
into a database table or execute select queries against a database to enrich 
streaming data in a storm topology.
+Further details and instructions can be found in the [Storm-JDBC 
+Reduced Dependency Conflicts
+In previous Storm releases, it was not uncommon for users' topology 
dependencies to conflict with the libraries used by Storm. In Storm 0.9.3 
several dependency packages that were common sources of conflicts have been 
package-relocated (shaded) to avoid this situation. In 0.10.0 this list has 
been expanded.
+Developers are free to use the Storm-packaged versions, or supply their own 
+The full list of Storm's package relocations can be found 
+Future Work
+While the 0.10.0 release is an important milestone in the evolution of Apache 
Storm, the Storm community is actively working on new improvements, both near 
and long term, and continuously exploring the realm of the possible.
+Twitter recently announced the Heron project, which claims to provide 
substantial performance improvements while maintaining 100% API compatibility 
with Storm. The corresponding research paper provides additional details 
regarding the architectural improvements. The fact that Twitter chose to 
maintain API compatibility with Storm is a testament to the power and 
flexibility of that API. Twitter has also expressed a desire to share their 
experiences and work with the Apache Storm community.
+A number of concepts expressed in the Heron paper were already in the 
implementation stage by the Storm community even before it was published, and 
we look forward to working with Twitter to bring those and other improvements 
to Storm.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are very much valued and 
+Full Change Log
+ * STORM-856: use serialized value of delay secs for topo actions
+ * STORM-852: Replaced Apache Log4j Logger with SLF4J API
+ * STORM-813: Change storm-starter's README so that it explains mvn exec:java 
cannot run multilang topology
+ * STORM-853: Fix upload API to handle multi-args properly
+ * STORM-850: Convert storm-core's logback-test.xml to log4j2-test.xml
+ * STORM-848: Shade external dependencies
+ * STORM-849: Add storm-redis to storm binary distribution
+ * STORM-760: Use JSON for serialized conf
+ * STORM-833: Logging framework logback -> log4j 2.x
+ * STORM-842: Drop Support for Java 1.6
+ * STORM-835: Netty Client hold batch object until io operation complete
+ * STORM-827: Allow AutoTGT to work with storm-hdfs too.
+ * STORM-821: Adding connection provider interface to decouple jdbc connector 
from a single connection pooling implementation.
+ * STORM-818: storm-eventhubs configuration improvement and refactoring
+ * STORM-816: maven-gpg-plugin does not work with gpg 2.1
+ * STORM-811: remove old metastor_db before running tests again.
+ * STORM-808: allow null to be parsed as null
+ * STORM-807: quote args to correctly
+ * STORM-801: Add Travis CI badge to README
+ * STORM-797: DisruptorQueueTest has some race conditions in it.
+ * STORM-796: Add support for "error" command in ShellSpout
+ * STORM-795: Update the user document for the extlib issue
+ * STORM-792: Missing documentation in backtype.storm.generated.Nimbus
+ * STORM-791: Storm UI displays maps in the config incorrectly
+ * STORM-790: Log "task is null" instead of let worker died when task is null 
in transfer-fn
+ * STORM-789: Send more topology context to Multi-Lang components via initial 
+ * STORM-788: UI Fix key for process latencies
+ * STORM-787: test-ns should announce test failures with 'BUILD FAILURE'
+ * STORM-786: KafkaBolt should ack tick tuples
+ * STORM-773: backtype.storm.transactional-test fails periodically with timeout
+ * STORM-772: Tasts fail periodically with InterruptedException or 
+ * STORM-766: Include version info in the service page
+ * STORM-765: Thrift serialization for local state
+ * STORM-764: Have option to compress thrift heartbeat
+ * STORM-762: uptime for worker heartbeats is lost when converted to thrift
+ * STORM-761: An option for new/updated Redis keys to expire in RedisMapState
+ * STORM-757: Simulated time can leak out on errors
+ * STORM-753: Improve RedisStateQuerier to convert List<Values> from Redis 
+ * STORM-752: [storm-redis] Clarify Redis*StateUpdater's expire is optional
+ * STORM-750: Set Config serialVersionUID
+ * STORM-749: Remove CSRF check from the REST API.
+ * STORM-747: assignment-version-callback/info-with-version-callback are not 
fired when assignments change
+ * STORM-746: Skip ack init when there are no output tasks
+ * STORM-745: fix storm.cmd to evaluate 'shift' correctly with 'storm jar'
+ * STORM-741: Allow users to pass a config value to perform impersonation.
+ * STORM-740: Simple Transport Client cannot configure thrift buffer size
+ * STORM-737: Check task->node+port with read lock to prevent sending to 
closed connection
+ * STORM-735: [storm-redis] Upgrade Jedis to 2.7.0
+ * STORM-730: remove extra curly brace
+ * STORM-729: Include Executors (Window Hint) if the component is of Bolt type
+ * STORM-728: Put emitted and transferred stats under correct columns
+ * STORM-727: Storm tests should succeed even if a storm process is running 
+ * STORM-724: Document RedisStoreBolt and RedisLookupBolt which is missed.
+ * STORM-723: Remove RedisStateSetUpdater / RedisStateSetCountQuerier which 
didn't tested and have a bug
+ * STORM-721: Storm UI server should support SSL.
+ * STORM-715: Add a link to in
+ * STORM-714: Make CSS more consistent with self, prev release
+ * STORM-713: Include topic information with Kafka metrics.
+ * STORM-712: Storm daemons shutdown if OutOfMemoryError occurs in any thread
+ * STORM-711: All connectors should use collector.reportError and tuple 
+ * STORM-708: CORS support for STORM UI.
+ * STORM-707: Client (Netty): improve logging to help troubleshooting 
connection woes
+ * STORM-704: Apply Travis CI to Apache Storm Project
+ * STORM-703: With hash key option for RedisMapState, only get values for keys 
in batch
+ * STORM-699: storm-jdbc should support custom insert queries. 
+ * STORM-696: Single Namespace Test Launching
+ * STORM-694: java.lang.ClassNotFoundException: 
+ * STORM-693: KafkaBolt exception handling improvement.
+ * STORM-691: Add basic lookup / persist bolts
+ * STORM-690: Return Jedis into JedisPool with marking 'broken' if connection 
is broken
+ * STORM-689: SimpleACLAuthorizer should provide a way to restrict who can 
submit topologies.
+ * STORM-688: update Util to compile under JDK8
+ * STORM-687: Storm UI does not display up to date information despite 
refreshes in IE
+ * STORM-685: wrong output in log when committed offset is too far behind 
latest offset
+ * STORM-684: In RichSpoutBatchExecutor: underlying spout is not closed when 
emitter is closed
+ * STORM-683: Make false in a conf really evaluate to false in clojure.
+ * STORM-682: supervisor should handle worker state corruption gracefully.
+ * STORM-681: Auto insert license header with
+ * STORM-675: Allow users to have under config dir to set custom 
JAVA_HOME and other env variables.
+ * STORM-673: Typo 'deamon' in security documentation
+ * STORM-672: Typo in Trident documentation example
+ * STORM-670: restore java 1.6 compatibility (storm-kafka)
+ * STORM-669: Replace links with ones to latest api document
+ * STORM-667: Incorrect capitalization "SHell" in
+ * STORM-663: Create javadocs for BoltDeclarer
+ * STORM-659: return grep matches each on its own line.
+ * STORM-657: make the shutdown-worker sleep time before kill -9 configurable
+ * STORM-656: Document "external" modules and "Committer Sponsors"
+ * STORM-651: improvements to storm.cmd
+ * STORM-641: Add total number of topologies to api/v1/cluster/summary.
+ * STORM-640: Storm UI vulnerable to poodle attack.
+ * STORM-637: Integrate PartialKeyGrouping into storm API
+ * STORM-636: Faster, optional retrieval of last component error
+ * STORM-635: logviewer returns 404 if storm_home/logs is a symlinked dir.
+ * STORM-634: Storm serialization changed to thrift to support rolling upgrade.
+ * STORM-632: New grouping for better load balancing
+ * STORM-630: Support for Clojure 1.6.0
+ * STORM-629: Place Link to Source Code Repository on Webpage
+ * STORM-627: Storm-hbase configuration error.
+ * STORM-626: Add script to print out the merge command for a given pull 
+ * STORM-625: Don't leak netty clients when worker moves or reuse netty 
+ * STORM-623: Generate latest javadocs
+ * STORM-620: Duplicate maven plugin declaration
+ * STORM-616: Storm JDBC Connector.
+ * STORM-615: Add REST API to upload topology.
+ * STORM-613: Fix wrong getOffset return value
+ * STORM-612: Update the contact address in
+ * STORM-611: Remove extra "break"s
+ * STORM-610: Check the return value of fts_close()
+ * STORM-609: Add storm-redis to storm external
+ * STORM-608: Storm UI CSRF escape characters not work correctly.
+ * STORM-607: storm-hbase HBaseMapState should support user to customize the 
hbase-key & hbase-qualifier
+ * STORM-603: Log errors when required kafka params are missing
+ * STORM-601: Make jira-github-join ignore case.
+ * STORM-600: upgrade jacoco plugin to support jdk8
+ * STORM-599: Use nimbus's cached heartbeats rather than fetching again from ZK
+ * STORM-596: remove config topology.receiver.buffer.size
+ * STORM-595: storm-hdfs can only work with sequence files that use Writables.
+ * STORM-586: Trident kafka spout fails instead of updating offset when kafka 
offset is out of range.
+ * STORM-585: Performance issue in none grouping
+ * STORM-583: Add Microsoft Azure Event Hub spout implementations
+ * STORM-578: Calls to submit-mocked-assignment in supervisor-test use invalid 
executor-id format
+ * STORM-577: long time launch worker will block supervisor heartbeat
+ * STORM-575: Ability to specify Jetty host to bind to
+ * STORM-572: Storm UI 'favicon.ico'
+ * STORM-572: Allow Users to pass TEST-TIMEOUT-MS for java
+ * STORM-571: upgrade clj-time.
+ * STORM-570: Switch from tablesorter to datatables jquery plugin.
+ * STORM-569: Add Conf for bolt's outgoing overflow-buffer.
+ * STORM-567: Move Storm Documentation/Website from SVN to git
+ * STORM-565: Fix NPE when topology.groups is null.
+ * STORM-563: Kafka Spout doesn't pick up from the beginning of the queue 
unless forceFromStart specified.
+ * STORM-561: Add flux as an external module
+ * STORM-557: High Quality Images for presentations
+ * STORM-554: the type of first param "topology" should be ^StormTopology not 
+ * STORM-552: Add netty socket backlog config
+ * STORM-548: Receive Thread Shutdown hook should connect to local hostname 
but not Localhost
+ * STORM-541: Build produces maven warnings
+ * STORM-539: Storm Hive Connector.
+ * STORM-533: Add in client and server IConnection metrics.
+ * STORM-527: update worker.clj -- delete "missing-tasks" checking
+ * STORM-525: Add time sorting function to the 2nd col of bolt exec table
+ * STORM-512: KafkaBolt doesn't handle ticks properly
+ * STORM-505: Fix debug string construction
+ * STORM-495: KafkaSpout retries with exponential backoff
+ * STORM-487: Remove storm.cmd, no need to duplicate work python runs on 
windows too.
+ * STORM-483: provide dedicated directories for classpath extension
+ * STORM-456: Storm UI: cannot navigate to topology page when name contains 
+ * STORM-446: Allow superusers to impersonate other users in secure mode.
+ * STORM-444: Add AutoHDFS like credential fetching for HBase
+ * STORM-442: multilang ShellBolt/ShellSpout die() can be hang when Exception 
+ * STORM-441: Remove bootstrap macro from Clojure codebase
+ * STORM-410: Add groups support to log-viewer
+ * STORM-400: Thrift upgrade to thrift-0.9.2
+ * STORM-329: fix cascading Storm failure by improving reconnection strategy 
and buffering messages (thanks tedxia)
+ * STORM-322: Windows script do not handle spaces in JAVA_HOME path
+ * STORM-248: cluster.xml location is hardcoded for workers
+ * STORM-243: Record version and revision information in builds
+ * STORM-188: Allow user to specifiy full configuration path when running 
storm command
+ * STORM-130: Supervisor getting killed due to 
File '../stormconf.ser' does not exist.
diff --git a/_posts/ 
new file mode 100644
index 0000000..2c42820
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,54 @@
+layout: post
+title: Storm 0.10.0 released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 0.10.0 Stable 
has been released and is available from [the downloads page](/downloads.html).
+This release includes a number of improvements and bug fixes identified in the 
previous beta release. For a description of the new features included in the 
0.10.0 release, please [see the previous announcement of 
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-1108: Fix NPE in simulated time
+ * STORM-1106: Netty should not limit attempts to reconnect
+ * STORM-1099: Fix worker childopts as arraylist of strings
+ * STORM-1096: Fix some issues with impersonation on the UI
+ * STORM-912: Support SSL on Logviewer
+ * STORM-1094: advance kafka offset when deserializer yields no object
+ * STORM-1066: Specify current directory when supervisor launches a worker
+ * STORM-1012: Shaded everything that was not already shaded
+ * STORM-967: Shaded everything that was not already shaded
+ * STORM-922: Shaded everything that was not already shaded
+ * STORM-1042: Shaded everything that was not already shaded
+ * STORM-1026: Adding external classpath elements does not work
+ * STORM-1055: storm-jdbc README needs fixes and context
+ * STORM-1044: Setting dop to zero does not raise an error
+ * STORM-1050: Topologies with same name run on one cluster
+ * STORM-1005: Supervisor do not get running workers after restart.
+ * STORM-803: Cleanup travis-ci build and logs
+ * STORM-1027: Use overflow buffer for emitting metrics
+ * STORM-1024: log4j changes leaving ${sys:storm.log.dir} under STORM_HOME dir
+ * STORM-944: storm-hive pom.xml has a dependency conflict with calcite
+ * STORM-994: Connection leak between nimbus and supervisors
+ * STORM-1001: Undefined STORM_EXT_CLASSPATH adds '::' to classpath of workers
+ * STORM-977: Incorrect signal (-9) when as-user is true
+ * STORM-843: [storm-redis] Add Javadoc to storm-redis
+ * STORM-866: Use storm.log.dir instead of storm.home in log4j2 config
+ * STORM-810: PartitionManager in storm-kafka should commit latest offset 
before close
+ * STORM-928: Add sources->streams->fields map to Multi-Lang Handshake
+ * STORM-945: <DefaultRolloverStrategy> element is not a policy,and should not 
be putted in the <Policies> element.
+ * STORM-857: create logs metadata dir when running securely
+ * STORM-793: Made change to logviewer.clj in order to remove the invalid http 
500 response
+ * STORM-139: hashCode does not work for byte[]
+ * STORM-860: UI: while topology is transitioned to killed, "Activate" button 
is enabled but not functioning
+ * STORM-966: ConfigValidation.DoubleValidator doesn't really validate whether 
the type of the object is a double
+ * STORM-742: Let ShellBolt treat all messages to update heartbeat
+ * STORM-992: A bug in the timer.clj might cause unexpected delay to schedule 
new event
diff --git a/_posts/ 
new file mode 100644
index 0000000..62354e4
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,29 @@
+layout: post
+title: Storm 0.9.6 released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 0.9.6 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's stability and fault tolerance. We encourage users of 
previous versions to upgrade to this latest release.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-1027: Use overflow buffer for emitting metrics
+ * STORM-996: netty-unit-tests/test-batch demonstrates out-of-order delivery
+ * STORM-1056: allow supervisor log filename to be configurable via ENV 
+ * STORM-1051: Netty's flushMessages produces a 
+ * STORM-763: nimbus reassigned worker A to another machine, but other 
worker's netty client can't connect to the new worker A
+ * STORM-935: Update Disruptor queue version to 2.10.4
+ * STORM-503: Short disruptor queue wait time leads to high CPU usage when idle
+ * STORM-728: Put emitted and transferred stats under correct columns
+ * STORM-643: KafkaUtils repeatedly fetches messages whose offset is out of 
+ * STORM-933: NullPointerException during KafkaSpout deactivation
diff --git a/_posts/ 
new file mode 100644
index 0000000..232902e
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,427 @@
+layout: post
+title: Storm 1.0.0 released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 1.0.0 Stable 
has been released and is available from [the downloads page](/downloads.html).
+This release represents a major milestone in the evolution of Apache Storm, 
and includes an immense number of new features, usability and performance 
improvements, some of which are highlighted below.
+Improved Performance
+One of the main highlights in this release is a dramatice performance 
improvement over previous versions. Apache Storm 1.0 is *up to 16 times faster 
than previous versions, with latency reduced up to 60%. Obviously topology 
performance varies widely by use case and external service dependencies, but 
for most use cases users can expect a 3x performance boost over earlier 
+Pacemaker - Heartbeat Server
+Pacemaker is an optional Storm daemon designed to process heartbeats from 
workers. As Storm is scaled up, ZooKeeper begins to become a bottleneck due to 
high volumes of writes from workers doing heartbeats. Lots of writes to disk 
and large ammounts traffic across the network is generated as ZooKeeper tries 
to maintain consistency.
+Because heartbeats are of an ephemeral nature, they do not need to be 
persisted to disk or synced across nodes, and an in-memory store will do. This 
is the role of Pacemaker. Pacemaker functions as a simple in-memory key/value 
store with ZooKeeper-like, directory-style keys and byte array values.
+Distributed Cache API
+In the past it was common for developers to bundle resources required by a 
topology (such as lookup data, machine learning models, etc.) within a topology 
jar file. One problem with this approach is that updating that data required 
the repackaging and redeployment of the topology. Another problem is that at 
times that data can be very large (gigabytes or more), which negatively impacts 
topology startup time. 
+Storm version 1.0 introduces a distributed cache API that allows for the 
sharing of files (BLOBs) among topologies. Files in the distributed cache can 
be updated at any time from the command line, without the need to redeploy a 
topology. The distributed cache API allows for files from several KB in size to 
several GB, and also supports compression formats such as ZIP and GZIP.
+Storm 1.0 comes with two implementations of the distributed cache API: One 
backed by the local file system on Supervisor nodes, and one backed by Apache 
Hadoop HDFS. Both implementations also support fine-grained access control 
through ACLs.
+HA Nimbus
+Experienced Storm users will recognize that the Storm Nimbus service is not a 
single point of failure in the strictest sense (i.e. loss of the Nimbus node 
will not affect running topologies). However, the loss of the Nimbus node does 
degrade functionality for deploying new topologies and reassigning work across 
a cluster.
+In Storm 1.0 this “soft” point of failure has been eliminated by 
supporting an HA Nimbus. Multiple instances of the Nimbus service run in a 
cluster and perform leader election when a Nimbus node fails, and Nimbus hosts 
can join or leave the cluster at any time. HA Nimbus leverages the distributed 
cache API for replication to guarantee the availability of topology resources 
in the event of a Nimbus node failure.
+Native Streaming Window API
+Window based computations are common among use cases in stream processing,  
where the unbounded stream of data is split into finite sets based on some 
criteria (e.g. time) and a computation is applied on each group of events. One 
example would be to compute the top trending twitter topic in the last hour.
+Windowing is primarily used for aggregations, joins, pattern matching and 
more. Windows can be seen as an in-memory table where events are added and 
evicted based on some policies.
+In past releases Storm relied on developers to build their own windowing 
logic. There were no recommended or high level abstractions that developers 
could use to define a Window in a standard way in a Topology.
+Apache Storm 1.0 now includes a native windowing API. Windows can be specified 
with the following two parameters,
+1. Window length - the length or duration of the window
+2. Sliding interval - the interval at which the window slides
+Storm has support for sliding and tumbling windows based on time duration 
and/or event count.
+State Management - Statefule Bolts with Automatic Checkpointing
+Storm 1.0 introduces a new Stateful Bolt API with automatic checkpointing. 
Stateful Bolts are easy to implement -- simply extend the `BaseStatefulBolt` 
class -- and can be combined with stateless bolts in a topology. Storm will 
automatically manage bolt state and recover that state in the event of a 
+Storm 1.0 comes with a state implementations backed by memory as well as 
Redis. Future point releases will include additional support for alternative 
state stores.
+Automatic Backpressure
+In previous Storm versions, the only way to throttle the input to a topology 
was to enable ACKing and set `topology.max.spout.pending`. For use cases that 
don't require at-least-once processing guarantees, this requirement imposed a 
significant performance penalty.
+Storm 1.0 includes a new automatic backpressure mechanism based on 
configurable high/low watermarks expressed as a percentage of a task's buffer 
size. If the high water mark is reached, Storm will slow down the topology's 
spouts and stop throttling when the low water mark is reached.
+Storm's backpressure mechanism is implemented independently of the Spout API, 
so all existing Spouts are supported.
+Resource Aware Scheduler
+Based on Storm pluggable topology scheduler API, Storm 1.0 adds a new 
scheduler implementation that takes into account both the memory (on-heap and 
off-heap) and CPU resources available in a cluster. The resources aware 
scheduler (AKA "RAS Scheduler") allows users to specify the memory and CPU 
requirements for individual topology components (Spouts/Bolts), and Storm will 
schedule topology tasks among workers to best meet those requirements.
+In the future, the Storm community plans to extend the RAS implmentation to 
support network resources and rack awareness as well.
+Dynamic Log Levels
+Storm 1.0 now allows users and administrators to dynamically change the log 
level settings for a running topology both from the Storm UI as well as the 
command line. Users can also specify an optional timeout after which those 
changes will be automatically reverted. The resulting log files are also easily 
searchable from the Storm UI and logviewer service.
+Tuple Sampling and Debugging
+In the course of debugging a topology, many Storm users find themselves adding 
"debug" bolts or Trident functions to log information about the data flowing 
through the topology, only to remove or disable them for production deployment. 
Storm 1.0 eliminates this need through the new Topology Debug capability.
+Storm UI now includes a function that allow you to sample a percentage tuples 
flowing through a topology or individual component directly from the Storm UI. 
The sampled events can then be viewed directly from the Storm UI and are also 
saved to disk.
+Distributed Log Search
+Another improvement to Storm's UI is the addition of a distributed log search. 
This search capability allows users to search across all log files of a 
specific topology, including archived (ZIP'ed) logs. The search results will 
include matches from all Supervisor nodes.
+Dynamic Worker Profiling
+The last, but certainly not the least, usability improvement in Storm 1.0 is 
dynamic worker profiling. This new feature allows users to request worker 
profile data directly from Storm UI, including:
+ * Heap Dumps
+ * JStack Output
+ * JProfile Recordings
+The generated files are then available for download for off-line analysis with 
various debugging tools. It is also now possible to restart workers from the 
Storm UI.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-1670: LocalState#get(String) can throw FileNotFoundException which 
may result supervisor.clj#sync-processes stop assigning new workers/assignments
+ * STORM-1677: Test resource files are excluded from source distribution, 
which makes logviewer-test failing
+ * STORM-676: Storm Trident support for sliding/tumbling windows
+ * STORM-1671: Enable logviewer to delete a dir without yaml
+ * STORM-822: Kafka Spout New Consumer API
+ * STORM-1673: log4j2/worker.xml refers old package of LoggerMetricsConsumer
+ * STORM-1632 Disable event logging by default
+ * STORM-1667: Log the IO exception when deleting worker pid dir
+ * STORM-1669: Fix SolrUpdateBolt flush bug
+ * STORM-1668: Flux silently fails while setting a non-existent property.
+ * STORM-1573: Add batch support for MongoInsertBolt
+ * STORM-1660: remove flux gitignore file and move rules to top level gitignore
+ * STORM-1622: Rename classes with older third party shaded packages
+ * STORM-1537: Upgrade to kryo 3
+ * STORM-1556: nimbus.clj/wait-for-desired-code-replication wrong reset for 
current-replication-count-jar in local mode
+ * STORM-1636: Supervisor shutdown with worker id pass in being nil
+ * STORM-1641: make subtree node creation consistent
+ * STORM-1604: Delayed transition should handle NotALeaderException
+ * STORM-1602: Blobstore UTs are failed on Windows
+ * STORM-1629: Files/move doesn't work properly with non-empty directory in 
+ * STORM-1616: Add RAS API for Trident
+ * STORM-1483: add storm-mongodb connector
+ * STORM-1614: backpressure init and cleanup changes
+ * STORM-1549: Add support for resetting tuple timeout from bolts via the 
+ * STORM-971: Metric for messages lost due to kafka retention
+ * STORM-1608: Fix stateful topology acking behavior
+ * STORM-1609: Netty Client is not best effort delivery on failed Connection
+ * STORM-1620: Update curator to fix CURATOR-209
+ * STORM-1469: Decommission SimpleTransportPlugin and configuration
+ * STORM-1469: Adding Plain Sasl Transport Plugin
+ * STORM-1588: Do not add event logger details if number of event loggers is 
+ * STORM-1606: print the information of testcase which is on failure
+ * STORM-1436: Set Travis Heap size to fit in memory limits in travis builds.
+ * STORM-1529: Change default worker temp directory location for workers
+ * STORM-1543: DRPCSpout should always try to reconnect disconnected 
+ * STORM-1561: Supervisor should relaunch worker if assignments have changed
+ * STORM-1601: Check if /backpressure/storm-id node exists before requesting 
+ * STORM-1574: Better handle backpressure exception etc.
+ * STORM-1587: Avoid NPE while prining Metrics
+ * STORM-1570: Storm SQL support for nested fields and array
+ * STORM-1576: fix ConcurrentModificationException in addCheckpointInputs
+ * STORM-1521: When using Kerberos login from keytab with multiple 
bolts/executors ticket is not renewed
+ * STORM-1488: UI Topology Page component last error timestamp is from 1970
+ * STORM-1542: Remove profile action retry in case of non-zero exit code
+ * STORM-1540: Fix Debug/Sampling for Trident
+ * STORM-1569: Allowing users to specify the nimbus thrift server queue size.
+ * STORM-1552: Fix topology event sampling log dir 
+ * STORM-1511: min/max operations support on a trident stream
+ * STORM-1522: REST API throws invalid worker log links
+ * STORM-1532: Fix readCommandLineOpts to parse JSON correctly
+ * STORM-1541: Change scope of 'hadoop-minicluster' to test
+ * STORM-1539: Improve Storm ACK-ing performance
+ * STORM-1519: Storm syslog logging not confirming to RFC5426 3.1
+ * STORM-1533: IntegerValidator for metric consumer parallelism hint
+ * STORM-1534: Pick correct version of jackson-annotations jar
+ * STORM-1476: Filter -c options from args and add them as part of 
+ * STORM-1520: Nimbus Clojure/Zookeeper issue ("stateChanged" method not found)
+ * STORM-1531: Junit and mockito dependencies need to have correct scope 
defined in storm-elasticsearch pom.xml
+ * STORM-1526: Improve Storm core performance
+ * STORM-1524: Add Pluggable daemon metrics Reporters
+ * STORM-1517: Add peek api in trident stream
+ * STORM-1455: kafka spout should not reset to the beginning of partition when 
offsetoutofrange exception occurs
+ * STORM-1518: Backport of STORM-1504
+ * STORM-1505: Add map, flatMap and filter functions in trident stream
+ * STORM-1510: Fix broken nimbus log link
+ * STORM-1503: Worker should not crash on failure to send heartbeats to 
+ * STORM-1176: Checkpoint window evaluated/expired state
+ * STORM-1494: Add link to supervisor log in Storm UI
+ * STORM-1496: Nimbus periodically throws blobstore-related exception
+ * STORM-1484: ignore subproject .classpath & .project file
+ * STORM-1478: make bolts getComponentConfiguration method cleaner/simpler
+ * STORM-1499: fix wrong package name for storm trident
+ * STORM-1463: added file scehma to log4j config files for windows env
+ * STORM-1485: DRPC Connectivity Issues
+ * STORM-1486: Fix storm-kafa documentation
+ * STORM-1214: add javadoc for Trident Streams and Operations
+ * STORM-1450: Fix minor bugs and refactor code in ResourceAwareScheduler
+ * STORM-1452: Fixes profiling/debugging out of the box
+ * STORM-1406: Add MQTT Support
+ * STORM-1473: enable log search for daemon logs
+ * STORM-1472: Fix the errorTime bug and show the time to be readable
+ * STORM-1466: Move the org.apache.thrift7 namespace to something 
+ * STORM-1470: Applies shading to hadoop-auth, cleaner exclusions
+ * STORM-1467: Switch apache-rat plugin off by default, but enable for 
+ * STORM-1468: move documentation to asf-site branch
+ * STORM-1199: HDFS Spout Implementation.
+ * STORM-1453: nimbus.clj/wait-for-desired-code-replication prints wrong log 
+ * STORM-1419: Solr bolt should handle tick tuples
+ * STORM-1175: State store for windowing operations
+ * STORM-1202: Migrate APIs to org.apache.storm, but try to provide some form 
of backwards compatability
+ * STORM-468: should be explained
+ * STORM-1348: refactor API to remove Insert/Update builder in Cassandra 
+ * STORM-1206: Reduce logviewer memory usage through directory stream
+ * STORM-1219: Fix HDFS and Hive bolt flush/acking
+ * STORM-1150: Fix the authorization of Logviewer in method 
+ * STORM-1418: improve debug logs for some external modules
+ * STORM-1415: Some improvements for trident map StateUpdater
+ * STORM-1414: Some improvements for multilang JsonSerializer
+ * STORM-1408: clean up the build directory created by tests
+ * STORM-1425: Tick tuples should be acked like normal tuples
+ * STORM-1432: Spurious failure in storm-kafka test 
+ * STORM-1449: Fix Kafka spout to maintain backward compatibility
+ * STORM-1458: Add check to see if nimbus is already running.
+ * STORM-1462: Upgrade HikariCP to 2.4.3
+ * STORM-1457: Avoid collecting pending tuples if topology.debug is off
+ * STORM-1430: ui worker checkboxes
+ * STORM-1423: storm UI in a secure env shows error even when credentials are 
+ * STORM-702: Exhibitor support
+ * STORM-1160: Add hadoop-auth dependency needed for storm-core
+ * STORM-1404: Fix Mockito test failures in storm-kafka.
+ * STORM-1379: Removed Redundant Structure
+ * STORM-706: Clarify examples README for IntelliJ.
+ * STORM-1396: Added backward compatibility method for File Download
+ * STORM-695: storm CLI tool reports zero exit code on error scenario
+ * STORM-1416: Documentation for state store
+ * STORM-1426: keep backtype.storm.tuple.AddressedTuple and delete duplicated 
+ * STORM-1417: fixed equals/hashCode contract in CoordType
+ * STORM-1422: broken example in storm-starter tutorial
+ * STORM-1429: LocalizerTest fix
+ * STORM-1401: removes multilang-test
+ * STORM-1424: Removed unused topology-path variable
+ * STORM-1427: add TupleUtils/listHashCode method and delete tuple.clj
+ * STORM-1413: remove unused variables for some tests
+ * STORM-1412: null check should be done in the first place
+ * STORM-1210: Set Output Stream id in KafkaSpout
+ * STORM-1397: Merge conflict from Pacemaker merge
+ * STORM-1373: Blobstore API sample example usage
+ * STORM-1409: StormClientErrorHandler is not used
+ * STORM-1411: Some fixes for storm-windowing
+ * STORM-1399: Blobstore tests should write data to `target` so it gets 
removed when running `mvn clean`
+ * STORM-1398: Add back in TopologyDetails.getTopology
+ * STORM-898: Add priorities and per user resource guarantees to Resource 
Aware Scheduler
+ * STORM-1187: Support windowing based on tuple ts.
+ * STORM-1400: Netty Context removeClient() called after term() causes 
+ * STORM-1383: Supervisors should not crash if nimbus is unavailable
+ * STORM-1381: Client side topology submission hook.
+ * STORM-1376: Performance slowdown due excessive zk connections and 
+ * STORM-1395: Move JUnit dependency to top-level pom
+ * STORM-1372: Merging design and usage documents for distcache
+ * STORM-1393: Update the storm.log.dir function, add doc for logs
+ * STORM-1377: nimbus_auth_test: very short timeouts causing spurious failures
+ * STORM-1388: Fix url and email links in README file
+ * STORM-1389: Removed creation of projection tuples as they are already 
+ * STORM-1179: Create Maven Profiles for Integration Tests.
+ * STORM-1387: workers-artifacts directory configurable, and default to be 
under storm.log.dir.
+ * STORM-1211: Add trident state and query support for cassandra connector
+ * STORM-1359: Change kryo links from google code to github
+ * STORM-1385: Divide by zero exception in stats.clj
+ * STORM-1370: Bug fixes for MultitenantScheduler
+ * STORM-1374: fix random failure on WindowManagerTest
+ * STORM-1040: SQL support for Storm.
+ * STORM-1364: Log storm version on daemon start
+ * STORM-1375: Blobstore broke Pacemaker
+ * STORM-876: Blobstore/DistCache Support
+ * STORM-1361: Apache License missing from two Cassandra files
+ * STORM-756: Handle taskids response as soon as possible
+ * STORM-1218: Use markdown for JavaDoc.
+ * STORM-1075: Storm Cassandra connector.
+ * STORM-965: excessive logging in storm when non-kerberos client tries to 
+ * STORM-1341: Let topology have own heartbeat timeout for multilang subprocess
+ * STORM-1207: Added flux support for IWindowedBolt
+ * STORM-1352: Trident should support writing to multiple Kafka clusters.
+ * STORM-1220: Avoid double copying in the Kafka spout.
+ * STORM-1340: Use Travis-CI build matrix to improve test execution times
+ * STORM-1126: Allow a configMethod that takes no arguments (Flux)
+ * STORM-1203: worker metadata file creation doesn't use storm.log.dir config
+ * STORM-1349: [Flux] Allow constructorArgs to take Maps as arguments
+ * STORM-126: Add Lifecycle support API for worker nodes
+ * STORM-1213: Remove sigar binaries from source tree
+ * STORM-885:  Heartbeat Server (Pacemaker)
+ * STORM-1221: Create a common interface for all Trident spout.
+ * STORM-1198: Web UI to show resource usages and Total Resources on all 
+ * STORM-1167: Add windowing support for storm core.
+ * STORM-1215: Use Async Loggers to avoid locking  and logging overhead
+ * STORM-1204: Logviewer should graceful report page-not-found instead of 500 
for bad topo-id etc
+ * STORM-831: Add BugTracker and Central Logging URL to UI
+ * STORM-1208: UI: NPE seen when aggregating bolt streams stats
+ * STORM-1016: Generate trident bolt ids with sorted group names
+ * STORM-1190: System Load too high after recent changes
+ * STORM-1098: Nimbus hook for topology actions.
+ * STORM-1145: Have IConnection push tuples instead of pull them
+ * STORM-1191: bump timeout by 50% due to intermittent travis build failures
+ * STORM-794: Modify Spout async loop to treat activate/deactivate ASAP
+ * STORM-1196: Upgrade to thrift 0.9.3
+ * STORM-1155: Supervisor recurring health checks
+ * STORM-1189: Maintain wire compatability with 0.10.x versions of storm.
+ * STORM-1185: replace with nimbus.seeds
+ * STORM-1164: Code cleanup for typos, warnings and conciseness.
+ * STORM-902: Simple Log Search.
+ * STORM-1052: TridentKafkaState uses new Kafka Producer API.
+ * STORM-1182: Removing and wrapping some exceptions in ConfigValidation to 
make code cleaner
+ * STORM-1134. Windows: Fix log4j config.
+ * STORM-1127: allow for boolean arguments (Flux)
+ * STORM-1138: Storm-hdfs README should be updated with Avro Bolt information
+ * STORM-1154: SequenceFileBolt needs unit tests
+ * STORM-162: Load Aware Shuffle Grouping
+ * STORM-1158: Storm metrics to profile various storm functions
+ * STORM-1161: Add License headers and add rat checks to builds
+ * STORM-1165: normalize the scales of CPU/Mem/Net when choosing the best node 
for Resource Aware Scheduler
+ * STORM-1163: use rmr rather than rmpath for remove worker-root
+ * STORM-1170: Fix the producer alive issue in DisruptorQueueTest
+ * STORM-1168: removes noisy log message & a TODO
+ * STORM-1143: Validate topology Configs during topology submission
+ * STORM-1157: Adding dynamic profiling for worker, restarting worker, jstack, 
heap dump, and profiling
+ * STORM-1123: TupleImpl - Unnecessary variable initialization.
+ * STORM-1153: Use static final instead of just static for class members.
+ * STORM-817: Kafka Wildcard Topic Support.
+ * STORM-40: Turn worker garbage collection and heapdump on by default.
+ * STORM-1152: Change map keySet iteration to entrySet iteration for 
+ * STORM-1147: Storm JDBCBolt should add validation to ensure either 
insertQuery or table name is specified and not both.
+ * STORM-1151: Batching in DisruptorQueue
+ * STORM-350: Update disruptor to latest version (3.3.2)
+ * STORM-697: Support for Emitting Kafka Message Offset and Partition
+ * STORM-1074: Add Avro HDFS bolt
+ * STORM-566: Improve documentation including incorrect Kryo ser. framework 
+ * STORM-1073: Refactor AbstractHdfsBolt
+ * STORM-1128: Make metrics fast
+ * STORM-1122: Fix the format issue in
+ * STORM-1111: Fix Validation for lots of different configs
+ * STORM-1125: Adding separate ZK client for read in Nimbus ZK State
+ * STORM-1121: Remove method call to avoid overhead during topology submission 
+ * STORM-1120: Fix keyword (schema -> scheme) from main-routes
+ * STORM-1115: Stale leader-lock key effectively bans all nodes from becoming 
+ * STORM-1119: Create access logging for all daemons
+ * STORM-1117: Adds visualization-init route previously missing
+ * STORM-1118: Added test to compare latency vs. throughput in storm.
+ * STORM-1110: Fix Component Page for system components
+ * STORM-1093: Launching Workers with resources specified in resource-aware 
+ * STORM-1102: Add a default flush interval for HiveBolt
+ * STORM-1112: Add executor id to the thread name of the executor thread for 
+ * STORM-1079: Batch Puts to HBase
+ * STORM-1084: Improve Storm config validation process to use java annotations 
instead of *_SCHEMA format
+ * STORM-1106: Netty should not limit attempts to reconnect
+ * STORM-1103: Changes log message to DEBUG from INFO
+ * STORM-1104: Nimbus HA fails to find newly downloaded code files
+ * STORM-1087: Avoid issues with transfer-queue backpressure.
+ * STORM-893: Resource Aware Scheduling (Experimental)
+ * STORM-1095: Tuple.getSourceGlobalStreamid() has wrong camel-case naming
+ * STORM-1091: Add unit test for tick tuples to HiveBolt and HdfsBolt
+ * STORM-1090: Nimbus HA should support `storm.local.hostname`
+ * STORM-820: Aggregate topo stats on nimbus, not ui
+ * STORM-412: Allow users to modify logging levels of running topologies
+ * STORM-1078: Updated RateTracker to be thread safe
+ * STORM-1082: fix nits for properties in kafka tests
+ * STORM-993: include uptimeSeconds as JSON integer field
+ * STORM-1053: Update storm-kafka README for new producer API confs.
+ * STORM-1058: create CLI kill_workers to kill workers on a supervisor node
+ * STORM-1063: support relative log4j conf dir for both daemons and workers
+ * STORM-1059: Upgrade Storm to use Clojure 1.7.0
+ * STORM-1069: add check case for external change of 'now' value.
+ * STORM-969: HDFS Bolt can end up in an unrecoverable state.
+ * STORM-1068: Configure request.required.acks to be 1 in KafkaUtilsTest for 
+ * STORM-1017: If ignoreZkOffsets set true,KafkaSpout will reset zk offset 
when recover from failure.
+ * STORM-1054: Excessive logging ShellBasedGroupsMapping if the user doesn't 
have any groups.
+ * STORM-954: Toplogy Event Inspector
+ * STORM-862: Pluggable System Metrics
+ * STORM-1032: Add generics to component configuration methods
+ * STORM-886: Automatic Back Pressure
+ * STORM-1037: do not remove storm-code in supervisor until kill job
+ * STORM-1007: Add more metrics to DisruptorQueue
+ * STORM-1011: HBaseBolt default mapper should handle null values
+ * STORM-1019: Added missing dependency version to use of 
+ * STORM-1020: Document exceptions in ITuple & Fields
+ * STORM-1025: Invalid links at
+ * STORM-1010: Each KafkaBolt could have a specified properties.
+ * STORM-1008: Isolate the code for metric collection and retrieval from 
+ * STORM-991: General cleanup of the generics (storm.trident.spout package)
+ * STORM-1000: Use static member classes when permitted 
+ * STORM-1003: In cluster.clj replace task-id with component-id in the 
+ * STORM-1013: [storm-elasticsearch] Expose TransportClient configuration Map 
to EsConfig
+ * STORM-1012: Shading jackson.
+ * STORM-974: [storm-elasticsearch] Introduces Tuple -> ES document mapper to 
get rid of constant field mapping (source, index, type)
+ * STORM-978: [storm-elasticsearch] Introduces Lookup(or Query)Bolt which 
emits matched documents from ES
+ * STORM-851: Storm Solr connector
+ * STORM-854: [Storm-Kafka] KafkaSpout can set the topic name as the output 
+ * STORM-990: Refactored TimeCacheMap to extend RotatingMap
+ * STORM-829: Hadoop dependency confusion
+ * STORM-166: Nimbus HA
+ * STORM-976: Config storm.logback.conf.dir is specific to previous logging 
+ * STORM-995: Fix excessive logging
+ * STORM-837: HdfsState ignores commits
+ * STORM-938: storm-hive add a time interval to flush tuples to hive.
+ * STORM-964: Add config (with small default value) for logwriter to restrict 
its memory usage
+ * STORM-980: Re-include storm-kafka tests from Travis CI build
+ * STORM-960: HiveBolt should ack tuples only after flushing.
+ * STORM-951: Storm Hive connector leaking connections.
+ * STORM-806: use storm.zookeeper.connection.timeout in storm-kafka ZkState 
when newCurator
+ * STORM-809: topology.message.timeout.secs should not allow for null or <= 0 
+ * STORM-847: Add cli to get the last storm error from the topology
+ * STORM-864: Exclude storm-kafka tests from Travis CI build
+ * STORM-477: Add warning for invalid JAVA_HOME
+ * STORM-826: Update KafkaBolt to use the new kafka producer API
+ * STORM-912: Support SSL on Logviewer
+ * STORM-934: The current doc for topology ackers is outdated
+ * STORM-160: Allow ShellBolt to set env vars (particularly PATH)
+ * STORM-937: Changing noisy log level from info to debug
+ * STORM-931: Python Scripts to Produce Formatted JIRA and GitHub Join
+ * STORM-924: Set the file mode of the files included when packaging release 
+ * STORM-799: Use IErrorReport interface more broadly
+ * STORM-926: change pom to use maven-shade-plugin:2.2
+ * STORM-942: Add FluxParser method parseInputStream() to eliminate disk usage
+ * STORM-67: Provide API for spouts to know how many pending messages there are
+ * STORM-918: Storm CLI could validate arguments/print usage
+ * STORM-859: Add regression test of STORM-856
+ * STORM-913: Use Curator's delete().deletingChildrenIfNeeded() instead of 
+ * STORM-968: Adding support to generate the id based on names in Trident
+ * STORM-845: Storm ElasticSearch connector
+ * STORM-988: supervisor.slots.ports should not allow duplicate element values
+ * STORM-975: Storm-Kafka trident topology example
+ * STORM-958: Add config for init params of group mapping service
+ * STORM-949: On the topology summary UI page, last shown error should have 
the time and date
+ * STORM-1142: Some config validators for positive ints need to allow 0
+ * STORM-901: Worker Artifacts Directory
+ * STORM-1144: Display requested and assigned cpu/mem resources for schedulers 
in UI
+ * STORM-1217: making small fixes in RAS
diff --git a/_posts/ 
new file mode 100644
index 0000000..465b1b2
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,29 @@
+layout: post
+title: Storm 0.10.1 Released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 0.10.1 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's performance, stability and fault tolerance. We encourage 
users of previous versions to upgrade to this latest release.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-1731: Avoid looking up debug enable flags within critical path
+ * STORM-1645: convert nimbus.thrift.port to int to avoid ClassCastException
+ * STORM-1535: Make sure hdfs key tab login happens only once for multiple 
+ * STORM-584: Fix logging for LoggingMetricsConsumer metrics.log file
+ * STORM-1603: Storm UT fails on supervisor test in Windows (0.10.x)
+ * STORM-1596: Do not use single Kerberos TGT instance between multiple threads
+ * STORM-1482: add missing 'break' for RedisStoreBolt
+ * STORM-1481: avoid Math.abs(Integer) get a negative value
+ * STORM-1121: Deprecate test only configuraton nimbus.reassign
+ * STORM-1180: FLUX logo wasn't appearing quite right
diff --git a/_posts/ 
new file mode 100644
index 0000000..1631e3f
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,46 @@
+layout: post
+title: Storm 1.0.1 Released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 1.0.1 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's performance, stability and fault tolerance. We encourage 
users of previous versions to upgrade to this latest release.
+Performance Improvements
+This release includes performance improvements to Storm's internal messaging 
system. The maximum rate at which spouts can emit data has nearly doubled, and 
performance of inter-task communication has improved.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-1741: remove unconditional setting of JAVA_HOME from
+ * STORM-1739: update the minor JAVA version dependency in 0.10.0 and above
+ * STORM-1727: document 1.0 package renaming and how to use the migration tool
+ * STORM-1733: Flush stdout and stderr before calling "os.execvp" to prevent 
log loss.
+ * STORM-1729: Get rid of reflections while recording stats
+ * STORM-1731: Avoid looking up debug / backpressure enable flags within 
critical path
+ * STORM-1535: Make sure hdfs key tab login happens only once for multiple 
+ * STORM-1725: Kafka Spout New Consumer API - KafkaSpoutRetryExponential 
Backoff method should use HashMap instead of TreeMap not to throw Exception
+ * STORM-1544: Document Debug/Sampling of Topologies
+ * STORM-1679: add storm Scheduler documents
+ * STORM-1704: When logviewer_search.html opens daemon file, next search 
always show no result
+ * STORM-1714: StatefulBolts ends up as normal bolts while using 
TopologyBuilder.setBolt without parallelism
+ * STORM-1683: only check non-system streams by default
+ * STORM-1680: Provide configuration to set min fetch size in KafkaSpout
+ * STORM-1649: Optimize Kryo instaces creation in HBaseWindowsStore
+ * STORM-1696: status not sync if zk fails in backpressure
+ * STORM-1693: Move stats cleanup to executor shutdown
+ * STORM-1585: Add DDL support for UDFs in storm-sql
+ * STORM-1681: Bug in scheduling cyclic topologies when scheduling with RAS
+ * STORM-1706: Add RELEASE and to storm-diet assembly
+ * STORM-1613: Upgraded HBase version to 1.1.0
+ * STORM-1687: divide by zero in stats
diff --git a/_posts/ 
new file mode 100644
index 0000000..f93fd33
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,70 @@
+layout: post
+title: Storm 1.0.2 Released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 1.0.2 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's performance, stability and fault tolerance. We encourage 
users of previous versions to upgrade to this latest release.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-1939: Frequent InterruptedException raised by 
+ * STORM-1968: Storm logviewer does not work for nimbus.log in secure cluster
+ * STORM-1928: ShellSpout should check heartbeat while ShellSpout is waiting 
for subprocess to sync
+ * STORM-1922: Supervisor summary default order by host
+ * STORM-1956: Disabling Backpressure by default
+ * STORM-1934: Fix race condition between sync-supervisor and sync-processes
+ * STORM-1895: blobstore replication-factor argument
+ * STORM-118: Docs: typo in transactional-commit-flow.png
+ * STORM-1633: Document blobstore to
+ * STORM-1899: Release HBase connection when topology shutdown
+ * STORM-1844: Some tests are flaky due to low timeout
+ * STORM-1946: initialize lastHeartbeatTimestamp before starting heartbeat task
+ * STORM-1941 Nimbus discovery can fail when zookeeper reconnect happens
+ * STORM-1937 Fix WindowTridentProcessor cause NullPointerException
+ * STORM-1924: Add a config file parameter to HDFS test topologies
+ * STORM-1705: Cap number of retries for a failed message
+ * STORM-1884: Prioritize pendingPrepare over pendingCommit
+ * STORM-1575: fix TwitterSampleSpout NPE on close
+ * STORM-1874: Update logger private permissions
+ * STORM-1865: update command line client document
+ * STORM-1771: HiveState should flushAndClose before closing old or idle Hive 
+ * STORM-1882: Expose TextFileReader public
+ * STORM-1864 : StormSubmitter should throw respective exceptions and log 
respective errors for registered submitter hook invocation
+ * STORM-1887: Fixed help message for set_log_level command
+ * STORM-1878: Flux can now handle IStatefulBolts
+ * STORM-1861: Storm submit command returns exit code of 0 even when it fails.
+ * STORM-1755: Revert the kafka client version upgrade in storm-kafka module
+ * STORM-1853: Replace ClassLoaderObjectInputStream with ObjectInputStream
+ * STORM-1868: Modify TridentKafkaWordCount to run in distributed mode
+ * STORM-1859: Ack late tuples in windowed mode
+ * STORM-1851: Fix default nimbus impersonation authorizer config
+ * STORM-1848: Make KafkaMessageId and Partition serializable to support event 
+ * STORM-1862: Flux ShellSpout and ShellBolt can't emit to named streams
+ * Storm-1728: TransactionalTridentKafkaSpout error
+ * STORM-1850: State Checkpointing Documentation update
+ * STORM-1674: Idle KafkaSpout consumes more bandwidth than needed
+ * STORM-1842: Forward references in storm.thrift cause tooling issues
+ * STORM-1745: Add partition to log output in PartitionManager
+ * STORM-1735: Nimbus should log that replication succeeded when min replicas 
was reached exactly
+ * STORM-1835: add lock info in thread dump
+ * STORM-1749: Fix storm-starter github links
+ * STORM-1764: Pacemaker is throwing some stack traces
+ * STORM-1761: Storm-Solr Example Throws ArrayIndexOutOfBoundsException in 
Remote Cluster Mode
+ * STORM-1756: Explicitly null KafkaServer reference in KafkaTestBroker to 
prevent out of memory on large test classes.
+ * STORM-1750: Ensure worker dies when report-error-and-die is called.
+ * STORM-1715: using Jedis Protocol.DEFAULT_HOST to replace DEFAULT_HOST
+ * STORM-1713: Replace NotImplementedException with 
+ * STORM-1678: abstract batch processing to common api `BatchHelper`
+ * STORM-1773: Utils.javaDeserialize() doesn't work with primitive types
+ * STORM-1661: Introduce a config to turn off blobstore acl validation in 
insecure mode
diff --git a/_posts/ 
new file mode 100644
index 0000000..d5bfa9c
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,26 @@
+layout: post
+title: Storm 0.9.7 Released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 0.9.7 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's performance, stability and fault tolerance. We encourage 
users of previous versions to upgrade to this latest release.
+Multi-Lang Bug Fix
+This release fixes an issue with Storm's multi-lang feature where a malformed 
multi-lang message from a ShellSpout would cause the spout to hang indefinitely.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-442: multilang ShellBolt/ShellSpout die() can be hang when Exception 
+ * STORM-1928: ShellSpout should check heartbeat while ShellSpout is waiting 
for subprocess to sync
diff --git a/_posts/ 
new file mode 100644
index 0000000..e1fb0fa
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,28 @@
+layout: post
+title: Storm 0.10.2 Released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 0.10.2 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's performance, stability and fault tolerance. We encourage 
users of previous versions to upgrade to this latest release.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-2042: Nimbus client connections not closed properly causing 
connection leaks
+ * STORM-1609: Netty Client is not best effort delivery on failed Connection
+ * STORM-1928: ShellSpout should check heartbeat while ShellSpout is waiting 
for subprocess to sync
+ * STORM-1989: X-Frame-Options support for Storm UI
+ * STORM-1834: Documentation How to Generate Certificates For Local Testing 
SSL Setup
+ * STORM-1754: Correct java version in 0.10.x storm-starter
+ * STORM-1750: Ensure worker dies when report-error-and-die is called.
+ * STORM-1739: update the minor JAVA version dependency in 0.10.0 and above
+ * STORM-1733: Flush stdout and stderr before calling "os.execvp" to prevent 
log loss
diff --git a/_posts/ 
new file mode 100644
index 0000000..0d590ea
--- /dev/null
+++ b/_posts/
@@ -0,0 +1,80 @@
+layout: post
+title: Storm 1.0.3 Released
+author: P. Taylor Goetz
+The Apache Storm community is pleased to announce that version 1.0.3 has been 
released and is available from [the downloads page](/downloads.html).
+This is a maintenance release that includes a number of important bug fixes 
that improve Storm's performance, stability and fault tolerance. We encourage 
users of previous versions to upgrade to this latest release.
+Special thanks are due to all those who have contributed to Apache Storm -- 
whether through direct code contributions, documentation, bug reports, or 
helping other users on the mailing lists. Your efforts are much appreciated.
+Full Changelog
+ * STORM-2197: NimbusClient connectins leak due to leakage in ThriftClient
+ * STORM-2321: Handle blobstore zk key deletion in KeySequenceNumber.
+ * STORM-2324: Fix deployment failure if resources directory is missing in 
topology jar
+ * STORM-2335: Fix broken Topology visualization with empty ':transferred' in 
executor stats
+ * STORM-2336: Close Localizer and AsyncLocalizer when supervisor is shutting 
+ * STORM-2338: Subprocess exception handling is broken in on Windows 
+ * STORM-2337: Broken documentation generation for and
+ * STORM-2325: Logviewer doesn't consider 'storm.local.hostname'
+ * STORM-1742: More accurate 'complete latency'
+ * STORM-2176: Workers do not shutdown cleanly and worker hooks don't run when 
a topology is killed
+ * STORM-2293: hostname should only refer node's 'storm.local.hostname'
+ * STORM-2246: Logviewer download link has urlencoding on part of the URL
+ * STORM-1906: Window count/length of zero should be disallowed
+ * STORM-1841: Address a few minor issues in windowing and doc
+ * STORM-2268: Fix integration test for Travis CI build
+ * STORM-2283: Fix DefaultStateHandler kryo multithreading issues
+ * STORM-2264: OpaqueTridentKafkaSpout failing after STORM-2216
+ * STORM-2276: Remove twitter4j usages due to license issue ( is 
catalog X)
+ * STORM-2095: remove any remaining files when deleting blobstore directory
+ * STORM-2222: Repeated NPEs thrown in nimbus if rebalance fails
+ * STORM-2251: Integration test refers specific version of Storm which should 
be project version
+ * STORM-2234: heartBeatExecutorService in shellSpout don't work well with 
+ * STORM-2216: Favor JSONValue.parseWithException
+ * STORM-2208: HDFS State Throws FileNotFoundException in Azure Data Lake 
Store file system (adl://)
+ * STORM-2213: ShellSpout has race condition when ShellSpout is being inactive 
longer than heartbeat timeout
+ * STORM-2210: remove array shuffle from ShuffleGrouping
+ * STORM-2052: Kafka Spout - New Client API - Performance Improvements
+ * storm-2205: Racecondition in getting nimbus summaries while ZK connections 
are reconnected
+ * STORM-2198: perform RotationAction when stopping HdfsBolt
+ * STORM-2196: A typo in RAS_Node::consumeCPU
+ * STORM-2189: RAS_Node::freeCPU outputs incorrect info
+ * STORM-2184: Don't wakeup KafkaConsumer on shutdown
+ * STORM-2185: Storm Supervisor doesn't delete directories properly sometimes
+ * STORM-2175: fix double close of workers
+ * STORM-2018: Supervisor V2
+ * STORM-2145: Leave leader nimbus's hostname to log when trying to connect 
leader nimbus
+ * STORM-2127: Storm-eventhubs should use latest amqp and eventhubs-client 
+ * STORM-2040: Fix bug on assert-can-serialize
+ * STORM-2017: ShellBolt stops reporting task ids
+ * STORM-2119: bug in log message printing to stdout
+ * STORM-2120: Emit to _spoutConfig.outputStreamId
+ * STORM-2101: fixes npe in compute-executors in nimbus
+ * STORM-2090: Add integration test for storm windowing
+ * STORM-2003: Make sure config contains TOPIC before get it
+ * STORM-1567: in defaults.yaml 'topology.disable.loadaware' should be 
+ * STORM-1987: Fix TridentKafkaWordCount arg handling in distributed mode.
+ * STORM-1969: Modify HiveTopology to show usage of non-partition table.
+ * STORM-1849: HDFSFileTopology should use the 3rd argument as topologyName
+ * STORM-2086: use DefaultTopicSelector instead of creating a new one
+ * STORM-2079: Unneccessary readStormConfig operation
+ * STORM-2081: create external directory for storm-sql various data sources 
and move storm-sql-kafka to it
+ * STORM-2070: Fix sigar native binary download link
+ * STORM-2056: Bugs in logviewer
+ * STORM-1646: Fix ExponentialBackoffMsgRetryManager test
+ * STORM-2039: Backpressure refactoring in worker and executor
+ * STORM-2064: Add storm name and function, access result and function to 
+ * STORM-2063: Add thread name in worker logs
+ * STORM-2042: Nimbus client connections not closed properly causing 
connection leaks
+ * STORM-2032: removes warning in case more than one metrics tuple is received
+ * STORM-1594: org.apache.storm.tuple.Fields can throw NPE if given invalid 
field in selector
+ * STORM-1995: downloadChunk in nimbus.clj should close the input stream

Reply via email to