Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[JUJU-381] Fix test race in RaftLeaseRemoteSuite.TestSetAddress #13587

Merged
merged 1 commit into from Jan 5, 2022

Conversation

manadart
Copy link
Member

@manadart manadart commented Jan 5, 2022

Fixes a testing race in github.com/juju/juju/api/raftlease.(*RaftLeaseRemoteSuite).TestSetAddress().

See: https://jenkins.juju.canonical.com/job/Unit-RunUnitTests-race-amd64/1050

The logic copies a reference under lock protection and uses it outside of the lock. To fix this we copy the value into a new reference that does not need lock protection.

QA steps

Run RaftLeaseRemoteSuite.TestSetAddress in a loop with the -race flag.

Documentation changes

None.

Bug reference

N/A

to avoid testing races in the raftlease client tests.
@manadart manadart force-pushed the 2.9-raflease-client-test-race branch from c50faf1 to 471522c Compare January 5, 2022 09:07
@manadart manadart changed the title Fix test race in RaftLeaseRemoteSuite.TestSetAddress [JUJU-381] Fix test race in RaftLeaseRemoteSuite.TestSetAddress Jan 5, 2022
@manadart
Copy link
Member Author

manadart commented Jan 5, 2022

$$merge$$

@jujubot jujubot merged commit f793468 into juju:2.9 Jan 5, 2022
@manadart manadart deleted the 2.9-raflease-client-test-race branch January 5, 2022 10:35
@wallyworld wallyworld mentioned this pull request Jan 12, 2022
jujubot added a commit that referenced this pull request Jan 13, 2022
#13607

Merge 2.9. 
2.9 was updated to use juju-db 4.4 - here we change that to 5.0

#13587 [JUJU-381] Fix test race in RaftLeaseRemoteSuite.TestSetAddress
#13588 [JUJU-349] Remove stub sentence from add-machine helper
#13570 [JUJU-256] MVP verify app health after controller/model upgrade
#13566 [JUJU-338] Drop miscellaneous NewProviderAddress constructors in favour of a functional approach
#13589 Update to latest version of Pebble
#13591 [JUJU-388] Ensure 'hostname -f' returns juju-assigned hostname on equinix metal
#13592 Remove the format2 test charm
#13593 The interactive version command doesn't need a controller
#13590 [JUJU-403] Remove txn watcher wrench
#13594 [JUJU-335] Expand functionality of ProviderAddress
#13601 [JUJU-402] Unit machine test fixes for fire-walled env (s390x)
#13603 [JUJU-412] Fix racy tests for the CAAS firewaller worker
#13604 [JUJU-413] Test Raft queue immediate dispatch instead of 1 batch per operation
#13602 [JUJU-106] Add support for mgo scram-sha256 auth; default to mongo 4.4 on bootstrap
#13599 [JUJU-396] juju info/find/download run without a controller
#13606 [JUJU-418] Fix some intermittent unit test failures
#13600 [JUJU-380] Shutdown application worker properly

Conflicts were in snap version change, imports, and removed code.
```
# Conflicts:
# agent/agent_test.go
# api/charmhub/client_test.go
# api/charmhub/data.go
# caas/kubernetes/provider/bootstrap_test.go
# cmd/juju/charmhub/data.go
# cmd/juju/charmhub/download.go
# cmd/juju/charmhub/download_test.go
# cmd/juju/charmhub/find.go
# cmd/juju/charmhub/find_test.go
# cmd/juju/charmhub/info.go
# cmd/juju/charmhub/info_test.go
# cmd/juju/charmhub/mocks/api_mock.go
# mongo/mongodfinder_test.go
# provider/maas/interfaces.go
# provider/maas/interfaces_test.go
# service/snap/snap_test.go
```
## QA steps

See PRs

[JUJU-381]: https://warthogs.atlassian.net/browse/JUJU-381?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-349]: https://warthogs.atlassian.net/browse/JUJU-349?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-256]: https://warthogs.atlassian.net/browse/JUJU-256?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-338]: https://warthogs.atlassian.net/browse/JUJU-338?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-403]: https://warthogs.atlassian.net/browse/JUJU-403?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-335]: https://warthogs.atlassian.net/browse/JUJU-335?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-402]: https://warthogs.atlassian.net/browse/JUJU-402?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-412]: https://warthogs.atlassian.net/browse/JUJU-412?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-413]: https://warthogs.atlassian.net/browse/JUJU-413?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-106]: https://warthogs.atlassian.net/browse/JUJU-106?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
[JUJU-396]: https://warthogs.atlassian.net/browse/JUJU-396?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ

[JUJU-388]: https://warthogs.atlassian.net/browse/JUJU-388?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants