Skip to content

Conversation

@michaeljmarshall
Copy link
Member

This reverts commit 62e2547.

Motivation

The motivation for #12615 relies on an incorrect understanding of Netty's threading model. The ctx.executor() is the context's event loop thread that is the same thread used to process messages. The waitingForPingResponse variable is only ever updated/read from the context's event loop, so there is no need to make the variable volatile.

Modifications

  • Remove volatile keyword for waitingForPingResponse

Verifying this change

Read through all references to the variable.

Documentation

  • doc-not-needed

Matching PR in forked repository

PR in forked repository: Skipping for this trivial PR.

@michaeljmarshall michaeljmarshall merged commit fb28d83 into apache:master Feb 8, 2023
@michaeljmarshall michaeljmarshall deleted the remove-unnecessary-volatile branch February 8, 2023 22:00
michaeljmarshall added a commit that referenced this pull request Feb 8, 2023
…2615)" (#19439)

This reverts commit 62e2547.

### Motivation

The motivation for #12615 relies on an incorrect understanding of Netty's threading model. The `ctx.executor()` is the context's event loop thread that is the same thread used to process messages. The `waitingForPingResponse` variable is only ever updated/read from the context's event loop, so there is no need to make the variable `volatile`.

### Modifications

* Remove `volatile` keyword for `waitingForPingResponse`

### Verifying this change

Read through all references to the variable.

### Documentation

- [x] `doc-not-needed`

### Matching PR in forked repository

PR in forked repository: Skipping for this trivial PR.

(cherry picked from commit fb28d83)
michaeljmarshall added a commit that referenced this pull request Feb 8, 2023
…2615)" (#19439)

This reverts commit 62e2547.

### Motivation

The motivation for #12615 relies on an incorrect understanding of Netty's threading model. The `ctx.executor()` is the context's event loop thread that is the same thread used to process messages. The `waitingForPingResponse` variable is only ever updated/read from the context's event loop, so there is no need to make the variable `volatile`.

### Modifications

* Remove `volatile` keyword for `waitingForPingResponse`

### Verifying this change

Read through all references to the variable.

### Documentation

- [x] `doc-not-needed`

### Matching PR in forked repository

PR in forked repository: Skipping for this trivial PR.

(cherry picked from commit fb28d83)
michaeljmarshall added a commit that referenced this pull request Feb 8, 2023
…2615)" (#19439)

This reverts commit 62e2547.

### Motivation

The motivation for #12615 relies on an incorrect understanding of Netty's threading model. The `ctx.executor()` is the context's event loop thread that is the same thread used to process messages. The `waitingForPingResponse` variable is only ever updated/read from the context's event loop, so there is no need to make the variable `volatile`.

### Modifications

* Remove `volatile` keyword for `waitingForPingResponse`

### Verifying this change

Read through all references to the variable.

### Documentation

- [x] `doc-not-needed`

### Matching PR in forked repository

PR in forked repository: Skipping for this trivial PR.

(cherry picked from commit fb28d83)
nicoloboschi pushed a commit to datastax/pulsar that referenced this pull request Feb 28, 2023
…ache#12615)" (apache#19439)

This reverts commit 62e2547.

### Motivation

The motivation for apache#12615 relies on an incorrect understanding of Netty's threading model. The `ctx.executor()` is the context's event loop thread that is the same thread used to process messages. The `waitingForPingResponse` variable is only ever updated/read from the context's event loop, so there is no need to make the variable `volatile`.

### Modifications

* Remove `volatile` keyword for `waitingForPingResponse`

### Verifying this change

Read through all references to the variable.

### Documentation

- [x] `doc-not-needed`

### Matching PR in forked repository

PR in forked repository: Skipping for this trivial PR.

(cherry picked from commit fb28d83)
(cherry picked from commit f6da22b)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants