0

TARGET COLUMNSオプションの引数を使用しようとしているときに、pgloader を動作させるのに苦労しています。

LOAD CSV
            FROM INLINE
                    HAVING FIELDS
                    (
                            npi,
                            ...
                     )
             INTO postgresql://user:pass!n@pg2/nadb?tablename=tempload
                    (
                            npi
                    )
            WITH    skip header = 1,
                    fields optionally enclosed by '"',
                    fields escaped by double-quote,
                    fields terminated by ','

            SET     work_mem to '64MB'

    BEFORE LOAD EXECUTE
            tempload.sql;

ターゲット列を使用しない場合、問題なく動作します。 temploadとまったく同じ列がありますdata.csv

実行するたびに、この時点でハングアップします。

2016-06-09T17:17:33.749000-05:00 DEBUG
select i.relname,
       n.nspname,
       indrelid::regclass,
       indrelid,
       indisprimary,
       indisunique,
       pg_get_indexdef(indexrelid),
       c.conname,
       pg_get_constraintdef(c.oid)
  from pg_index x
       join pg_class i ON i.oid = x.indexrelid
       join pg_namespace n ON n.oid = i.relnamespace
       left join pg_constraint c ON c.conindid = i.oid
 where indrelid = 'tempload'::regclass

私は完全に途方に暮れています。私が言ったように、使用しなければ問題なく動作するTARGET COLUMNSので、それがデータであるとは本当に信じていません。

3.2リリースとdockerイメージで同じことが得られます。

4

1 に答える 1

0

問題はメモリの量に関係していることが判明しました。私はに変わり、SET work_mem = '512'その時点を過ぎ始めました。これは、インポートする列が 330 あるという顔に関係していると思います。

于 2016-06-10T13:02:03.327 に答える