Обсуждение: Re: [GENERAL] [SQL] pg_multixact issues
On Thu, Sep 18, 2014 at 6:20 PM, Dev Kumkar <devdas.kumkar@gmail.com> wrote:
On Thu, Sep 18, 2014 at 4:03 PM, Andres Freund <andres@2ndquadrant.com> wrote:I don't think that's relevant for you.
Did you upgrade the database using pg_upgrade?
That's correct! No, there is no upgrade here.Can you show pg_controldata output and the output of 'SELECT oid,
datname, relfrozenxid, age(relfrozenxid), relminmxid FROM pg_database;'?
Here are the details:
oid datname datfrozenxid age(datfrozenxid) datminmxid
16384 myDB 1673 10872259 1Additionally wanted to mention couple more points here:When I try to run "vacuum full" on this machine then facing following issue:
INFO: vacuuming "myDB.mytable"
ERROR: MultiXactId 3622035 has not been created yet -- apparent wraparoundNo Select statements are working on this table, is the table corrupt?
Any inputs/hints/tips here?
On 09/18/2014 10:22 AM, Dev Kumkar wrote: > On Thu, Sep 18, 2014 at 6:20 PM, Dev Kumkar <devdas.kumkar@gmail.com > <mailto:devdas.kumkar@gmail.com>> wrote: > > On Thu, Sep 18, 2014 at 4:03 PM, Andres Freund > <andres@2ndquadrant.com <mailto:andres@2ndquadrant.com>> wrote: > > I don't think that's relevant for you. > > Did you upgrade the database using pg_upgrade? > > > That's correct! No, there is no upgrade here. The above sentence is not clear to me. Did you run pg_upgrade to get the data into the database? If not, how did the database get populated? > > Can you show pg_controldata output and the output of 'SELECT oid, > datname, relfrozenxid, age(relfrozenxid), relminmxid FROM > pg_database;'? > > > Here are the details: > oid datname datfrozenxid age(datfrozenxid) datminmxid > 16384 myDB 1673 10872259 1 > > Additionally wanted to mention couple more points here: > When I try to run "vacuum full" on this machine then facing > following issue: > INFO: vacuuming "myDB.mytable" > ERROR: MultiXactId 3622035 has not been created yet -- > apparent wraparound > > No Select statements are working on this table, is the table corrupt? > > > Any inputs/hints/tips here? Have you run the query from here?: http://www.postgresql.org/docs/9.3/interactive/release-9-3-5.html WITH list(file) AS (SELECT * FROM pg_ls_dir('pg_multixact/offsets')) SELECT EXISTS (SELECT * FROM list WHERE file = '0000') AND NOT EXISTS (SELECT * FROM list WHERE file = '0001') AND NOT EXISTS (SELECT * FROM list WHERE file = 'FFFF') AND EXISTS (SELECT * FROM list WHERE file != '0000') AS file_0000_removal_required; -- Adrian Klaver adrian.klaver@aklaver.com
On 2014-09-18 22:52:57 +0530, Dev Kumkar wrote: > On Thu, Sep 18, 2014 at 6:20 PM, Dev Kumkar <devdas.kumkar@gmail.com> wrote: > > > On Thu, Sep 18, 2014 at 4:03 PM, Andres Freund <andres@2ndquadrant.com> > > wrote: > > > >> I don't think that's relevant for you. > >> > >> Did you upgrade the database using pg_upgrade? > >> > > > > That's correct! No, there is no upgrade here. > > > > > >> Can you show pg_controldata output and the output of 'SELECT oid, > >> datname, relfrozenxid, age(relfrozenxid), relminmxid FROM pg_database;'? > >> > > > > Here are the details: > > oid datname datfrozenxid age(datfrozenxid) datminmxid > > 16384 myDB 1673 10872259 1 > > > > Additionally wanted to mention couple more points here: > > When I try to run "vacuum full" on this machine then facing following > > issue: > > INFO: vacuuming "myDB.mytable" > > ERROR: MultiXactId 3622035 has not been created yet -- apparent > > wraparound > > > > No Select statements are working on this table, is the table corrupt? > > > > Any inputs/hints/tips here? Yes: Learning some patience. You'd given the previous answer two hours before this one. Nobody is paid to work on this list... Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
On Fri, Sep 19, 2014 at 1:03 PM, Andres Freund <andres@2ndquadrant.com> wrote:
Yes: Learning some patience. You'd given the previous answer two hours
before this one. Nobody is paid to work on this list...
Apologies for the delay, was working/troubleshooting same issue and was away from my emails. :(
Regards...
On Fri, Sep 19, 2014 at 1:23 PM, Dev Kumkar <devdas.kumkar@gmail.com> wrote:
Apologies for the delay, was working/troubleshooting same issue and was away from my emails. :(Regards...
Received the database with huge pg_multixact directory of size 21G and there are ~82,000 files in "pg_multixact/members" and 202 files in "pg_multixact/offsets" directory.
Did run "vacuum full" on this database and it was successful. However now am not sure about pg_multixact directory. truncating this directory except 0000 file results into database start up issues, of course this is not correct way of truncating.
FATAL: could not access status of transaction 13224692
Did run "vacuum full" on this database and it was successful. However now am not sure about pg_multixact directory. truncating this directory except 0000 file results into database start up issues, of course this is not correct way of truncating.
FATAL: could not access status of transaction 13224692
Stumped ! Please provide some comments on how to truncate pg_multixact files and if there is any impact because of these files on database performance.
Regards...