From: | "Hiroshi Inoue" <Inoue(at)tpf(dot)co(dot)jp> |
---|---|
To: | "Vadim Mikheev" <vadim(at)krs(dot)ru> |
Cc: | "The Hermit Hacker" <scrappy(at)hub(dot)org>, <pgsql-hackers(at)postgreSQL(dot)org> |
Subject: | RE: [HACKERS] postgresql-v6.5beta2.tar.gz ... |
Date: | 1999-06-08 01:08:57 |
Message-ID: | 001101beb14b$7c44cda0$2801007e@cadzone.tpf.co.jp |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> -----Original Message-----
> From: root(at)sunpine(dot)krs(dot)ru [mailto:root(at)sunpine(dot)krs(dot)ru]On Behalf Of Vadim
> Mikheev
> Sent: Monday, June 07, 1999 7:49 PM
> To: Hiroshi Inoue
> Cc: The Hermit Hacker; pgsql-hackers(at)postgreSQL(dot)org
> Subject: Re: [HACKERS] postgresql-v6.5beta2.tar.gz ...
>
>
> Hiroshi Inoue wrote:
> >
> > >
> > > Hiroshi, please run your test. You'll get NOTICEs instead of ERRORs.
> >
> > I have run my test and got the following NOTICEs.
> >
> > NOTICE: Child itemid in update-chain marked as unused - can't
> > continue vc_rpfheap
>
> I'm still getting troubles when running your test due to
>
> 1. bug in cache invalidation code: when we invalidate relcache
> we forget to free MdfdVec in md.c!
>
> Vacuum invalidates a relation tuple in pg_class and concurrent
> xactions invalidate corresponding relcache entry, but don't
> free MdfdVec and so allocate new one for the same relation
I have noticed the same thing But at that point my concern was
truncation of segmented relations. AFAIC concurrent xactions
invalidate relcache entry when StartTransaction() or Command-
CounterIncrement() is called. Unfortunately vacuum couldn't stop
other sessions from executing StartTransaction() nor Command-
CounterIncrement().
> more and more. Each MdfdVed requires own fd.c:Vfd entry -> below
>
> 2. fd.c:pg_nofile()->sysconf(_SC_OPEN_MAX) returns in FreeBSD
> near total number of files that can be opened in system
> (by _all_ users/procs). With total number of opened files
> ~ 2000 I can run your test with 10-20 simultaneous
> xactions for very short time, -:)
>
I have remembered another thing.
Someone has already reported to ML in Japan and I was able to
find the cause easily thanks to him.
vacuum calls open() directly to create pg_vlock file.
Sometimes I was not able to open the file because of the lack of
file descriptors().
FileNameOpenFile()/FileClose() etc should be called instead of
open()/close() etc ?
Regards.
Hiroshi Inoue
Inoue(at)tpf(dot)co(dot)jp
From | Date | Subject | |
---|---|---|---|
Next Message | Tatsuo Ishii | 1999-06-08 01:17:34 | Re: [HACKERS] postgresql-v6.5beta2.tar.gz ... |
Previous Message | Tom Lane | 1999-06-08 00:13:21 | Re: [HACKERS] Problem when reloading data from older version |