Use "session_persistence" in data models for uniformity with API attribute
Currently API uses "session_persistence" attribute name for session
persistence while in data model the name is "sessionpersistence".
This naming difference makes things complicated and leads to errors
in case wrong attribute name usage.
For example, if we try to create a pool with defined session persistence
from_dict method of the Pool data model tries to pop "session_persistence"
from a model_dict [1]. But in reality model_dict contains "sessionpersistence"
key due to the replacement that was done in from_sqlalchemy_model method [2]
according to the db model [3]. This will later lead to errors during
refreshing of a device when pool.sessionpersistence [4] returns a dict
instead of a SessionPersistence data model.
Kept sessionpersistence attribute in Pool data model for backwards
compatibility.
Reviewed: https:/ /review. openstack. org/306998 /git.openstack. org/cgit/ openstack/ neutron- lbaas/commit/ ?id=52ad675d92d 5cae86beb5d1bd2 9d9852115fa455
Committed: https:/
Submitter: Jenkins
Branch: stable/kilo
commit 52ad675d92d5cae 86beb5d1bd29d98 52115fa455
Author: Elena Ezhova <email address hidden>
Date: Fri Jul 24 19:49:00 2015 +0300
Use "session_ persistence" in data models for uniformity with API attribute
Currently API uses "session_ persistence" attribute name for session ence".
persistence while in data model the name is "sessionpersist
This naming difference makes things complicated and leads to errors
in case wrong attribute name usage.
For example, if we try to create a pool with defined session persistence persistence" ence" _model method [2] sistence [4] returns a dict
from_dict method of the Pool data model tries to pop "session_
from a model_dict [1]. But in reality model_dict contains "sessionpersist
key due to the replacement that was done in from_sqlalchemy
according to the db model [3]. This will later lead to errors during
refreshing of a device when pool.sessionper
instead of a SessionPersistence data model.
Kept sessionpersistence attribute in Pool data model for backwards
compatibility.
[1] https:/ /github. com/openstack/ neutron- lbaas/blob/ master/ neutron_ lbaas/services/ loadbalancer/ data_models. py#L350 /github. com/openstack/ neutron- lbaas/blob/ master/ neutron_ lbaas/services/ loadbalancer/ data_models. py#L67 /github. com/openstack/ neutron- lbaas/blob/ master/ neutron_ lbaas/db/ loadbalancer/ models. py#L148 /github. com/openstack/ neutron- lbaas/blob/ master/ neutron_ lbaas/services/ loadbalancer/ drivers/ haproxy/ jinja_cfg. py#L297
[2] https:/
[3] https:/
[4] https:/
Conflicts: lbaas/drivers/ octavia/ driver. py lbaas/tests/ unit/drivers/ octavia/ test_octavia_ driver. py lbaas/tests/ unit/services/ loadbalancer/ drivers/ haproxy/ sample_ configs/ sample_ configs. py
neutron_
neutron_
neutron_
Change-Id: Ib5efac45cf19ac f0afe88a7ffa795 14dd4129ed1 eb30dd462ad590f 8d7e79e382)
Closes-Bug: #1477348
(cherry picked from commit ae4687195c41929