Re: BUG #15460: Error while creating index or constraint

Thomas Munro <thomas.munro@enterprisedb.com>

From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Peter Geoghegan <pg@bowt.ie>
Cc: paul.vanderlinden@mapcreator.eu, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>, Heikki Linnakangas <hlinnaka@iki.fi>
Date: 2018-11-13T09:13:37Z
Lists: pgsql-bugs
On Tue, Oct 30, 2018 at 4:15 AM Peter Geoghegan <pg@bowt.ie> wrote:
> > ERROR:  could not determine size of temporary file "0"

                filesize = BufFileSize(file);
                if (filesize < 0)
                        ereport(ERROR,
                                        (errcode_for_file_access(),
                                         errmsg("could not determine
size of temporary file \"%s\"", filename)));

Ahh.  I think we may be overflowing a 32 bit off_t on this platform.

-- 
Thomas Munro
http://www.enterprisedb.com


Commits

  1. Have BufFileSize() ereport() on FileSize() failure.

  2. Use 64 bit type for BufFileSize().

  3. Adjust trace_sort log messages.

  4. Fix some sloppiness in the new BufFileSize() and BufFileAppend() functions.