1.18. 0.9.x分支

1.18.1. 升级说明

1.18.1.1. 对批量创建/更新的响应

对批量创建/更新的响应如下所示

[
    {"id": "0", "rev": "3682408536"},
    {"id": "1", "rev": "3206753266"},
    {"id": "2", "error": "conflict", "reason": "Document update conflict."}
]

1.18.1.2. 数据库文件格式

数据库文件格式已更改。CouchDB本身还没有提供任何迁移数据的工具。同时,您可以使用第三方脚本来处理迁移,例如开发版本(trunk)附带的转储/加载工具 couchdb-python .

1.18.1.3. 将“count”重命名为“limit”

视图查询API已更改: count 已成为 limit . 这对参数的作用有更好的描述,并且应该是任何客户端代码中的一个简单更新。

1.18.1.4. 移动的视图URL

视图URL已移动到设计文档资源。这意味着以前的路径是:

http://hostname:5984/mydb/_view/designname/viewname?limit=10

现在看起来像:

http://hostname:5984/mydb/_design/designname/_view/viewname?limit=10.

REST, Hypermedia, and CouchApps 有关详细信息,请参阅dev。

1.18.1.5. 附件

附件名称不再允许以下划线开头。

1.18.1.6. 错误代码

对错误处理做了一些改进。对于无效的查询参数,CouchDB将发送400而不是500。最值得注意的是,文档更新冲突现在用 409 Conflict 而不是 412 Precondition Failed . 尝试创建已存在的数据库时的错误代码现在是412而不是409。

1.18.1.7. ini文件格式

couchdb0.9更改配置文件中的节和配置变量名。旧的.ini文件不起作用。还请注意,CouchDB现在附带了两个.ini文件,其中0.8使用了这个文件沙发.ini现在有 default.inilocal.ini . default.ini 包含CouchDB的标准配置值。本地.ini是为了局部变化。 local.ini 不会覆盖CouchDB更新,因此您的编辑是安全的。此外,新的运行时配置系统将对中配置的更改持久化 local.ini .

1.18.2. 版本0.9.2

1.18.2.1. 构建和系统集成

  • 删除分支回调以允许针对更新版本的Spidermonkey生成couchjs。

1.18.2.2. 复制

  • 修复由0.9服务器启动的0.10服务器的复制 (COUCHDB-559

1.18.3. 0.9.1版

1.18.3.1. 构建和系统集成

  • PID文件目录现在由SysV/BSD守护程序脚本创建。
  • 修复了配置脚本显示的环境变量。
  • 修复了配置脚本显示的生成指令。
  • 更新中的所有权和权限建议 README 为了更好的安全。

1.18.3.2. 配置和统计系统

  • 已更正丢失的配置文件错误消息。
  • 修正了请求时间的错误记录。

1.18.3.3. 数据库核心

  • 带下划线前缀变量的文档验证。
  • 减少了附件存储的稀疏性。
  • 修正了当延迟提交挂起的数据库被视为空闲,并且在关闭时可能丢失更改时出现的问题。 (COUCHDB-334

1.18.3.4. 外部处理程序

  • 修复POST请求。

1.18.3.5. 蒲团

  • 从cookie加载已删除的视图URI时重定向。

1.18.3.6. HTTP接口

  • 附件请求遵循“rev”查询字符串参数。

1.18.3.7. JavaScript视图服务器

  • 有用的JavaScript错误消息。

1.18.3.8. 复制

  • 增加了对作为UTF-16代理项对传输的Unicode字符的支持。
  • 必要时对附件名称进行URL编码。
  • 拉出附件的特定修订,而不仅仅是最新的修订。
  • 解决ibrowse中一个罕见的块合并问题。
  • 使用基本多语言平面外包含Unicode字符的文档。

1.18.4. 版本0.9.0

1.18.4.1. 构建和系统集成

  • 这个 couchdb 脚本现在支持系统可链接的配置文件。
  • macosx守护进程脚本现在像SysV/BSD那样重定向STDOUT和STDERR。
  • 为了便于移植,构建和系统集成得到了改进。
  • 向etc/default/COUCHDB文件添加了COUCHDB_选项。
  • 从etc/default/COUCHDB文件中删除COUCHDB_INI_文件和COUCHDB_PID_文件。
  • 更新的 configure.ac 手动链接 libm 便于携带。
  • 更新的 configure.ac 扩展默认库路径。
  • 已删除inets配置文件。
  • 添加了命令行测试运行程序。
  • 已为make创建开发目标。

1.18.4.2. 配置和统计系统

  • 分开默认和本地配置文件。
  • 用于配置更改的HTTP接口。
  • 具有HTTP查询API的统计框架。

1.18.4.3. 数据库核心

  • 更快的B树实现。
  • 已更改内部JSON术语格式。
  • 对重载下Erlang-VM交互的改进。
  • 用户上下文和管理员角色。
  • 使用设计文档验证功能更新验证。
  • 文档清除功能。
  • 数据库文件句柄的引用计数。

1.18.4.4. 设计文档资源路径

  • 添加了httpd_design_handlers config部分。
  • 已将视图移到httpd_design_处理程序。
  • 添加了将文档呈现为非JSON内容类型的功能,这些函数也是httpd_design_处理程序。

1.18.4.5. Futon实用程序客户端

  • 向数据库列表页添加了分页。
  • 实现了从文档页面上传附件。
  • 添加了显示当前配置并允许修改选项值的页面。
  • 为文档显示添加了一个JSON“源视图”。
  • 视图行中的JSON数据现在语法突出显示。
  • 为了更好地与浏览器历史记录和书签集成,删除了iframe的使用。
  • 侧栏中的完整数据库列表已被最新数据库的简短列表所取代。
  • 如果配置了多个视图语言,视图编辑器现在允许选择视图语言。
  • 添加了指向原始视图或文档URI的链接。
  • 添加了状态页以显示CouchDB中当前正在运行的任务。
  • JavaScript测试套件分成多个文件。
  • reduce视图的分页。

1.18.4.6. HTTP接口

  • 添加了用于创建幂等文档的客户端uuid
  • 文档的HTTP副本
  • 将分块附件流式传输到磁盘
  • 删除负计数功能
  • 为视图查询添加includeu docs选项
  • 为视图添加多键查看帖子
  • 查询参数验证
  • 使用stale=ok请求可能缓存的视图索引
  • 用于全文索引器或其他索引器的外部查询处理程序模块。
  • 附件、视图、显示和列表的ETag
  • 显示和列出用于将文档和视图呈现为开发人员控制的内容类型的函数。
  • 附件名称可以使用斜杠来允许上传嵌套目录(对于静态web宿主很有用)。
  • 用于在设计文档上覆盖视图的选项。
  • 为JSON响应添加了新行。关闭车棚。

1.18.4.7. 复制

  • 使用ibrowse。
  • 检查点复制,因此故障成本更低。
  • 自动重试失败的复制。
  • 拉式复制中的流附件。