All Versions
14
Latest Version
Avg Release Cycle
26 days
Latest Release
142 days ago

Changelog History
Page 1

  • v2.5.0

    January 15, 2020
  • v2.5.0-candidate

    December 09, 2019
  • v2.4.2

    December 04, 2019
  • v2.4.2-candidate

    November 28, 2019

    2019-11-25

  • v2.4.1

    September 04, 2019

    2.4.1 — 2019-08-30

    🛠 Fixes

    • 🛠 Fixed wrong serialize of batchBuilder in ProducerConfigurationData #4620
    • 🛠 Fixed SchemaInfo properties losing when registering schema using admin api #4617
    • 🛠 Fixed wrong topic domain returned by get partitioned topic #4613
    • 🛠 Fixed pulsar-dashboard wrong count number of bundles #4637
    • 🛠 Fixed partitionIndex error in consumer for a single partitioned topic #4591
    • 🛠 Fixed deadlock on get-status rest-api call in broker #4616
    • 🛠 Fixed deadlock in subscribeAsync demo #4649
    • 🛠 Fixed C++ client lookup error over HTTP in standalone #4625
    • 🛠 Fixed NPE at managed-ledger when fetch reader internal-stats #4615
    • 🛠 Fixed C++ client producer sendAsync() hang when no enough batched message #4657
    • 🛠 Fixed issue when submitting NAR via file url #4577
    • 📇 Renamed C++ logger enum names to avoid conflicts with compiler macros #4664
    • 🛠 Fixed leaking of pulsar-io-influxdb in distribution #4678
    • 🛠 Fixed the default port for https and http in admin client #4623
    • 🛠 Fixed wrong schema delete when checking compatibility #4669
    • 🛠 Fixed docker/publish.sh doesn't work for pulsar-all and pulsar-standalone images #4705
    • 🛠 Fixed integration-test failure when execute pip3 install pulsar_client #4754
    • ➕ Added log folder in pulsa-function-go back #4736
    • 🛠 Fixed Pulsar SQL NPE when predicate pushdown for publish_time #4744
    • 🛠 Fixed redelivered message logic of partition topic #4653
    • 🛠 Fixed C++ log level names in Log4cxxLogger #4735
    • 🛠 Fixed go function package not executable #4743
    • ➕ Added anonymous role to proxy configuration #4733
    • ➕ Added kubernetes namespace to function instance url #4701
    • 🛠 Fixed go function not parse conf content first #4746
    • Made PulsarKafkaProducer thread safe #4745
    • 🛠 Fixed messages not get acked if there is not sink topic #4815
    • 🛠 Fixed bug when function package jar/py/go and runtime is not set #4814
    • 🛠 Fixed topic loading in rest-api not time out in zooKeeperOperationTimeoutSeconds #4805
    • 🛠 Fixed default retention policy miss upload to zk #4810
    • ➕ Added checking function implements correct interface #4844
    • 🛠 Fixed retention size policy bug #4825
    • Catch throwable in interceptors of consumer and producer #4860
    • 🛠 Fixed first position in managedLedger is ahead of the last #4853
    • 🛠 Fixed concurrent access of uninitializedCursors in ManagedLedgerImpl.asyncOpenCursor #4837
    • 🛠 Fixed schema not found handling in pulsar-sql #4890
    • 🛠 Fixed requests not respect no_proxy env variable in dashboard #4867
    • 🛠 Fixed broken replication msg to specific cluster #4930
    • 🛠 Fixed dashboard peek parse message error #4918
    • 🛠 Fixed StructSchema reader cache loading logic #4962
    • 🛠 Fixed fd leakage in FunctionActioner.downloadFile #4970
    • Fixed python function str bytes convert in example custom_object_function.py #4946
    • 🛠 Fixed NPE while cleaning up namespace node #4965
    • 🛠 Fixed the getSchema logic in pulsar proxy #4975
    • 🛠 Fixed warning by add default loader for latest pyyaml #4974
    • 🛠 Fixed snappy compressor compile error in pulsar-client-cpp #4972
    • Reinitialize certain components for externally managed runtimes when moving functions #5007
    • ⬆️ Upgraded jackson-databind #5011
    • 🛠 Fixed the problem of missing dependencies less in docker #5034
    • 🛠 Fixed duplicated Prometheus TYPE in broker metrics #4183
    • 🛠 Fixed pulsar sink and source state by init state earlier #5046

    ✨ Enhancements

    • Re-factored Component implementation #4541
    • Provided a clock for generating publish timestamp for producers #4562
    • ⬇️ Reduced unnecessary track message calls #4595
    • 👌 Supported dynamic configure with escape char #4611
    • ➕ Added null check for function/source/sink configs #4627
    • ➕ Added delete dynamic config api #4614
    • 🔧 Made broker replication mtls configuration dynamic #4609
    • ➕ Added authorization to function worker REST endpoints #4628
    • 👌 Improved and add authorization to function download and upload #4644
    • 👍 Allowed consumer retrieve the sequence id that the producer set #4645
    • ➕ Added perPartition parameter to partitioned-stats API #4639
    • 👌 Supported Pulsar schema for pulsar kafka client wrapper #4534
    • 👌 Supported delete and update event for JDBC Sink #4358
    • ✅ Cleaned up tests in the presto module #4683
    • ➕ Added allowAutoTopicCreation to broker.conf and related configuration #4694
    • 🔄 Changed to use classloaders to load Java functions #4685
    • ✂ Removed fixed server type check in kerberos #4758
    • 🔄 Changed type of publish_time to timestamp #4757
    • ➕ Added read-timeout to admin-request #4762
    • ➕ Added checking of deleted schema when adding schema #4731
    • ➕ Added strand to C++ client for exclusive control #4750
    • ➕ Added support to create partitioned topic with 1 partition #4764
    • ➕ Added getters and setters to PulsarService & BrokerService #4709
    • ➕ Added configure ack-timeout tick time #4760
    • ➕ Added options to rewrite namespace delimiter for pulsar sql #4749
    • 👍 Made Pulsar SQL supports pulsar's primitive schema #4728
    • ➕ Added basic authentication capabilities to Pulsar SQL #4779
    • 👌 Improved SchemaInfoProvider to fetch schema info asynchronously #4836
    • 👌 Supported KeyValue schema use AUTO_CONSUME as key/value schema #4839
    • Provided action type for insert in pulsar-io-jdbc #4862
    • Made partition as internal column in pulsar-sql #4888
    • ➕ Added option to disable authentication for proxy /metrics #4921
  • v2.4.1-candidate

    August 28, 2019
  • v2.4.0

    July 05, 2019

    Apache

    2.4.0 — 2019-06-30

    PIPs

    🛠 Fixes

    • 🛠 Fix possible message loss using peer-cluster feature #3426
    • 🛠 Fix pulsar standalone does not read zk port from conf/standalone.conf #3790
    • 🛠 Fix some issues of ZkIsolatedBookieEnsemblePlacementPolicy #3917 #3918
    • 🛠 Fix NPE when unload non-existent topic #3946
    • 🛠 Fix race condition while deleting global topic #4173
    • 🛠 Fix deadlock on skip messages #4411
    • 🛠 Fix NPE when closing batch during a reconnection #4427
    • 🛠 Fix race condition of read-timeout task in managed ledger #4437
    • 0️⃣ Disable sticky read by default #4526
    • 🛠 Fix race condition between timeout-task and add-call complete #4455

    ✨ Enhancements

    • ⚡️ Optimize message replay for large backlog consumer #3732
    • ➕ Added support for websocket produce/consume command #3835
    • ➕ Added support for TTL config in broker.conf #3898
    • ⬇️ Reduce memory used in ClientCnx for pending lookups #4104
    • ⬇️ Reduce number of hashmap sections for ledger handles cache #4102
    • ➕ Added backlog and offloaded size in Prometheus stats #4150
    • ➕ Added support for configure the managed ledger cache eviction frequency #4066
    • ➕ Added support to avoid payload copy when inserting into managed ledger cache #4197
    • ➕ Added support to cache unack-messageId into OpenRangeSet #3819
    • ➕ Added support configure static PulsarByteBufAllocator to handle OOM errors #4196
    • Auto refresh new tls certs for jetty webserver #3645
    • Create non-persistent topic by pulsar-admin/rest api #3625
    • Consumer priority-level in Failover subscription #2954

    🔒 Security

    • ➕ Added support for other algorithms in token auth #4528

    Namespace Policies

    • ➕ Added support for tenant based bookie isolation #3933
    • ➕ Added support for secondary bookie isolation group at namespace #4458
    • ➕ Added support for secondary bookie-isolation-group #4261
    • ➕ Added support for replicator rate limit between clusters #4273
    • 0️⃣ Disable backlog quota check by default #4320

    Tiered Storage

    • ➕ Added support for Pulsar SQL to read data from tiered storage #4045

    Pulsar Schema

    • ➕ Added schema versioning to support multi version messages produce and consume #3876 #3670 #4211 #4325 #4548
    • ➕ Added TRANSITIVE schema check strategies to support compatibility check over all existing schemas #4214
    • ➕ Added schema data validator #4360
    • ➕ Added support for delete schema when deleting a topic #3941
    • ➕ Added generic record builder #3690

    Pulsar IO

    • ➕ Added IO connector for flume source and sink #3597
    • ➕ Added IO connector for redis sink #3700
    • ➕ Added IO connector for solr sink #3885
    • Hide kafka-connecter details for easy use debezium connector #3825
    • ➕ Added IO connector for debezium PostgreSQL source #3924
    • ✨ Enhancements for RabbitMQ source configuration #3937
    • ➕ Added IO connector for RabbitMQ sink #3967
    • ➕ Added IO connector for InfluxDB sink #4017

    Pulsar functions

    • ➕ Added support for authentication #3735 #3874 #4198
    • 🛠 Fix NPE when stats manager not initialized #3891
    • ➕ Added async state manipulation methods #3798
    • 🛠 Fix fail to update functions in effectively-once mode #3993
    • ➕ Added labels to function statefulsets and services #4038
    • ➕ Added support for set key for message when using function publish #4005
    • 👉 Use negative acknowledge to instead ackTimeout #4103
    • 🛠 Fix backward compatibility with 2.2 auth not working #4241

    Java client

    • ➕ Added negative acks #3703
    • ➕ Added support for backoff strategy configuration #3848
    • ➕ Added support for configure TypedMessageBuilder through a Map conf object #4015
    • ➕ Added interceptor for negative ack send #3962
    • ➕ Added support for seek operate on reader #4031
    • Store key part of KeyValue schema into pulsar message keys #4117
    • ➕ Added interceptor for ack timeout #4300
    • ➕ Added support for snappy compression #4259
    • ➕ Added support for key based batcher #4435

    Python client

    • ➕ Added negative acks #3816
    • ➕ Added support for snappy compression #4319

    Go client

    • ➕ Added negative acks #3817
    • ➕ Added support for go schema #3904
    • ➕ Added support for snappy compression #4319
    • ➕ Added support for Key_Shared subscription #4465

    C++ client

    • ➕ Added negative acks #3750
    • 🛠 Fix ack timeout when subscribing to regex topic #3897
    • ➕ Added support for Key_Shared subscription #4366

    Adaptors

    • 🔧 In Kafka client wrapper, added some configurations #3753 #3797 #3843 #3887 #3991
    • In Apache Flink connector, allow to specify a custom Pulsar producer #3894 and client authentication #3949
    • 👍 In Apache Flink connector, added support for accept ClientConfigurationData, ProducerConfigurationData, ConsumerConfigurationData #4232
    • In Apache Storm connector, fix NPE while emitting next tuple #3991 and some add some enhancements #4280 #4239#4238 #4236 #4495 #4494

    👀 For a complete list of issues fixed, see

    https://github.com/apache/pulsar/milestone/20?closed=1

    🚀 https://github.com/apache/pulsar/releases/tag/v2.4.0

  • v2.4.0-candidate

    June 26, 2019

    2019-06-21

  • v2.3.2

    May 31, 2019

    2.3.2 — 2019-05-30

    🛠 Fixes

    • Validate admin operation on topic with authoritative parameter #4270
    • 🛠 fix bug with source local run #4278
    • fix cannot use size (type _Ctype_int) as type _Ctype_ulong #4212
    • 🛠 Fix segfault in c++ producer #4219
    • AlwaysCompatible doesn't use AlwaysSchemaValidator in 2.3.1 component/schemaregistry #4181
    • Avoid potentially blocking method during topic ownership check #4190
    • [pulsar-broker]Fix: client-producer can't reconnect due to failed producer-future on cnx cache #4138
    • Removing # TYPE comment from topic metrics in Prometheus #4136
    • 🚚 For functions metrics in prometheus also remove TYPE #4081
    • 🛠 Fix: set receive queue size for sinks #4091
    • 🛠 Fix: Exception when switch cluster from auth enabled to auth disabled #4069
    • 🛠 Fix update cli source sink #4061
    • 🛠 Fix connectors nested configs #4067
    • For functions metrics, avoid having HELP #4029
    • 🛠 Fix Python functions state which is completely broken #4027
    • 🛠 [issue #3975] Bugfix NPE on non durable consumer #3988
    • 🛠 Fix: Function auth should ignore exception because it might be anonymous user #4185
    • 👷 [pulsar-function] fix worker-stats broken admin-api #4068
    • 🛠 fix errors in sql doc #4030
    • 🛠 Fix the swagger files generated by removing troublesome class #4024
    • [pulsar-function] fix broken backward compatibility with v1-namespace while registering function #4224
    • ⏪ Revert dup consumer and related code #4142
    • [issue 4274][pulsar-io]Add double quotation marks for metrics with remote_cluster #4295

    ✨ Enhancements

    • 🔧 By default, auto configure the size of Bookie read/write cache #4297
    • ⬆️ Upgrade to BookKeeper 4.9.2 #4288
    • 👷 [pulsar-function] support bookie authentication from function-worker #4088
    • 🐎 Optimizing performance for Pulsar function archive download #4082
    • 👍 allow users to update output topics for functions and sources #4092
    • 👌 improve data-generator source performance #4058
    • [client] Set actual topic name to partitioned consumer #4064
    • 🖨 ack records in datagenerator print sink #4052
    • 🔒 [security] Upgrade athenz libraries #4056
    • [python client] Handle subrecords in JsonSchema encoding #4023
    • [Issue 3987][pulsar-broker]Handle config is null when create tenant #4019
    • ➕ Add bookkeeper client version constraint #4013
    • 👌 Improve error handling for triggering function when there is a schema mismatch #3995
    • 🌲 [pulsar-broker] add producer/consumer id in error-logging #3961
  • v2.3.2-candidate

    May 21, 2019