Gregory Thiemonge 231398ca5f Fix race condition in members batch update API call
Fix a potential race condition, the member batch update API call
computes a delta between the current state of the members in the DB and
the members in the requests. But it fetches the members from the DB
before locking the load balancer, it means that another Octavia service
may still update the list of members, then the computation of the
changes may be incorrect.

The list of members is now queried in the locked section.

Closes-Bug: #2036156
Change-Id: I453ff385620f488a3e43d4fda01634cdce3be5d4
(cherry picked from commit 8a47577b7668e6dc82e048d937d1344c667e5124)
(cherry picked from commit 8a5bed4cebd70c1c721a3916dc79f2b19343e445)
(cherry picked from commit 64d9bdb97556652aa05a34276778260b541ad9c6)
(cherry picked from commit 4c97b585ce6e519a5ff090c2cd97fab0e801be0c)
2023-09-25 14:06:57 +02:00
2022-02-03 06:59:28 +01:00
2022-09-29 11:06:11 +02:00
2022-03-10 08:04:10 +00:00
2022-06-08 15:27:19 +00:00
2019-09-19 13:12:37 -07:00
2017-03-02 11:50:57 +00:00
2021-01-14 15:55:35 -05:00

Team and repository tags

image

Octavia

Latest Version

Octavia is an operator-grade open source scalable load balancer for use in large OpenStack deployments.

Octavia provides the load balancing API for OpenStack. It supports multiple "provider drivers" that implement load balancing, including the "amphora" reference driver included with Octavia.

Octavia is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.

Project resources

Developer documentation for the Octavia project is available at https://docs.openstack.org/octavia/latest/

Release notes for the Octavia project are available at https://docs.openstack.org/releasenotes/octavia/

The project source code repository is located at https://opendev.org/openstack/octavia

Project status, bugs, and requests for feature enhancements are tracked on https://storyboard.openstack.org/#!/project/openstack/octavia

For more information on project direction and guiding principles for contributors, please see the CONSTITUTION.rst file in this directory, or specifications in the specs/ sub-directory.

The project roadmap is available at https://wiki.openstack.org/wiki/Octavia/Roadmap

External Resources

Description
Load Balancing as a Service (LBaaS) for OpenStack
Readme 97 MiB
Languages
Python 97.5%
Shell 1.9%
Jinja 0.6%