Re: pread() and pwrite()
От | Thomas Munro |
---|---|
Тема | Re: pread() and pwrite() |
Дата | |
Msg-id | CAEepm=2bCgXO6ya=9PqavibtAgGvqX1wFARiWPPqyx=Gy5v+gg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: pread() and pwrite() (Andrew Dunstan <andrew.dunstan@2ndquadrant.com>) |
Список | pgsql-hackers |
On Thu, Nov 8, 2018 at 4:27 AM Andrew Dunstan <andrew.dunstan@2ndquadrant.com> wrote: > On 11/7/18 10:05 AM, Jesper Pedersen wrote: > > On 11/7/18 9:30 AM, Tom Lane wrote: > >> I'm confused by this. Surely the pwrite-based code is writing > >> exactly the > >> same data as before. Do we have to conclude that valgrind is > >> complaining > >> about passing uninitialized data to pwrite() when it did not complain > >> about exactly the same thing for write()? > >> > >> [ looks ... ] No, what we have to conclude is that the write-related > >> suppressions in src/tools/valgrind.supp need to be replaced or augmented > >> with pwrite-related ones. > > > > The attached patch fixes this for me. > > > > Unfortunately pwrite* doesn't work for the pwrite64(buf) line. > > Works for me. If there's no objection I will commit this. Thanks for adjusting that. I suppose I would have known about this if cfbot checked every patch with valgrind, which I might look into. I'm a little confused about how an uninitialised value originating in an OID list finishes up in an xlog buffer, considering that OIDs don't have padding. -- Thomas Munro http://www.enterprisedb.com
В списке pgsql-hackers по дате отправления: