Skip to content

Apache Pulsar 2.7.2 release notes#10550

Merged
zymap merged 46 commits intoapache:masterfrom
eolivelli:site/releasenotes-2.7.2-fixed
May 14, 2021
Merged

Apache Pulsar 2.7.2 release notes#10550
zymap merged 46 commits intoapache:masterfrom
eolivelli:site/releasenotes-2.7.2-fixed

Conversation

@eolivelli
Copy link
Contributor

This PR supersedes #10477 as GitHub messed up with the diff

eolivelli and others added 30 commits May 4, 2021 09:08
Co-authored-by: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>
Co-authored-by: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>
Co-authored-by: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>
)

### Motivation
Forcibly deleting the namespace will leave a large number of schemas. 
Topic and namespace are deleted, leaving the schema is meaningless.
If both Topic and namespace are deleted, we cannot find the schemas that need to be deleted based on other info

### Modifications
When the namespace is forcibly deleted, the schema is also deleted
* fixed NPE from pulsar client if we attempt to close the resource when conf.getServiceUrl is blank

* removed redundant check

* catching PulsarClientException instead of Throwable

* catching PulsarClientException instead of Throwable
…che#10467)

* Fix publish callback's entry data is null during ledger rollover

* Don't call recycle() when the callback is null
Co-authored-by: linjunhua <linjh1@jiguang.cn>
…he#10460 (apache#10461)

As reported in apache#10460 (and for other purposes), it's helpful to see the context when a function crashes when trying to open its sink. This PR adds a couple of debug lines to assist in troubleshooting those cases.
)

---

Fixes apache#10332

*Motivation*

Sometimes, the superuser is not only needed the client
role but also needs some data in the authentication data
to check whether the role is the superuser.

The changed interface is introduced from apache#8560,
it's safe to change it since there is no release for that.
)

### Motivation

I temporarily fixed this problem in PR apache#10190.
Now we have found a better way, this way can avoid the seek, then avoid trigger another reconnection.
Thank you @codelipenghui  to troubleshoot this issue with me all night.

We have added a lot of log and found that this issue is caused by some race condition problems. Here is the first reason:
https://github.com/apache/pulsar/blob/f2d72c9fc13a33df584ec1bd96a4c147774b858d/pulsar-client/src/main/java/org/apache/pulsar/client/impl/ConsumerImpl.java#L1808-L1818
Now we have an acknowledgmentsGroupingTracker to filter duplicate messages, and this Tracker will be cleaned up after seek.

However, it is possible that the connection is ready and Broker has pushed message, but `acknowledgmentsGroupingTracker.flushAndClean(); ` has not been executed yet. 

Finally hasMessageAvailableAsync returns true, but the message cannot be read because it is filtered by the acknowledgmentsGroupingTracker


### Modifications
clean the tracker when connection was open

### Verifying this change
…#10457)

* PIP-45: Revalidate leader election after session is recovered

* Fixed TopicOwnerTest

* Addresses comments
Fixes apache#10472

### Motivation
GenericJsonRecord should not error out if the non-existent field is queried.

### Modifications

Added a null check and returning null if the field does not exist.

### Verifying this change

Extended one of the tests for GenericJsonRecord.
### Motivation
Topic has been deleted, and the corresponding cache and Listener should also be deleted.
Now only the value of the listeners is deleted, the key is not deleted, and the cache is not deleted  as well.

### Modifications
add clean API to clean cache and listeners

### Verifying this change
…pdated. (apache#10300) (apache#10333)

Fixes apache#10300 

### Motivation

Fix the bug that after updating the partition number of  a partitioned topic, which has topic level auth policy, new producer/consumer of this topic will get error.

### Modifications

In [`org.apache.pulsar.broker.authorization.PulsarAuthorizationProvider#checkPermission`](https://github.com/apache/pulsar/blob/889b9b8e5efc62d2d0cbc761205fba5759c97af0/pulsar-broker-common/src/main/java/org/apache/pulsar/broker/authorization/PulsarAuthorizationProvider.java#L394), if current `topicName` is a sub partition topic, also check the permissions of its partitioned topic.
### Motivation
Support listenerName for http lookup

### Modifications
Add listenerName to http API

### Verifying this change
1) test lookup
2) test redirect
* support both STS and default aws creds

* checkstyle

* use provider

* pass creds to properties

* add tests
* Update docs for Go client

Signed-off-by: xiaolongran <xiaolongran@tencent.com>

* Fix comments

Signed-off-by: xiaolongran <xiaolongran@tencent.com>

Co-authored-by: xiaolongran <xiaolongran@tencent.com>
Co-authored-by: k2la <yfuruta@yahoo-corp.jp>
* Avoid sending zero permits

* Avoid the same topic name
…che#10493)

* Add instructions to configure code style and checkstyle for IDEA in the README

* Apply suggestions from code review

Co-authored-by: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>

Co-authored-by: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>
…ema and multi versions (apache#10492)

Co-authored-by: Enrico Olivelli <eolivelli@apache.org>
* Add onFilter for Interceptor

* code style
dlg99 and others added 15 commits May 11, 2021 13:13
…pache#10446)

Fixes apache#10445

### Motivation

SinkContext should expose Subscription type to the Sink
More context: apache#9927 (comment)

Needed for apache#9927

### Modifications

Added `getSubscriptionType()` to the `SinkContext` interface and `ContextImpl`
…rService.isLeader() (apache#10502)

Fixes apache#10235

### Motivation

According to apache#10235, when `LeaderService` is changing leadership status (like losing leadership, or becoming a leader), the `LeaderService` will be locked with `synchronized` block. Which will block other threads if calling `LeaderService.isLeader()`. This PR changes `ClusterServiceCoordinator` and `WorkerStatsManager` to check if is leader from `MembershipManager`, which will not block other threads if `LeaderService` is at `synchronized` block.

Also, this PR will not resolve the root cause of apache#10235, since there is lack of context about blocked reader for the `FunctionAssignmentTailer`.
…che#10508)

### Motivation

apache#10240 has reverted the changes of the apache#9261 introduced which make the key_shared tests flaky. So it's better to move out the tests from the quarantine group.

### Modifications

Move out the key_shared related tests from the quarantine group.
Fixes a part of apache#5720 

### Motivation

add granularity in topics api authz
### Motivation
There is an `advertisedAddress` in PusarService and an `advertisedAddress` in conf. When `advertisedListener` is set, the values of the two `advertisedAddress` will be inconsistent. 
In the current code, `PusarService.getAdvertisedAddress` is used in some places, and `conf.getAdvertisedAddress` is used in other places.

### Modifications
Put this logic into the config to keep the values in all places consistent.
…er/namespace naming convention. (apache#10486)

Co-authored-by: Chris Bartholomew <c_bartholomew@yahoo.com>
apache#10140)

Co-authored-by: David Kjerrumgaard <dkjerrumgaard@splunk.com>
@eolivelli
Copy link
Contributor Author

@Anonymitaet can you please merge this page ?

As I created a new PR your previous Approval is to be confirmed here, and we have the rule that there is at least one approval on the PR

@eolivelli eolivelli self-assigned this May 12, 2021
@eolivelli eolivelli added the doc Your PR contains doc changes, no matter whether the changes are in markdown or code files. label May 12, 2021
Co-authored-by: Yong Zhang <zhangyong1025.zy@gmail.com>
@eolivelli
Copy link
Contributor Author

@zymap can you please help me merging this patch ?

@eolivelli
Copy link
Contributor Author

@Anonymitaet can you please review again ?

@zymap zymap merged commit 11dcb0d into apache:master May 14, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc Your PR contains doc changes, no matter whether the changes are in markdown or code files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.