E.302. 版本 6.2
发布日期: 1997-10-02
希望从以前版本的 PostgreSQL 升级到此版本的用户需要对数据库做一转储/恢复的工作。
E.302.1. 从版本 6.1 迁移到版本 6.2
这种迁移需要对6.1的数据库进行一次完全的转储,然后再恢复到6.2的数据库里面。
请注意,6.2 的pg_dump 和 pg_dumpall 工具应该用来转储 6.1 数据库。
E.302.2. 从版本 1.x 迁移到版本 6.2
任何从早于 1.* 版本的升级都要首先升级到 1.09, 因为在 1.02 版本中对 COPY 的输出格式进行了改进。
E.302.3. 修改列表
Bug 修复 --------- 修复 pg_dump 继承、序列、归档表的问题 (Bruc++e) 修复由于 Solaris 中转换、无符号和坏的原型引起的溢出导致的编译错误 (Diab Jerius) 修复几何线算法的 bug (损坏的交叉计算) (Thomas) 检查在端点处的几何交叉以避免圆整 (Thomas) 捕捉非功能性的删除尝试 (Vadim) 更改时间函数名使其更一致 (Michael Reifenberg) 检查零分 (Michael Reifenberg) 检查一个命令对其本身可见的行更改/插入(这样我们有多个更新行的更新,等)的非常老旧的bug (Vadim) 修复 SELECT null, 'fail' FROM pg_am (Patrick) SELECT NULL as EMPTY_FIELD 现在被允许了 (Patrick) 从 contrib/pginterface 中删除不需要的信号的东西 修复了 OR (where x != 1 or x isnull didn't return rows with x NULL) (Vadim) 修复了 time_cmp 函数 (Vadim) 修复了在 WHERE 子句中处理带有非属性第一参数的函数 (Vadim) 修复了记录的顺序和目标列表的顺序不同时的 GROUP BY (Vadim) 修复了不带有 sfunc1 的聚合的 pg_dump (Vadim) 增强 ------------ 默认遗传优化器 GEQO 参数现在是 8 个 (Bruce) 允许在函数中的有聚合的目标列表中使用参数 (Vadim) 添加 JDBC 驱动器作为一个接口 (Adrian & Peter) pg_password 工具 返回 INSERT/UPDATE/DELETE 等 inserted/affected 的行数 (Vadim) 触发器由 CREATE TRIGGER 实现 (SQL3)(Vadim) SPI (Server Programming Interface) 允许查询在 C 函数内部执行 (Vadim) 实现了 NOT NULL (SQL92)(Robson Paniago de Miranda) 为字符串处理、外连接和联合包括保留字 (Thomas) 使用唯一状态实现了扩展的注释 ("/* ... */") (Thomas) 添加 "//" 单行注释 (Bruce) 删除操作符名字里的一些字符上的限制 (Thomas) 实现了表的 DEFAULT 和 CONSTRAINT (SQL92)(Thomas) 添加文本串联操作符和函数 (SQL92)(Thomas) 支持 WITH TIME ZONE 语法 (SQL92)(Thomas) 支持 INTERVAL unit TO unit 语法 (SQL92)(Thomas) 定义类型 DOUBLE PRECISION, INTERVAL, CHARACTER, 和 CHARACTER VARYING (SQL92)(Thomas) 定义类型 FLOAT(p) 和基本的 DECIMAL(p,s), NUMERIC(p,s) (SQL92)(Thomas) 定义 EXTRACT(), POSITION(), SUBSTRING(), 和 TRIM() (SQL92)(Thomas) 定义 CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP (SQL92)(Thomas) 为 UNION, HAVING, INNER 和 OUTER JOIN 添加语法和警告 (SQL92)(Thomas) 添加更多保留字,大部分是 SQL92 兼容的 (Thomas) 允许 timespan/reltime 类型的 hh:mm:ss 时间选项 (Thomas) 为 lseg, path, polygon 添加 center() 例程 (Thomas) 为 circle-polygon, polygon-polygon 添加 distance() 例程 (Thomas) 明确的检查使用轴线交叉算法的多边形包含的点和多边形 (Thomas) 添加转换 circle-box 的例程 (Thomas) 合并不同几何数据类型冲突的操作符 (Thomas) 用 "<->" 替换距离操作符 "<===>" (Thomas) 用">^" 替换 "above" 操作符 "!^" 和用 "<^" 替换 "below" 操作符 "!|" (Thomas) 为文本在两端截取、子字符串和字符串位置添加例程 (Thomas) 添加转换程序 circle(box) 和 poly(circle) (Thomas) 允许以内存而不是文件排序的内部排序 (Bruce & Vadim) 允许在内部同一类型上的函数和操作符成功 (Bruce) 加速剖像分析之后的后端启动 (Bruce) 为了性能内联频繁的调用函数 (Bruce) 减少 open() 调用 (Bruce) psql: 添加 PAGER 为了 \h 和 \?,\C 修复 修复没有 tty 时的 psql pager (Bruce) 新增 entab 工具 (Bruce) 为参照完整性添加一般触发器函数 (Vadim) 为时间间隔添加一般触发器函数 (Vadim) 为 AUTOINCREMENT/IDENTITY 特性添加一般触发器函数 (Vadim) MOVE 实现 (Vadim) 源代码树的变化 ------------------- HP-UX 10 补丁 (Vladimir Turin) 添加 SCO 支持 (Daniel Harris) MkLinux 补丁 (Tatsuo Ishii) 更改几何盒子术语从 "length" 到 "width" (Thomas) 反对几何学代码中临时的未存储的斜率字段 (Thomas) 从 INSTALL 中删除重启指令 (Bruce) 安装时首先查看 /usr/ucb (Bruce) 修复 c++ 拷贝示例代码 (Thomas) 添加 -o 到 psql 手册页 (Bruce) 阻止未分配字符串长度的真实名被拷贝到数据库 (Bruce) 清理 NAMEDATALEN 的使用 (Bruce) 修复在输出中超过 15 个字符的 pg_proc 名 (Bruce) 添加 strNcpy() 函数 (Bruce) 删除一些不需要的 (void) 转换 (Bruce) 新增接口路径 (Marc) 用到 fd.c 函数的调用替换 fopen() 调用 (Bruce) 尽可能使函数静态 (Bruce) 将不适用的函数放在 #ifdef NOT_USED 中 (Bruce) 删除时间戳支持中对 difftime() 的调用以修复 SunOS (Bruce & Thomas) 修改 Digital Unix pg_dumpall 的可移植性修复 (Bruce) 重命名 pg_attribute.attnvals 为 attdispersion (Bruce) "intro/unix" 手册页现在是 "pgintro" (Bruce) "built-in" 手册页现在是 "pgbuiltin"(Bruce) "drop" 手册页现在是 "drop_table"(Bruce) 添加 "create_trigger", "drop_trigger" 手册页 (Thomas) 添加约束回归测试 (Vadim & Thomas) 添加注释语法回归测试 (Thomas) 添加 PGINDENT 并支持编程 (Bruce) 大量的提交在所有的 *.c 和 *.h 文件上运行 PGINDENT (Bruce) 文件移动到了 /src/tools 目录 (Bruce) SPI 和触发器编程指南 (Vadim & D'Arcy)