debugsqlMinor
`pg_restore` with `jobs` flag results in `pg_restore: error: a worker process died unexpectedly`
Viewed 0 times
errorprocesswithflagworkerjobsunexpectedlyresultsdiedpg_restore
Problem
I have a script which runs the following:
This frequently fails with the following error:
This error, in turn, means that tables which should have indices, primary keys, etc. end up not having them. For example, when run without multiple cores, our
Wh
pg_restore tmp/latest.backup --verbose --clean --no-acl --no-owner --dbname hub_development --jobs=12This frequently fails with the following error:
error: could not find block ID 4584 in archive -- possibly due to out-of-order restore request, which cannot be handled due to lack of data offsets in archive
pg_restore: error: a worker process died unexpectedlyThis error, in turn, means that tables which should have indices, primary keys, etc. end up not having them. For example, when run without multiple cores, our
users table looks like this, as expected:Table "public.users"
Column | Type | Collation | Nullable | Default
--------------------+-----------------------------+-----------+----------+-----------------------------------
id | integer | | not null | nextval('users_id_seq'::regclass)
created_at | timestamp without time zone | | not null |
updated_at | timestamp without time zone | | not null |
email | character varying | | not null |
confirmation_token | character varying(128) | | |
name | character varying | | not null | ''::character varying
user_type | character varying | | |
encrypted_password | character varying(128) | | |
remember_token | character varying(128) | | |
Indexes:
"users_pkey" PRIMARY KEY, btree (id)
"index_users_on_email" btree (email)
"index_users_on_remember_token" btree (remember_token)
Referenced by:
TABLE "project_feedback_users" CONSTRAINT "fk_rails_08af49ba47" FOREIGN KEY (user_id) REFERENCES users(id)
TABLE "client_reviews" CONSTRAINT "fk_rails_8fc606dbea" FOREIGN KEY (user_id) REFERENCES users(id)Wh
Solution
UPDATE: the "a worker process died unexpectedly" issue was fixed upstream in PostgreSQL 12.4! Upgrade to get the fix.
For the best compatibility and performance with
For the best compatibility and performance with
pg_restore have your pg_dump write the dump file to a local file on disk instead of an unseekable file descriptor.Context
StackExchange Database Administrators Q#257398, answer score: 7
Revisions (0)
No revisions yet.