Re: No error checking when reading from file using zstd in pg_dump
От | Tom Lane |
---|---|
Тема | Re: No error checking when reading from file using zstd in pg_dump |
Дата | |
Msg-id | 1448707.1750944836@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: No error checking when reading from file using zstd in pg_dump (Evgeniy Gorbanev <gorbanyoves@basealt.ru>) |
Список | pgsql-hackers |
Daniel Gustafsson <daniel@yesql.se> writes: > On 25 Jun 2025, at 17:58, Tom Lane <tgl@sss.pgh.pa.us> wrote: >> It doesn't return true anymore. Should be more like >> + * Returns nothing. Exits via pg_fatal for all error conditions. > Instead of this I changed the write_func signature to return the number of > bytes written as size_t. The API is loosely modelled around the libc stream API so > going to void seemed less justifiable than size_t, even if the actual > returnvalue is fairly useless due to erroring out via pg_fatal. Hm. My one concern about that is that using "void" ensures that the compiler will catch any write_funcs or callsites that we missed updating, whereas replacing bool with size_t probably prevents that detection. Of course this is now moot for the in-core code since we presumably caught everything already. But I wonder about patches (say to support an additional compression method) that might be in the pipeline, or in use in some local fork somewhere. There's no certainty that they'd get the word, especially since any tests that didn't exercise failure conditions would still work. So on the whole I prefer the "void" approach. I'm not dead set on that though, it's just a niggling worry. regards, tom lane
В списке pgsql-hackers по дате отправления: