Thread

  1. Re: [HACKERS] Recovery on incomplete write

    Tom Lane <tgl@sss.pgh.pa.us> — 1999-09-28T14:39:22Z

    "Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
    > I have wondered that md.c handles incomplete block(page)s
    > correctly.
    > Am I mistaken ?
    
    I think you are right, and there may be some other trouble spots in that
    file too.  I remember thinking that the code depended heavily on never
    having a partial block at the end of the file.
    
    But is it worth fixing?  The only way I can see for the file length
    to become funny is if we run out of disk space part way through writing
    a page, which seems unlikely...
    
    			regards, tom lane
    
    
  2. Re: [HACKERS] Recovery on incomplete write

    Bruce Momjian <maillist@candle.pha.pa.us> — 1999-09-28T14:54:26Z

    > "Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
    > > I have wondered that md.c handles incomplete block(page)s
    > > correctly.
    > > Am I mistaken ?
    > 
    > I think you are right, and there may be some other trouble spots in that
    > file too.  I remember thinking that the code depended heavily on never
    > having a partial block at the end of the file.
    > 
    > But is it worth fixing?  The only way I can see for the file length
    > to become funny is if we run out of disk space part way through writing
    > a page, which seems unlikely...
    > 
    
    That is how he got started, the TODO item about running out of disk
    space causing corrupted databases.  I think it needs a fix, if we can.
    
    -- 
      Bruce Momjian                        |  http://www.op.net/~candle
      maillist@candle.pha.pa.us            |  (610) 853-3000
      +  If your life is a hard drive,     |  830 Blythe Avenue
      +  Christ can be your backup.        |  Drexel Hill, Pennsylvania 19026
    
    
  3. RE: [HACKERS] Recovery on incomplete write

    Hiroshi Inoue <inoue@tpf.co.jp> — 1999-09-29T07:20:14Z

    > -----Original Message-----
    > From: Bruce Momjian [mailto:maillist@candle.pha.pa.us]
    > Sent: Tuesday, September 28, 1999 11:54 PM
    > To: Tom Lane
    > Cc: Hiroshi Inoue; pgsql-hackers
    > Subject: Re: [HACKERS] Recovery on incomplete write
    >
    >
    > > "Hiroshi Inoue" <Inoue@tpf.co.jp> writes:
    > > > I have wondered that md.c handles incomplete block(page)s
    > > > correctly.
    > > > Am I mistaken ?
    > >
    > > I think you are right, and there may be some other trouble spots in that
    > > file too.  I remember thinking that the code depended heavily on never
    > > having a partial block at the end of the file.
    > >
    > > But is it worth fixing?  The only way I can see for the file length
    > > to become funny is if we run out of disk space part way through writing
    > > a page, which seems unlikely...
    > >
    >
    > That is how he got started, the TODO item about running out of disk
    > space causing corrupted databases.  I think it needs a fix, if we can.
    >
    
    Maybe it isn't so difficult to fix.
    I would provide a patch.
    
    Regards.
    
    Hiroshi Inoue
    Inoue@tpf.co.jp
    
    
    
  4. Re: [HACKERS] Recovery on incomplete write

    Christof Petig <christof.petig@wtal.de> — 1999-09-29T08:39:32Z

    Bruce Momjian wrote:
    
    > >
    > > I think you are right, and there may be some other trouble spots in that
    > > file too.  I remember thinking that the code depended heavily on never
    > > having a partial block at the end of the file.
    > >
    > > But is it worth fixing?  The only way I can see for the file length
    > > to become funny is if we run out of disk space part way through writing
    > > a page, which seems unlikely...
    > >
    >
    > That is how he got started, the TODO item about running out of disk
    > space causing corrupted databases.  I think it needs a fix, if we can.
    
    It does corrupt the database (happened twice to me last week, I'm using the
    current CVS version!). You can't even pg_dump the database - it stops in the
    middle of a line.
    And this happened just because some process went amok and stdout was written
    to a file.
    
    Christof