This is an automated email from the ASF dual-hosted git repository.

technoboy pushed a commit to branch doc_release_3.1.0
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git

commit 8ef4daf213ce0955ddc4e53a042d518de2ccd47d
Author: Jiwe Guo <[email protected]>
AuthorDate: Tue Aug 8 12:23:31 2023 +0800

    Update pulsar-3.1.0 release note
---
 data/release-java.js                         |   1 +
 data/release-pulsar.js                       |   9 +
 release-notes/versioned/client-java-3.1.0.md |  19 ++
 release-notes/versioned/pulsar-3.1.0.md      | 282 +++++++++++++++++++++++++++
 4 files changed, 311 insertions(+)

diff --git a/data/release-java.js b/data/release-java.js
index cf4f8f8e7e7..730e7d77b7c 100644
--- a/data/release-java.js
+++ b/data/release-java.js
@@ -1,4 +1,5 @@
 module.exports = [
+{tagName: 
"v3.1.0",vtag:"3.1.x",releaseNotes:"/release-notes/versioned/client-java-3.1.0/",doc:"/docs/3.1.x/client-libraries-java",version:"v3.1.x"},
 {tagName: 
"v3.0.0",vtag:"3.0.x",releaseNotes:"/release-notes/versioned/client-java-3.0.0/",doc:"/docs/3.0.x/client-libraries-java",version:"v3.0.x"},
 {tagName: 
"v2.11.2",vtag:"2.11.x",releaseNotes:"/release-notes/versioned/client-java-2.11.2/",doc:"/docs/2.11.x/client-libraries-java",version:"v2.11.x"},
 {tagName: 
"v2.11.1",vtag:"2.11.x",releaseNotes:"/release-notes/versioned/client-java-2.11.1/",doc:"/docs/2.11.x/client-libraries-java",version:"v2.11.x"},
diff --git a/data/release-pulsar.js b/data/release-pulsar.js
index b70d96af103..9fa84cf22f2 100644
--- a/data/release-pulsar.js
+++ b/data/release-pulsar.js
@@ -1,4 +1,13 @@
 module.exports = [
+    {
+        "author": "Technoboy-",
+        "tagName": "v3.1.0",
+        "publishedAt": "2023-08-10T16:37:40Z",
+        "vtag": "3.1.x",
+        "releaseNotes": "/release-notes/versioned/pulsar-3.1.0/",
+        "doc": "/docs/3.1.x",
+        "version": "v3.1.x"
+    },
     {
         "author": "RobertIndie",
         "tagName": "v3.0.0",
diff --git a/release-notes/versioned/client-java-3.1.0.md 
b/release-notes/versioned/client-java-3.1.0.md
new file mode 100644
index 00000000000..0402f4c3d54
--- /dev/null
+++ b/release-notes/versioned/client-java-3.1.0.md
@@ -0,0 +1,19 @@
+---
+id: client-java-3.1.0
+title: Client Java 3.1.0
+sidebar_label: Client Java 3.1.0
+---
+
+- Disable polling pattern topics when TopicListWatcher is enabled. 
[#20779](https://github.com/apache/pulsar/pull/20779)
+- fix negative message re-delivery twice issue 
[#20750](https://github.com/apache/pulsar/pull/20750)
+- Fix subscribing pattern topics through Proxy not working 
[#20739](https://github.com/apache/pulsar/pull/20739)
+- Messages lost when consumer reconnect 
[#20695](https://github.com/apache/pulsar/pull/20695)
+- Fix deadlock issue of consumer while using multiple IO threads 
[#20669](https://github.com/apache/pulsar/pull/20669)
+- Make the whole grabCnx() progress atomic 
[#20595](https://github.com/apache/pulsar/pull/20595)
+- Swallow Conscrypt ClassNotFoundException 
[#20371](https://github.com/apache/pulsar/pull/20371)
+- thread-safe seek [#20321](https://github.com/apache/pulsar/pull/20321)
+- Document Java Client's Seek logic thread-safety improved in 20242 
[#20284](https://github.com/apache/pulsar/pull/20284)
+- Fix where the function getMsgNumInReceiverQueue always returns 0 when using 
message listener [#20245](https://github.com/apache/pulsar/pull/20245)
+- Java Client's Seek Logic Not Threadsafe 1 
[#20242](https://github.com/apache/pulsar/pull/20242)
+- SchemaDefinition handle JSR310_CONVERSION_ENABLED property 
[#20201](https://github.com/apache/pulsar/pull/20201)
+- Enable custom Encrypt/Decrypt Methods for ReaderImplementation. 
[#12599](https://github.com/apache/pulsar/pull/12599)
diff --git a/release-notes/versioned/pulsar-3.1.0.md 
b/release-notes/versioned/pulsar-3.1.0.md
new file mode 100644
index 00000000000..587c678cafe
--- /dev/null
+++ b/release-notes/versioned/pulsar-3.1.0.md
@@ -0,0 +1,282 @@
+---
+id: pulsar-3.1.0
+title: Apache Pulsar 3.1.0
+sidebar_label: Apache Pulsar 3.1.0
+---
+
+#### 2023-08-10
+
+### Important notice
+-
+
+### PIPs
+- PIP-275:Introduce topicOrderedExecutorThreadNum to deprecate 
numWorkerThreadsForNonPersistentTopic 
[#20504](https://github.com/apache/pulsar/pull/20504)
+- PIP-255 Part-2: Make the partition assignment strategy pluggable 
[#20537](https://github.com/apache/pulsar/pull/20537)
+
+### Broker
+- Fix MessageDeduplication throw NPE when enable broker dedup and set 
namespace disable deduplication. 
[#20905](https://github.com/apache/pulsar/pull/20905)
+- In replication scenario, remote consumer could not be registered if there 
has no message was sent [#20888](https://github.com/apache/pulsar/pull/20888)
+- Fix IndexOutOfBoundsException in the CompactedTopicUtils 
[#20887](https://github.com/apache/pulsar/pull/20887)
+- Add annotation for topic compaction strategy 
[#20858](https://github.com/apache/pulsar/pull/20858)
+- Fix inconsensus namespace policies by `getPoliciesIfCached` 
[#20855](https://github.com/apache/pulsar/pull/20855)
+- Pass `bytesToRead` when reading compacted entries 
[#20850](https://github.com/apache/pulsar/pull/20850)
+- Fix the built-in admin failed to delete a topic with a custom authz provider 
[#20848](https://github.com/apache/pulsar/pull/20848)
+- Avoid print redirect exception log when get list from bundle 
[#20846](https://github.com/apache/pulsar/pull/20846)
+- Inconsistent behaviour for topic auto_creation 
[#20843](https://github.com/apache/pulsar/pull/20843)
+- Follow up 4196 use `PulsarByteBufAllocator` handle OOM 
[#20837](https://github.com/apache/pulsar/pull/20837)
+- Add broker filter sync method back to guarantee the API compatibility 
[#20826](https://github.com/apache/pulsar/pull/20826)
+- Fix direct memory leak by delayed index OutOfDirectMemory 
[#20823](https://github.com/apache/pulsar/pull/20823)
+- Avoid infinite bundle unloading 
[#20822](https://github.com/apache/pulsar/pull/20822)
+- Add the MessageExpirer interface to make code clear 
[#20800](https://github.com/apache/pulsar/pull/20800)
+- Broker failed to load v1 namespace resources cache 
[#20783](https://github.com/apache/pulsar/pull/20783)
+- Can not receive any messages after switch to standby cluster 
[#20767](https://github.com/apache/pulsar/pull/20767)
+- Fix get topic policies as null during clean cache 
[#20763](https://github.com/apache/pulsar/pull/20763)
+- Fix typo in ServerCnx.java 
[#20762](https://github.com/apache/pulsar/pull/20762)
+- Avoid throwing RestException in BrokerService 
[#20761](https://github.com/apache/pulsar/pull/20761)
+- Call ServerCnxcloseProducer from correct thread 
[#20747](https://github.com/apache/pulsar/pull/20747)
+- Ignore openIDTokenIssuerTrustCertsFilePath conf when blank 
[#20745](https://github.com/apache/pulsar/pull/20745)
+- Support pluggable topic compaction service - part2 
[#20718](https://github.com/apache/pulsar/pull/20718)
+- Revert "Skip loading broker interceptor when disableBrokerInterceptors is 
true 20422" [#20710](https://github.com/apache/pulsar/pull/20710)
+- Gracefully shutdown does not work with admin cli in standalone 
[#20709](https://github.com/apache/pulsar/pull/20709)
+- Improve CompactedTopicImpl lock 
[#20697](https://github.com/apache/pulsar/pull/20697)
+- Added the skipped message handler for ServiceUnitStateChannel 
[#20677](https://github.com/apache/pulsar/pull/20677)
+- Make ExtensibleLoadManagerImpl's broker filter pure async 
[#20666](https://github.com/apache/pulsar/pull/20666)
+- Add log on topic or subscription when enable rate limit. 
[#20660](https://github.com/apache/pulsar/pull/20660)
+- Make get list from bundle Admin API async 
[#20652](https://github.com/apache/pulsar/pull/20652)
+- Fix the publish latency spike from the contention of MessageDeduplication 
[#20647](https://github.com/apache/pulsar/pull/20647)
+- Support pluggable topic compaction service - part1 
[#20645](https://github.com/apache/pulsar/pull/20645)
+- Fix get owned service units NPE 
[#20625](https://github.com/apache/pulsar/pull/20625)
+- Topic policy can not be work well if replay policy message has any 
exception. [#20613](https://github.com/apache/pulsar/pull/20613)
+- Fix the publish latency spike issue with large number of producers 
[#20607](https://github.com/apache/pulsar/pull/20607)
+- AuthenticationFilter.doFilter 
[#20598](https://github.com/apache/pulsar/pull/20598)
+- Fix NPE when reset Replicator's cursor by position. 
[#20597](https://github.com/apache/pulsar/pull/20597)
+- Add consumer-id into the log when doing subscribe. 
[#20568](https://github.com/apache/pulsar/pull/20568)
+- Release orphan replicator after topic closed 
[#20567](https://github.com/apache/pulsar/pull/20567)
+- New load balancer system topic should not be auto-created now 
[#20566](https://github.com/apache/pulsar/pull/20566)
+- Remove unused cache executor in `PulsarService` 
[#20563](https://github.com/apache/pulsar/pull/20563)
+- Handle get owned namespaces admin API in ExtensibleLoadManager 
[#20552](https://github.com/apache/pulsar/pull/20552)
+- Handle heartbeat namespace in ExtensibleLoadManager 
[#20551](https://github.com/apache/pulsar/pull/20551)
+- Validate authz earlier in delete subscription logic 
[#20549](https://github.com/apache/pulsar/pull/20549)
+- Should not throw NotFoundException when metadata already exists. 
[#20539](https://github.com/apache/pulsar/pull/20539)
+- REST Client Producer fails with TLS only 
[#20535](https://github.com/apache/pulsar/pull/20535)
+- Fix redirect loop when using ExtensibleLoadManager and list in bundle admin 
API [#20528](https://github.com/apache/pulsar/pull/20528)
+- Restore solution for certain topic unloading race conditions 
[#20527](https://github.com/apache/pulsar/pull/20527)
+- Emit the namespace bundle listener event on extensible load manager 
[#20525](https://github.com/apache/pulsar/pull/20525)
+- Choose random thread for consumerFlow in 
PersistentDispatcherSingleActiveConsumer 
[#20522](https://github.com/apache/pulsar/pull/20522)
+- Disable EntryFilters for system topics 
[#20514](https://github.com/apache/pulsar/pull/20514)
+- Support get/remove permissions for AuthorizationProvider 
[#20496](https://github.com/apache/pulsar/pull/20496)
+- Improve efficiency of checking message deletion 
[#20490](https://github.com/apache/pulsar/pull/20490)
+- Reformat property in generateResponseWithEntry 
[#20481](https://github.com/apache/pulsar/pull/20481)
+- Add metric prefix for `topic_load_times` 
[#20472](https://github.com/apache/pulsar/pull/20472)
+- Fix return the earliest position when query position by timestamp. 
[#20457](https://github.com/apache/pulsar/pull/20457)
+- Support revoking permission for AuthorizationProvider 
[#20456](https://github.com/apache/pulsar/pull/20456)
+- Replace String.intern() with Guava Interner 
[#20432](https://github.com/apache/pulsar/pull/20432)
+- Remove uneffective solution for reducing GC pressure 
[#20428](https://github.com/apache/pulsar/pull/20428)
+- Skip loading broker interceptor when disableBrokerInterceptors is true 
[#20422](https://github.com/apache/pulsar/pull/20422)
+- Avoid `PersistentSubscription.expireMessages` logic check backlog twice. 
[#20416](https://github.com/apache/pulsar/pull/20416)
+- Change limitStatsLogging config default value to true 
[#20409](https://github.com/apache/pulsar/pull/20409)
+- PIP-255 Part-1: Add listener interface for namespace service 
[#20406](https://github.com/apache/pulsar/pull/20406)
+- Use immutable base cursor properties 
[#20400](https://github.com/apache/pulsar/pull/20400)
+- Fix partitioned __change_events topic is policy topic 
[#20392](https://github.com/apache/pulsar/pull/20392)
+- Do not expose bucketDelayedIndexStats 
[#20383](https://github.com/apache/pulsar/pull/20383)
+- Fix flaky test - testClusterMigrationWithReplica… 
[#20379](https://github.com/apache/pulsar/pull/20379)
+- Change some static fields referencing mutable objects to ordinary instance 
fields in BrokerService [#20372](https://github.com/apache/pulsar/pull/20372)
+- Fix pre-create non-partitioned system topics for load balance extension 
[#20370](https://github.com/apache/pulsar/pull/20370)
+- Fix memory leak when rebatchMessage 
[#20369](https://github.com/apache/pulsar/pull/20369)
+- Invalidate metadata children cache after key deleted 
[#20363](https://github.com/apache/pulsar/pull/20363)
+- Fix managedLedger.getConfig().getProperties().putAll(properties) NPE 
[#20361](https://github.com/apache/pulsar/pull/20361)
+- Update rest endpoint method names to avoid swagger conflict 
[#20359](https://github.com/apache/pulsar/pull/20359)
+- Fix broker load manager class filter NPE 
[#20350](https://github.com/apache/pulsar/pull/20350)
+- Copy BrokerEntryMetadata when rebatchMessage 
[#20337](https://github.com/apache/pulsar/pull/20337)
+- In Key_Shared mode: remove unnecessary mechanisms of message skip to avoid 
unnecessary consumption stuck 
[#20335](https://github.com/apache/pulsar/pull/20335)
+- When creating a namespace anti-affinity group with the default local 
policies, use the bundle size supplied by the user. 
[#20327](https://github.com/apache/pulsar/pull/20327)
+- Fix skip message API when hole messages exists 
[#20326](https://github.com/apache/pulsar/pull/20326)
+- Gracefully shut down load balancer extension 
[#20315](https://github.com/apache/pulsar/pull/20315)
+- Fix class name typo `PrecisPublishLimiter` to "Precise" 
[#20310](https://github.com/apache/pulsar/pull/20310)
+- Allow Access to System Topic Metadata for Reader Creation Post-Namespace 
Deletion [#20304](https://github.com/apache/pulsar/pull/20304)
+- Fix NPE cause by topic publish rate limiter. 
[#20302](https://github.com/apache/pulsar/pull/20302)
+- Remove Streaming Dispatcher Code 
[#20279](https://github.com/apache/pulsar/pull/20279)
+- Fix `UnsupportedOperationException` when update topic properties. 
[#20261](https://github.com/apache/pulsar/pull/20261)
+- Fix ledger cachemiss size metric 
[#20257](https://github.com/apache/pulsar/pull/20257)
+- Fix default bundle size used while setting bookie affinity 
[#20250](https://github.com/apache/pulsar/pull/20250)
+- Fix the behavior of delayed message in Key_Shared mode 
[#20233](https://github.com/apache/pulsar/pull/20233)
+- Fix infinite ack of Replicator after topic is closed 
[#20232](https://github.com/apache/pulsar/pull/20232)
+- Producer created by replicator is not displayed in topic stats 
[#20229](https://github.com/apache/pulsar/pull/20229)
+- Use bulk operation instead of iteration 
[#20219](https://github.com/apache/pulsar/pull/20219)
+- Fix Return value of getPartitionedStats doesn't contain subscription type 
[#20210](https://github.com/apache/pulsar/pull/20210)
+- Improve knownBrokers update in ModularLoadManagerImpl 
[#20196](https://github.com/apache/pulsar/pull/20196)
+- Skip split bundle if only one broker 
[#20190](https://github.com/apache/pulsar/pull/20190)
+- Fix deadlock of metadata store 
[#20189](https://github.com/apache/pulsar/pull/20189)
+- Fix `RoaringBitmap.contains` can't check value 65535 
[#20176](https://github.com/apache/pulsar/pull/20176)
+- Release EntryBuffer after parse proto object 
[#20170](https://github.com/apache/pulsar/pull/20170)
+- Remove useless field in the DelayedMessageIndexBucketSegment.proto 
[#20166](https://github.com/apache/pulsar/pull/20166)
+- Optimization protobuf code in the bucket delayed tracker 
[#20158](https://github.com/apache/pulsar/pull/20158)
+- Move bitmap from lastMutableBucket to ImmutableBucket 
[#20156](https://github.com/apache/pulsar/pull/20156)
+- Producer/Consumer should call allowTopicOperationAsync 
[#20142](https://github.com/apache/pulsar/pull/20142)
+- Fix entry filter feature for the non-persistent topic 
[#20141](https://github.com/apache/pulsar/pull/20141)
+- Optimize delayed metadata index bitmap 
[#20136](https://github.com/apache/pulsar/pull/20136)
+- Fast fix infinite HTTP call getSubscriptions caused by wrong topicName 
[#20131](https://github.com/apache/pulsar/pull/20131)
+- Make timer execute immediately after load index 
[#20126](https://github.com/apache/pulsar/pull/20126)
+- Cache LedgerHandle in BookkeeperBucketSnapshotStorage 
[#20117](https://github.com/apache/pulsar/pull/20117)
+- Pin AppendIndexMetadataInterceptor to field in 
`ManagedLedgerInterceptorImpl` 
[#20112](https://github.com/apache/pulsar/pull/20112)
+- Close temporary open ledger in BookkeeperBucketSnapshotStorage 
[#20111](https://github.com/apache/pulsar/pull/20111)
+- Fix use error TimeUnit to record publish latency 
[#20074](https://github.com/apache/pulsar/pull/20074)
+- Fix the reason label of authentication metrics 
[#20030](https://github.com/apache/pulsar/pull/20030)
+- Save createIfMissing in TopicLoadingContext 
[#19993](https://github.com/apache/pulsar/pull/19993)
+- Log resource usage rate of brokers that need to be offloaded in 
ThresholdShedder [#19983](https://github.com/apache/pulsar/pull/19983)
+- Fix getPartitionedStats miss subscription's messageAckRate 
[#19870](https://github.com/apache/pulsar/pull/19870)
+- Fix wrong logic of method TopicName.getPartition(int index) 
[#19841](https://github.com/apache/pulsar/pull/19841)
+- Fix `Update contains no change` error when use `--update-auth-data` flag to 
update function/sink/source 
[#19450](https://github.com/apache/pulsar/pull/19450)
+- Add `topic_load_failed` metric 
[#19236](https://github.com/apache/pulsar/pull/19236)
+- Support getStats/update partitioned topic with `-partition-` 
[#19235](https://github.com/apache/pulsar/pull/19235)
+- Do not filter system topic while shedding. 
[#18949](https://github.com/apache/pulsar/pull/18949)
+- If ledger lost, cursor mark delete position can not forward 
[#18620](https://github.com/apache/pulsar/pull/18620)
+- Do not grant permission for each partition to reduce unnecessary zk metadata 
[#18222](https://github.com/apache/pulsar/pull/18222)
+- Support cgroup v2 by using `jdk.internal.platform.Metrics` in Pulsar 
Loadbalancer [#16832](https://github.com/apache/pulsar/pull/16832)
+
+### Clients
+- Disable polling pattern topics when TopicListWatcher is enabled. 
[#20779](https://github.com/apache/pulsar/pull/20779)
+- fix negative message re-delivery twice issue 
[#20750](https://github.com/apache/pulsar/pull/20750)
+- Fix subscribing pattern topics through Proxy not working 
[#20739](https://github.com/apache/pulsar/pull/20739)
+- Messages lost when consumer reconnect 
[#20695](https://github.com/apache/pulsar/pull/20695)
+- Fix deadlock issue of consumer while using multiple IO threads 
[#20669](https://github.com/apache/pulsar/pull/20669)
+- Make the whole grabCnx() progress atomic 
[#20595](https://github.com/apache/pulsar/pull/20595)
+- Swallow Conscrypt ClassNotFoundException 
[#20371](https://github.com/apache/pulsar/pull/20371)
+- thread-safe seek [#20321](https://github.com/apache/pulsar/pull/20321)
+- Document Java Client's Seek logic thread-safety improved in 20242 
[#20284](https://github.com/apache/pulsar/pull/20284)
+- Fix where the function getMsgNumInReceiverQueue always returns 0 when using 
message listener [#20245](https://github.com/apache/pulsar/pull/20245)
+- Java Client's Seek Logic Not Threadsafe 1 
[#20242](https://github.com/apache/pulsar/pull/20242)
+- SchemaDefinition handle JSR310_CONVERSION_ENABLED property 
[#20201](https://github.com/apache/pulsar/pull/20201)
+- Enable custom Encrypt/Decrypt Methods for ReaderImplementation. 
[#12599](https://github.com/apache/pulsar/pull/12599)
+
+### Pulsar IO and Pulsar Functions
+- [IO] Not restart instance when kafka source poll exception. 
[#20795](https://github.com/apache/pulsar/pull/20795)
+- [IO] Add notifyError method on PushSource. 
[#20791](https://github.com/apache/pulsar/pull/20791)
+- [IO] elastic-search sink connector not support JSON.String schema. 
[#20741](https://github.com/apache/pulsar/pull/20741)
+- [IO] Close the kafka source connector got stuck 
[#20698](https://github.com/apache/pulsar/pull/20698)
+- [IO] Close the kafka source connector if there is uncaught exception 
[#20424](https://github.com/apache/pulsar/pull/20424)
+- [IO] add protobuf ByteString to pulsar-io jdbc core 
[#20259](https://github.com/apache/pulsar/pull/20259)
+- [IO] KCA: handle kafka sources that use commitRecord 
[#20121](https://github.com/apache/pulsar/pull/20121)
+- [IO] Fix the wrong format of the logs 
[#20907](https://github.com/apache/pulsar/pull/20907)
+- [IO] Remove useless configuration for Pulsar SQL 
[#20605](https://github.com/apache/pulsar/pull/20605)
+- [IO] Some optimized points in 9224 
[#19027](https://github.com/apache/pulsar/pull/19027)
+- [FN] Exit JVM when main thread throws exception 
[#20689](https://github.com/apache/pulsar/pull/20689)
+- [FN] TLS args admin download command use zero arity 
[#20513](https://github.com/apache/pulsar/pull/20513)
+- [FN] Optimize string concatenation in user metrics gen 
[#20499](https://github.com/apache/pulsar/pull/20499)
+- [FN] Support customizing TLS config for function download command 
[#20482](https://github.com/apache/pulsar/pull/20482)
+- [FN] enable Go function token auth and TLS 
[#20468](https://github.com/apache/pulsar/pull/20468)
+- [FN] Reset idle timer correctly 
[#20450](https://github.com/apache/pulsar/pull/20450)
+- [FN] Add stateStorageURL and pulsarWebService URL to go InstanceConfig 
[#20443](https://github.com/apache/pulsar/pull/20443)
+- [FN] Go functions must retrieve consumers by non-partitioned topic ID 
[#20413](https://github.com/apache/pulsar/pull/20413)
+- [FN] Go functions need to use static grpcPort in k8s runtime 
[#20404](https://github.com/apache/pulsar/pull/20404)
+- [FN] Correct TLS cert config translation from broker to fn worker 
[#20297](https://github.com/apache/pulsar/pull/20297)
+- [FN] JavaInstanceStarter --tls_allow_insecure default to false 
[#20267](https://github.com/apache/pulsar/pull/20267)
+- [FN] Allow unknown fields in connectors config 
[#20116](https://github.com/apache/pulsar/pull/20116)
+- [FN] Use functions classloader in TopicSchema.newSchemaInstance() to fix 
ClassNotFoundException when using custom SerDe classes. (targeted for master) 
[#20115](https://github.com/apache/pulsar/pull/20115)
+- [FN] Upgrade Kotlin version from 1.4.32 to 1.8.20. (targeted for master) 
[#20114](https://github.com/apache/pulsar/pull/20114)
+- [FN] Check user metric len before iterating 
[#20021](https://github.com/apache/pulsar/pull/20021)
+- [FN] Support multiple input topics for Go runtime 
[#20000](https://github.com/apache/pulsar/pull/20000)
+- [FN] Make pulsar-admin support update py/go with package url 
[#19897](https://github.com/apache/pulsar/pull/19897)
+- [FN] Fix JavaInstanceStarter inferring type class name error 
[#19896](https://github.com/apache/pulsar/pull/19896)
+- [FN] Fix function update error 
[#19895](https://github.com/apache/pulsar/pull/19895)
+- [FN] Make KubernetesRuntime translate characters in function tenant, 
namespace, and name during function removal to avoid label errors 
[#19584](https://github.com/apache/pulsar/pull/19584)
+
+
+### Observability
+- [Metrics] Add JVM start time metric 
[#20381](https://github.com/apache/pulsar/pull/20381)
+- [Metrics] Topic with double quote breaks the prometheus format 
[#20230](https://github.com/apache/pulsar/pull/20230)
+
+
+### CLI
+- [Admin] Set ns level backlog quota does not take effect if retention exists 
[#20690](https://github.com/apache/pulsar/pull/20690)
+- [Admin] Remove duplicate topics name when `deleteNamespace` 
[#20683](https://github.com/apache/pulsar/pull/20683)
+- [Admin] Make admin.cli throw exception instead of silent catch 
[#20530](https://github.com/apache/pulsar/pull/20530)
+- [Admin] Pretty print bookies racks-placement command output 
[#20516](https://github.com/apache/pulsar/pull/20516)
+- [Admin] Make failed `bin/pulsar-admin source` command exit with code `1 
(failed)` instead of `0 (success)` 
[#20503](https://github.com/apache/pulsar/pull/20503)
+- [Admin] Using AuthorizationService to revoke the permissions. 
[#20478](https://github.com/apache/pulsar/pull/20478)
+- [Admin] Return BAD_REQUEST on cluster data is null for createCluster 
[#20346](https://github.com/apache/pulsar/pull/20346)
+- [Admin] Enhancing Transaction Buffer Stats and Introducing 
TransactionBufferInternalStats API 
[#20330](https://github.com/apache/pulsar/pull/20330)
+- [Admin] Fix examine messages if total message is zero 
[#20152](https://github.com/apache/pulsar/pull/20152)
+- [Admin] Make subscriptions on NonPersistentTopic non-durable 
[#19741](https://github.com/apache/pulsar/pull/19741)
+- [Admin] Report earliest msg in partitioned backlog 
[#19465](https://github.com/apache/pulsar/pull/19465)
+- [CLI] Fix the variable producerName of BatchMsgContainer is null 
[#20819](https://github.com/apache/pulsar/pull/20819)
+- [CLI] Fix error messages in `CmdNameSpaces` and `CmdTopics` 
[#20701](https://github.com/apache/pulsar/pull/20701)
+- [CLI] Dedicated docs tools 
[#20700](https://github.com/apache/pulsar/pull/20700)
+- [CLI] pulsar-client produce: allow to produce AVRO message from strings 
[#20654](https://github.com/apache/pulsar/pull/20654)
+- [CLI] Client: allow to specify KeyValue's schema key (Avro Key support) 
[#20447](https://github.com/apache/pulsar/pull/20447)
+- [CLI] Fulfill add-opens to function-localrunner also 
[#20417](https://github.com/apache/pulsar/pull/20417)
+- [CLI] Allow pulser-client consume create a replicated subscription 
[#20316](https://github.com/apache/pulsar/pull/20316)
+- [CLI] Add `--cleanupSubscription` to pulsar-admin 
[#20028](https://github.com/apache/pulsar/pull/20028)
+- [CLI] Fix logging noise while admin tool exit 
[#19884](https://github.com/apache/pulsar/pull/19884)
+- [CLI] PerformanceProducer do not produce expected number of messages. 
[#19775](https://github.com/apache/pulsar/pull/19775)
+- [CLI] Pulsar-perf: refactor to reduce code duplication 
[#19279](https://github.com/apache/pulsar/pull/19279)
+
+### Others
+- [TXN] Add log when can't send TcClientConnectRequest to broker. 
[#20880](https://github.com/apache/pulsar/pull/20880)
+- [TXN] Use PulsarResource check for topic existence instead of 
brokerservice.getTopic() [#20569](https://github.com/apache/pulsar/pull/20569)
+- [TXN] Unwrap the completion exception. 
[#20396](https://github.com/apache/pulsar/pull/20396)
+- [TXN] Implement compatibility for transaction buffer segmented snapshot 
feature upgrade [#20235](https://github.com/apache/pulsar/pull/20235)
+- [TXN] Fix transaction is not aborted when send or ACK failed 
[#20055](https://github.com/apache/pulsar/pull/20055)
+- [TXN] fix consumer can receive aborted txn message when readType is replay 
[#19815](https://github.com/apache/pulsar/pull/19815)
+- [ML] cleanup numManagedLedgerWorkerThreads 
[#20454](https://github.com/apache/pulsar/pull/20454)
+- [ML] Fix ledger left in OPEN state when enable 
`inactiveLedgerRollOverTimeMs` 
[#20276](https://github.com/apache/pulsar/pull/20276)
+- [ML] There are two same-named managed ledgers in the one broker 
[#18688](https://github.com/apache/pulsar/pull/18688)
+- [META] Bookie Info lost by notification race condition. 
[#20642](https://github.com/apache/pulsar/pull/20642)
+- [META] Adding the missed bookie id in the registration manager. 
[#20641](https://github.com/apache/pulsar/pull/20641)
+- [META] Upgrade to jetcd to 0.7.5 
[#20339](https://github.com/apache/pulsar/pull/20339)
+- [META] Switch to the metadata store thread after zk operation 
[#20303](https://github.com/apache/pulsar/pull/20303)
+- [META] deadlock of zkSessionWatcher when zkConnection loss 
[#20122](https://github.com/apache/pulsar/pull/20122)
+- [META] Support set metadata size threshold for compression. 
[#19561](https://github.com/apache/pulsar/pull/19561)
+- [WS] Add cryptoKeyReaderFactoryClassName into the file websocket.conf 
[#20840](https://github.com/apache/pulsar/pull/20840)
+- [WS] Remove unnecessary ping/pong implementation 
[#20733](https://github.com/apache/pulsar/pull/20733)
+- [WS] Use allowTopicOperationAsync for authz checks 
[#20299](https://github.com/apache/pulsar/pull/20299)
+- [WS] Use async auth method to support OIDC 
[#20238](https://github.com/apache/pulsar/pull/20238)
+- [MISC] Stop logging full stacktrace when 
`SecurityUtility.loadConscryptProvider()` fails to find Conscrypt with unknown 
error [#20705](https://github.com/apache/pulsar/pull/20705)
+- [MISC] Fix typo in pip template 
[#20556](https://github.com/apache/pulsar/pull/20556)
+- [MISC] Use ubuntu 22.04 for Pulsar images 
[#20475](https://github.com/apache/pulsar/pull/20475)
+- [MISC] Upgrade Netty to 4.1.93.Final 
[#20423](https://github.com/apache/pulsar/pull/20423)
+- [misc] Consolidate certs in broker (and some proxy) tests 
[#20353](https://github.com/apache/pulsar/pull/20353)
+- [MISC] Catch TimeoutException when logging about time outs 
[#20349](https://github.com/apache/pulsar/pull/20349)
+- [Schema] Only handle exception when there has 
[#20730](https://github.com/apache/pulsar/pull/20730)
+- [Schema] Add admin cli for testCompatibility 
[#19974](https://github.com/apache/pulsar/pull/19974)
+- [Build] Fix generating javadoc issue 
[#20922](https://github.com/apache/pulsar/pull/20922)
+- [build] Do not bundle swagger dependencies 
[#20687](https://github.com/apache/pulsar/pull/20687)
+- [Build] Build function-go in golang image 
[#20665](https://github.com/apache/pulsar/pull/20665)
+- [Build] Configure git-commit-id-plugin to skip git describe 
[#20550](https://github.com/apache/pulsar/pull/20550)
+- [Build] Fix the pulsar-all image may use the wrong upstream image 
[#20435](https://github.com/apache/pulsar/pull/20435)
+- [Build] Fix publish image script 
[#20305](https://github.com/apache/pulsar/pull/20305)
+- [Build] Capture local build scans on ge.apache.org to benefit from deep 
build insights [#20187](https://github.com/apache/pulsar/pull/20187)
+
+### Library updates
+- Upgrade Guava to 32.1.1 to address CVE-2023-2976 
[#20699](https://github.com/apache/pulsar/pull/20699)
+- Upgrade snappy-java to address multiple CVEs 
[#20604](https://github.com/apache/pulsar/pull/20604)
+- Upgrade Jetty to address CVEs 
[#20461](https://github.com/apache/pulsar/pull/20461)
+- Suppress etcd CVE warnings 
[#20342](https://github.com/apache/pulsar/pull/20342)
+- Upgrade PyYaml version to 6.0.1 
[#20831](https://github.com/apache/pulsar/pull/20831)
+- Upgrade jackson version to 2.15.0 for CVE-2022-1471 
[#20177](https://github.com/apache/pulsar/pull/20177)
+- Upgrade prometheus client_golang to v1.12.2 to fix CVE-2022-21698 
[#20579](https://github.com/apache/pulsar/pull/20579)
+- Upgrade Netty to 4.1.93.Final 
[#20423](https://github.com/apache/pulsar/pull/20423)
+- Upgrade to jetcd to 0.7.5 
[#20339](https://github.com/apache/pulsar/pull/20339)
+- Upgrade Kotlin version from 1.4.32 to 1.8.20. (targeted for master) 
[#20114](https://github.com/apache/pulsar/pull/20114)
+
+### Documentation
+- Correcting spelling mistakes in the pulsar-broker module 
[#20798](https://github.com/apache/pulsar/pull/20798)
+- Fix doc of admin cli create-subscription 
[#20680](https://github.com/apache/pulsar/pull/20680)
+- Change the method of generating reference docs titles. 
[#20557](https://github.com/apache/pulsar/pull/20557)
+- Improve doc for delayed message 
[#20374](https://github.com/apache/pulsar/pull/20374)
+- Correcting spelling mistakes 
[#20340](https://github.com/apache/pulsar/pull/20340)
+- Correcting spelling mistakes 
[#20329](https://github.com/apache/pulsar/pull/20329)
+- ConnectorDocGenerator support Java 9+ 
[#20100](https://github.com/apache/pulsar/pull/20100)
+- Add link to PIP proposal 
[#19911](https://github.com/apache/pulsar/pull/19911)
+
+Here are the most noteworthy changes in this release.
+
+
+
+For the complete list, including all features, enhancements, and bug fixes, 
check out the following resources.
+
+- [Documentation merged in 3.1 (pulsar-site 
repo)](https://github.com/apache/pulsar-site/pulls?q=is%3Apr+is%3Amerged+milestone%3A3.1.0+)
+
+
+> A special thanks to the following contributors (alphabetic Github IDs) who 
contributed to Pulsar 3.0.0:
+> Technoboy-, crossoverJie, lifepuzzlefun, poorbarcode, coderzc, 
liangyepianzhou, Demogorgon314, mattisonchao, BewareMyPower, yaalsn, zymap, 
lhotari, daziz, shibd, rdhabalia, eltociear, tisonkun, aloyszhang, 
michaeljmarshall, 315157973, JooHyukKim, zhanghaou, heesung-sn, codelipenghui, 
eolivelli, ethqunzhong, massakam, StevenLuMT, gaoran10, ericsyh, zuobiao-zhou, 
AnonHxy, xiaotongwang1, maanders-tibco, yuruguo, vineeth1995, flowchartsman, 
hanmz, nicoloboschi, Shawyeok, RobertIndie, nodec [...]

Reply via email to