[hackers-jp: 45] [HACKERS] 7.3.5 bundled ...

井久保 寛明 ikuboh @ nttdata.co.jp
2003年 12月 9日 (火) 15:44:07 JST


井久保です。

しくみ分科会のインデックスの勉強会や、ソースコードの読み方の資料
書いていたら、こっちがすっかりお留守になってしまいました。

> Date: Wed, 3 Dec 2003 00:12:24 -0400 (AST)
> From: "Marc G. Fournier" <scrappy @ postgresql.org>
> X-X-Sender: scrappy @ ganymede.hub.org
> To: pgsql-hackers @ postgresql.org
> Subject: [HACKERS] 7.3.5 bundled ...
> Message-ID: <20031203001143.R38069 @ ganymede.hub.org>

ふと気がつくと、7.4のバックポートを入れた 7.3.5 が出ていますね。


内容が気になったので、HISTORYファイルの7.3.4からの変更部分の対訳を
作ってみました。

ちょっと気になるのが 19番目の問題程度なので、運用中のシステムで、
7.3.4 から 7.3.5 に移行する積極的な理由はなさそうですね。
コードの変更量は少なく、7.3.5 が出たばかりだからという危険性はない
感じです。

先頭に "#" がついているところは、私が勝手に解説をつけたものです。

--------------------------------------------------------------------------------
■ 7.3.5 への移行
	7.3.* からの移行に関しては、dump/restore の必要はない

--------------------------------------------------------------------------------
■ 変更点 (Changes)

1)	Force zero_damaged_pages to be on during recovery from WAL
	WAL からのリカバリ時に、強制的に zero_damaged_pages をオンにするようにした。
	# 空のページがデータページに書かれていることがあり、これがあるとリカバリ
	# 処理時にエラーになる。このエラーを無視して強制的にリカバリをかけるた
	# めには、 zero_damaged_pages をオンにする必要があった。

2)	Prevent  some  obscure  cases  of  "variable not in subplan target lists"
	サブキュエリのSELECT句に明示的に書かれていない属性名を、ある程度自動的に
	解決するようにした。
	# サブキュエリを使った際の上のキュエリとの属性名の解決の問題に対するfix

3)	Force  stats  processes  to  detach  from  shared memory, ensuring
        cleaner shutdown
	「stats process」を、共有メモリから強制的に外して、きれいにシャット
	ダウンできるようにした。
	# postmaster だけが何らかの理由で落ちて、再起動した際に、残っていた
	# stats process によって、共有メモリがうまく初期化されない問題のfix

4)	Make PQescapeBytea and byteaout consistent with each other (Joe)
	PQescapeBytea と byteaout でお互いの整合性が取れるようにした。
	# PQescapeBytea と byteaout で不整合を起こす障害の fix

5)	Added missing SPI_finish() calls to get_tuple_of_interest() (Joe)
	contrib/dblink/dblink.c の get_tuple_of_interest() 中に不足していた
	SPI_finish() を追加した。

6)	Fix  for  possible foreign key violation when rule rewrites INSERT (Jan)
	ルールでINSERTを書き換えた場合に、外部キー制約に違反する可能性があった
	問題に対する fix

7)	Support qualified type names in PL/Tcl's spi_prepare command (Jan)
?	PL/Tcl のspi_prepareコマンドで、"qualified type names"をサポートした

8)	Make pg_dump handle a procedural language handler located in pg_catalog
?	pg_dump で、pg_catalog 中に書いてある 手続き的な言語ハンドラ を扱えるよう
	にした。

9)	Make pg_dump handle cases where a custom opclass is in another schema
	別のスキーマ中に、ユーザ定義された opclass があるケースを場合も、
	pg_dump で扱えるようにした。

10)	Make pg_dump dump binary-compatible casts correctly (Jan)
	pg_dump で、binary-compatible のキャストを正しく扱えるようにした。

11)	Fix insertion of expressions containing subqueries into rule bodies
	ルールのボディ部に、サブキュエリを含む記述を入れられる問題をfixした
	# 単に書けなかったのを書けるようにした?

12)	Fix incorrect argument processing in clusterdb script (Anand Ranganathan)
	clusterdb のスクリプト中の不正な引数の処理の問題を fix した

13)	Fix problems with dropped columns in plpython triggers
	plpython のトリガからカラムをドロップした際の問題の fix

14)	Repair problems with to_char() reading past end of its input string (Karel)
	to_char() が以前に読み込みが終了した文字列を返す問題を修正した

15)	Fix GB18030 mapping errors (Tatsuo)
	GB18030 マッピングのエラーを fix した

16)	Fix  several problems with SSL error handling and asynchronous SSL I/O
	SSLのエラーハンドリングと、非同期 SSL I/O のいくつかの問題を修正した。

17)	Remove  ability  to bind a list of values to a single parameter in
	JDBC (prevents possible SQL-injection attacks)
	SQL-injection アタックを防ぐために、JDBCで1パラメータとして複数の値
	のリストを書いて接続する機能を取り除いた。

18)	Fix some errors in HAVE_INT64_TIMESTAMP code paths
	HAVE_INT64_TIMESTAMP のコードに含まれるいくつかのエラーを fix した

19)	Fix  corner case for btree search in parallel with first root page split
☆	btreeの最初のrootページが分割する際に、同時に検索が行われている場合に
	発生する問題に対する fix

--------------------------------------------------------------------------------
[7.3.4から変更があったソースコード]
ちょっと、自前のツールでdiff を取ってみました。

src/backend/access/nbtree/nbtsearch.c
src/backend/executor/spi.c
src/backend/libpq/be-secure.c
src/backend/optimizer/plan/subselect.c
src/backend/port/sysv_shmem.c
src/backend/postmaster/pgstat.c
src/backend/rewrite/rewriteManip.c
src/backend/storage/buffer/bufmgr.c
src/backend/utils/adt/datetime.c
src/backend/utils/adt/formatting.c
src/backend/utils/adt/ri_triggers.c
src/backend/utils/adt/ruleutils.c
src/backend/utils/adt/varlena.c
src/backend/utils/mb/Unicode/UCS_to_GB18030.pl
src/backend/utils/mb/Unicode/gb18030_to_utf8.map
src/backend/utils/mb/conversion_procs/Makefile
src/bin/pg_dump/pg_dump.c
src/bin/psql/po/de.po
src/bin/scripts/clusterdb
src/include/pg_config.h.win32
src/include/storage/pg_shmem.h
src/interfaces/jdbc/org/postgresql/Driver.java.in
src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1Statement.java
src/interfaces/libpq/fe-connect.c
src/interfaces/libpq/fe-exec.c
src/interfaces/libpq/fe-misc.c
src/interfaces/libpq/fe-secure.c
src/interfaces/libpq/libpq.rc
src/pl/plpython/plpython.c
src/pl/tcl/pltcl.c
src/test/regress/expected/rules.out
src/test/regress/sql/rules.sql
--------------------------------------------------------------------------------


---
井久保 寛明 (Hiroaki Ikubo)
NTTデータ先端技術 (株) オープンソース技術部
E-mail: ikubo @ intellilink.co.jp (E-mail: ikuboh @ nttdata.co.jp)





hackers-jp メーリングリストの案内