Re: Freeze avoidance of very large table. - Mailing list pgsql-hackers

From Jeff Janes
Subject Re: Freeze avoidance of very large table.
Date
Msg-id CAMkU=1w5wSX2J83ufEczqJ=d+19gXXQ_SAcgoOf3zgvzarehXg@mail.gmail.com
Whole thread Raw
In response to Re: Freeze avoidance of very large table.  (Jeff Janes <jeff.janes@gmail.com>)
Responses Re: Freeze avoidance of very large table.  (Masahiko Sawada <sawada.mshk@gmail.com>)
List pgsql-hackers
On Wed, Nov 18, 2015 at 11:18 AM, Jeff Janes <jeff.janes@gmail.com> wrote:
>
> I get an error when running pg_upgrade from 9.4 to 9.6-this
>
> error while copying relation "mediawiki.archive"
> ("/tmp/data/base/16414/21043_vm" to
> "/tmp/data_fm/base/16400/21043_vm"): No such file or directory

OK, so the problem seems to be that rewriteVisibilitymap can get
called with errno already set to a nonzero value.

It never clears it, and then fails at the end despite that no error
has actually occurred.

Just setting it to 0 at the top of the function seems to be correct
thing to do.  Or does it need to save the old value and restore it?

But now when I want to do the upgrade faster, I run into this:

"This utility cannot upgrade from PostgreSQL version from 9.5 or
before to 9.6 or later with link mode."

Is this really an acceptable a tradeoff?  Surely we can arrange to
link everything else and rewrite just the _vm, which is a tiny portion
of the data directory.  I don't think that -k promises to link
everything it possibly can.

Cheers,

Jeff



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Minor comment improvement to create_foreignscan_plan
Next
From: Robert Haas
Date:
Subject: Re: Patch: Implement failover on libpq connect level.