Skip to content
This repository has been archived by the owner on Mar 3, 2023. It is now read-only.

Release 0.15.0

Compare
Choose a tag to compare
@kramasamy kramasamy released this 11 Aug 05:44
· 1150 commits to master since this release

Highlights:

  • Complete support for running Heron in Kubernetes
  • Heron API server for easy deployment and topology management
  • Support for Storm like python API with PEX support
  • Python DSL with PEX support
  • Exactly once and stateful processing in Java and Python
  • Initial version of Dhalion for policy based self regulation
  • Pulsar Spout
  • Google cloud storage uploader
  • Several bug fixes

Release Notes:

  • Add base framework for api server. (#2094)
  • Heron Python Code Cleanup (#2173)
  • Update pulsar to apache client. (#2171)
  • Added docstrings to python dsl (#2166)
  • Add kubernetes stateful config. (#2164)
  • added update certificates for java (#2163)
  • Fix NPE when logging exceptions that have no message using SLF4J (#2161)
  • Dhalion: Add implementation for resolvers and health policy (#2162)
  • Added Pulsar Spout and Pulsar Streamlet (#2160)
  • Added exactly once semantics for python dsl (#2159)
  • Don't print topology context since it just prints a class pointer info (#2157)
  • Misc Python fixes (#2158)
  • Sort the task ids to ensure that identical fields grouping tuples (#2155)
  • Make sure that metric registration and adding tasks are done once. (#2152)
  • GetInstances will return only active instances. Instead we want to (#2148)
  • Refactored common code by moving it to base instance (#2151)
  • Correct the way we refer to the class member (#2150)
  • Add MetricsCacheMetricsProvider (#2113)
  • Add Dhalion detectors and diagnoser implementation for heron (#2132)
  • Use a default value for checkpoint interval if user does not specify it (#2147)
  • Fix the paths for local stateful storage (#2145)
  • For debugging purporses count all words as 1 (#2144)
  • Corrected stateful checkpoint location (#2143)
  • Add a string method to print out the state (#2142)
  • Use appropriate method while manipulating state (#2141)
  • Spout should read input tuples even in non acking mode (#2140)
  • Initialize instance state if it's null (#2138)
  • Register for stateful messages and ensure that state is not empty before parsing it (#2139)
  • Initialize the instance state before open/prepare instance (#2134)
  • Add java doc gen for heron api, spi and storm (#2123)
  • Added exactly once semantics for python (#2135)
  • Update sendOutState (#2131)
  • While unzipping pex files, don't overwrite existing files. (#2129)
  • Use Java ver 8 as source and target version (#2130)
  • Add Dhalion-sensor implementation for heron (#2101)
  • Limit stmgr client reconnect attempts (#2125)
  • Make instance send out state (#2120)
  • Register stateful processing messages with StreamManagerClient (#2119)
  • Added a new socket option to take the maximum packet size accepted (#2118)
  • Add stateful support into Slave (#2106)
  • Introduce StatefulController in TMaster and handle all stateful messages (#2105)
  • Added ability in tmaster to accept stateful processing messages (#2102)
  • For stateful topologies, TMaster should connect with checkpoint manager (#2100)
  • Dhalion health manager (#1980)
  • Add stateful controller into tmaster dir (#1973)
  • Add clean stateful checkpoint handler into tcontroller (#2096)
  • Introduce stateful restorer in stmgr. (#2091)
  • New API for topology reliability modes (#2089)
  • Correct heap memory usage of stream manager (#2086)
  • Limit number of messages in mempool, instead of total byte sizes (#2073)
  • Add Pulsar spout. (#2069)
  • Instantiate ClientMgr in constructor (#2078)
  • Instantiate checkpoint manager client in stmgr (#2076)
  • Added Stateful processing related message handling in TMasterClient (#2075)
  • Fix kafka spout HeapByteBuffer not serializable problem (#2063)
  • Added stateful processing restore state machine to stmgr. (#2070)
  • packaging python with all the modules (#2072)
  • Fix the comparison to be string rather than numerical (#2071)
  • Change ci-docker.sh to use sh instead of bash (#2068)
  • Added stateful processing message handlers in stmgr-server (#2067)
  • Remove API dep on c.t.h.common.basics.TypeUtils (#2061)
  • Add hooks in stmgr client/clientmgr to send checkpoint markers. (#2060)
  • Added a script to build/publish docker images (#2065)
  • Mempool acquire should always return a Clean protobuf (#2057)
  • Adding debugging to integration test spout, increasing timeouts for get condition (#2055)
  • Added Checkpoint Gateway Layer while sending data to instances (#2047)
  • Increase timeout for integration test result checking (#2053)
  • Add countdown latch to runnable in testRegisterTimerEventInNanoSeconds (#2050)
  • Added Spout for Apache Pulsar (#2048)
  • Created heron/spouts to house all well-known spouts. (#2046)
  • Added applatix scripts and tools (#2045)
  • Package python dsl package (#2043)
  • Python DSL (#2033)
  • Extract HeronTuple from current_tuples while acking it (#2032)
  • Applatix workflow with build followed by test (#2015)
  • Made cloudpickle the default serializer (#2030)
  • Window tuples should take care of handling acks (#2028)
  • Changed the custom grouping to take in an actual instance of (#2027)
  • Added WindowBolt interface in python (#2021)
  • Added Checkpoint Gateway (#2024)
  • Add security check for shell-kill-executor (#2013)
  • flatten the directory structure for integration tests (#2018)
  • Updated Python documentation (#2017)
  • Added Neighbour Calculator, a utility class to calculate (#2016)
  • Expose TopologyContext in heronpy (#2014)
  • Moved Herons pypi to heronpy. Updated requirements as well (#2012)
  • Remove pyheron since now python is first class api in Heron (#2006)
  • Rename tools/travis-ci to tools/travis and update the references to it (#2007)
  • Restart subprocess with shell_env. (#2004)
  • Discover the platform in travis scripts (#2001)
  • change the default gcc 4.8 to just gcc (#1999)
  • remove the space in applatix array parameters (#1998)
  • Made heron instance and examples depend on api and not on pyheron (#1992)
  • Applatix CI integration (#1986)
  • Add support for src task id in the storm api (#1938)
  • Kubernetes Manual Scaling (#1970)
  • Use TopologyContext as the base for TopologyContextImpl (#1989)
  • Refactored constants (#1988)
  • Add GCSUploader for uploading topologies to Google Cloud Storage. (#1976)
  • Heron client unit test (#1983)
  • Rephrase references to Storm (#1979)
  • Native Python API for Heron. (#1982)
  • Add checking server starting return (#1984)
  • Change TMaster to watch the packing plan for changes (#1955)
  • Added get topology name to context (#1978)
  • Pex files need to be unzipped so that depdencies can be set/found (#1977)
  • Import metrics from pyheron module (#1975)
  • Added the python requirements to be >= (#1974)
  • Allow the tracker to take command line args for a state manager. (#1967)
  • Fix inaccurate execute-latency metric (#1969)
  • Changed the python requirements for pyheron so that it doesn't force to downgrade (#1966)
  • Topic Real Time Streaming does not exist as list of allowed Topic Names (#1965)
  • Streamline preparation of docker images for distribution (#1961)
  • Remove extra initialize method from ContainerFileDownloadHandler. (#1962)
  • Allow any type of file to be downloaded from a container through the shell. (#1959)
  • Increase delta in Python loopers test (#1958)
  • Add support for watching packing plan to c++ state managers (#1953)
  • Scripts to build docker artifacts (#1948)
  • Add note on hostname in /etc/hosts (#1945)