Zed 系列发布说明¶
11.2.0¶
升级说明¶
以下辅助函数已从
oslo_db.sqlalchemy.utils模块中移除NonCommittingConnectableNonCommittingEngineNonCommittingConnectionNonCommittingTransaction
这些函数在 oslo.db 之外未被使用,并且与 SQLAlchemy 2.0 不兼容。 此外,
RollsBackTransactionfixture 也已从oslo_db.sqlalchemy.test_fixtures中移除。 同样,这些函数未被使用,并存在类似的兼容性问题。
11.0.0¶
升级说明¶
针对 DB2 数据库的特定检查已被移除。 该数据库多年来未被任何 OpenStack 项目支持。
基测试类
oslo_db.sqlalchemy.test_migrations.ModelsMigrationsSync的check_foreign_keys辅助函数已被移除。 该函数在 1.4.1 中已弃用,因为 alembic 现在支持此功能。
基测试类
oslo_db.sqlalchemy.test_migrations.ModelsMigrationsSync的_walk_versions、_migrate_down和_migrate_up方法已被移除。 这些方法在 0.5.0 中已弃用,以支持其非私有等效方法,即walk_versions、migrate_down和migrate_up。
弃用说明¶
类
oslo_db.concurrency.TpoolDbapiWrapper和支持的[database] use_tpool配置选项现已弃用。 此功能从未从实验状态毕业,由于缺乏维护和测试覆盖,预计将被移除。 用户应切换到oslo_db.api.DBAPI.from_config,并从其文档中删除对弃用配置选项的引用。
10.0.0¶
错误修复¶
移除了
[DATABASE] idle_timeout、[database] idle_timeout、[sql] idle_timeout、[DEFAULT] sql_idle_timeout和[DATABASE] sql_idle_timeout选项。 这些选项都是[database] connection_recycle_time的遗留别名。
9.1.0¶
错误修复¶
在 mysql 8.0.19 中,重复键错误信息已扩展为包含键的表名。 之前,重复键错误信息仅包含键值和键名。 这扩展了处理与较新 mysql 版本(自 8.0.19 起)的重复键错误信息变化的能力。
9.0.0¶
错误修复¶
移除了已弃用的数据库选项
sql_max_pool_size。
8.5.0¶
弃用说明¶
模块
oslo_db.sqlalchemy.migration已弃用,即将移除。 它仅支持sqlalchemy-migrate,该工具不再积极开发,并且已被alembic有效取代。 使用此模块的用户应考虑切换到alembic,或者在必要时直接使用sqlalchemy-migrate。
模块
oslo_db.sqlalchemy.migration_cli已弃用,即将移除。 它旨在为不同的迁移后端(特别是sqlalchemy-migrate和alembic)提供抽象层,但采用率有限,预计用户现在将直接使用alembic。
7.0.0¶
升级说明¶
已停止对 Python 2.7 的支持。 现在支持的 Python 的最低版本是 Python 3.6。
5.0.0¶
错误修复¶
移除了已弃用的数据库选项
min_pool_size。此选项没有效果,并且在 Rocky 版本中已弃用。有关更多信息,请参阅 bug 1764786。
4.42.0¶
新特性¶
在 enginefacade 上下文管理器和工厂对象中添加了新的
.is_started布尔标志,以便调用代码可以防止重复配置场景。 此外,在工厂启动后调用 configure 时引发的TypeError现在是一个特定的子类enginefacade.AlreadyStartedError。
4.34.0¶
新特性¶
添加了新的选项 connection_parameters,它允许将 SQLAlchemy 查询参数与 URL 分开声明,以便像 Nova cells 这样的 URL 持久化方案可以使用控制器本地查询参数,这些参数不会广播到所有其他服务器。
错误修复¶
修复了 enginefacade 的“synchronous_reader”修饰符,使其在设置为 True 时引用“writer”引擎,从而允许与 writer 的“同步”行为。当设置为 False 时,则为“异步”,因此应与异步引擎关联。此前该标志的行为相反。
4.30.0¶
弃用说明¶
PyMySQL 是 oslo.db 以及整个 OpenStack 的默认 MySQL DB API 驱动程序。 迄今为止,可以使用 MySQL-python 作为替代的 DB API 驱动程序。 此驱动程序在本版本中不再进行测试,因此应被认为不受支持。 请切换到 PyMySQL,它是一个合适的替代品。 请参阅 https://wiki.openstack.org/wiki/PyMySQL_evaluation 以获取详细信息。
4.26.0¶
弃用说明¶
配置选项
idle_timeout现在已弃用,并已重命名为connection_recycle_time,包括在主要的 oslo.db 选项中,以及在engines.create_engine()、enginefacade.configure()和enginefacade.configure_defaults()的关键字参数中。 新名称更准确地描述了此选项的作用,即它与连接本身的“空闲”时间无关,并且连接也不会在任何特定时间断开。 它指的是一条规则,即作为连接池成员存在超过 N 秒的任何连接都会在下次从池中检出时自动丢弃并替换。
4.22.0¶
升级说明¶
当连接 URL 未显式提及驱动程序时,oslo.db 现在会记录警告。 仍然使用默认驱动程序,但在某些情况下,例如 MySQL,默认驱动程序与并发库 eventlet 不兼容。
强烈建议在使用 PyMySQL 驱动程序连接到兼容 MySQL 的数据库,以确保与并发库 eventlet 的最佳兼容性。 要使用 PyMySQL,请确保将连接 URL 指定为
mysql+pymysql://作为方案。
4.19.0¶
升级说明¶
配置选项
sqlite_db已删除。 请使用配置选项connection或slave_connection连接到数据库。
4.15.0¶
弃用说明¶
来自
oslo_db.sqlalchemy.utils模块的InsertFromSelect类已被弃用,推荐使用 SQLAlchemy 1.0.0 及更高版本中 Insert 表达式的sqlalchemy.sql.expression.Insert.from_select()方法
来自
oslo_db.sqlalchemy.test_base的基础测试类已被弃用,推荐使用oslo_db.sqlalchemy.test_fixtures模块中引入的新 fixtures
4.12.0¶
错误修复¶
装饰器
oslo_db.api.wrap_db_retry现在默认重试 10 次。 之前尝试次数为 0,用户必须显式传递max_retry_interval值大于 0 才能实际启用错误重试。
4.9.0¶
升级说明¶
选项
connection_debug的允许值现在限制在 0 到 100(含)之间。 之前可以提供小于 0 或大于 100 的数字而不会出错。 但现在,当选项值超出此范围时,将引发ConfigFileValueError。
4.8.0¶
新特性¶
enginefacade 装饰器现在可用于类和实例方法,这些方法隐式接收第一个位置参数。 之前,要求所有装饰的函数都将上下文值作为第一个参数接收。
弃用说明¶
配置选项
sqlite_db现在已被弃用,将来将被删除。 请使用配置选项connection或slave_connection连接到数据库。
4.6.0¶
升级说明¶
配置选项
max_overflow的默认值已从 10 增加到 50,以便允许大量使用数据库的 OpenStack 服务更好地处理并发请求的峰值,并降低获得池超时问题的可能性。此更改可能会导致增加到 RDBMS 服务器的打开连接数。 根据配置,您可能会在 OpenStack 服务 / RDBMS 服务器的日志中看到“连接过多”错误。 可以通过以下配置选项设置最大连接限制
https://dev.mysqlserver.cn/doc/refman/5.7/en/server-system-variables.html#sysvar_max_connections https://postgresql.ac.cn/docs/current/static/runtime-config-connection.html#GUC-MAX-CONNECTIONS
有关详细信息,请参阅以下 LP
https://bugs.launchpad.net/oslo.db/+bug/1535375
和 ML 线程
http://lists.openstack.org/pipermail/openstack-dev/2015-December/082717.html
其他说明¶
引入 reno 用于部署者版本说明。