[pgsql-jp: 25139] Re: text 型に大量(50MB) のデータを入れた場合

sugita @ sra.co.jp sugita @ sra.co.jp
2002年 3月 7日 (木) 18:06:37 JST


  杉田です。

From: Kazumasa Gotoh <kgotoh @ cic-kk.co.jp>
Subject: [pgsql-jp: 25137] text 型に大量(50MB) のデータを入れた場合
Date: Thu, 07 Mar 2002 16:39:13 +0900

;;; 私のところではなく、知り合いのところで発生した問題なのですが、
;;; 以下の条件でエラーが発生するというものがありました。
;;; 
;;;   環境 : Digital UNIX 5.0 + PostgreSQL 7.2
;;; 
;;;   現象 : text 型のカラムに 50MB ほどのデータを insert しにゆくと
;;;          "Memory exhausted in AllocSetAlloc(数字)" となる。
;;; 
;;; "数字" はアロケーションサイズで、50MB ほどの値になります。
;;; 
;;; 結局はその環境で malloc できる最大値を標準の 512MB から1GB に増やして
;;; 登録できるようにはなったのですが、何でそんなにメモリを食うの?
;;; という点が疑問になりました。
;;; 
;;; 私自身は追試はしていないのですが、top で見ると、postmaster のプロセス
;;; サイズは確かに 500MB 以上になっていたそうです。

  1 文字の繰り返しで試してみました。なので、条件が違います。

  103MB でした。4 回 INSERT 後に pg_dump したファイルサイズが 209MB なので、入
れたサイズは、間違いないでしょう。100MB のテキストにすると 4 回試していずれも 
204MB です。


Kenji Sugita
sugita @ sra.co.jp



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