public inbox for [email protected]  
help / color / mirror / Atom feed
From: Andrew Dunstan <[email protected]>
To: Thomas Munro <[email protected]>
Cc: Robert Haas <[email protected]>
Cc: Jakub Wartak <[email protected]>
Cc: PostgreSQL Hackers <[email protected]>
Cc: Dilip Kumar <[email protected]>
Subject: Re: Windows pg_basebackup unable to create >2GB pg_wal.tar tarballs ("could not close file: Invalid argument" when creating pg_wal.tar of size ~ 2^31 bytes)
Date: Mon, 6 Jan 2025 11:22:53 -0500
Message-ID: <[email protected]> (raw)
In-Reply-To: <CAEbAQ-VgeghebE+xgJFOF9dppYX0OS-7N_vq=u7fuhz5oBWyyQ@mail.gmail.com>
References: <CAKZiRmyM4YnokK6Oenw5JKwAQ3rhP0YTz2T-tiw5dAQjGRXE3Q@mail.gmail.com>
	<CA+hUKG+oo_g4-dcsZkGsmKHad4sOmkMOBctDPV1CEGWPFeeTwQ@mail.gmail.com>
	<CAKZiRmxL_0cKA1W1v8Qxs+tRy44NacL9gnxVaa-APzPvBF40Yw@mail.gmail.com>
	<CA+hUKGLpkcNRkrwMCXuJu1jc5-38bvN-yEq5B0FpSV91U9ZwMQ@mail.gmail.com>
	<CA+TgmoYVy3Z7F2bfBNmRch2gx1cL46-PjjBUVbc8EjdAvmfoAw@mail.gmail.com>
	<CA+hUKG++NtrryUcSE5SwUi98SG+X9Q+w=mYo0Rx-DgSMPALr2A@mail.gmail.com>
	<CA+hUKG+6ZPD_X5ADMwX2uUtXqe_wv8+KQ5xFeAR2zbcodjNZvw@mail.gmail.com>
	<CA+TgmobCEWj2XDDrqbw2xqu91FStrusHaXXJtczLfpS7Tq55mQ@mail.gmail.com>
	<CA+hUKGK0+5PAfW9q_4z9XEiVfjgcCi2JgcNBmiRxTPCpxdFMdQ@mail.gmail.com>
	<CAEbAQ-VgeghebE+xgJFOF9dppYX0OS-7N_vq=u7fuhz5oBWyyQ@mail.gmail.com>


On 2024-12-07 Sa 2:42 AM, Davinder Singh wrote:
>
> On Fri, Dec 6, 2024 at 11:31 AM Thomas Munro <[email protected]> 
> wrote:
>
>     Some better new:
>
>     1.  _chsize_s does in fact seem to work in an msvcrt.dll build.
>     Thanks to Andres for testing that for me on Windows with a standalone
>     2 line program on ucrt and msvcrt runtimes.
>
>     2.  MinGW always has _chsize_s, but it does more or less what I had
>     been proposing already if it can't find the function by the Windows
>     thing like dlsym, so there's no point in writing another thing
>     like that.
>     The test was with a 3G file though so it was the real function.
>
>     https://github.com/mingw-w64/mingw-w64/blob/master/mingw-w64-crt/secapi/_chsize_s.c
>
>     3.  After a long time trying various ways to make it tidy and getting
>     incomprehensible results I eventually realised that precompiled
>     headers were causing strange results on MinGW/Meson builds (on CI),
>     due to fighting over macros with this guy:
>
>     https://github.com/mingw-w64/mingw-w64/blob/master/mingw-w64-headers/crt/unistd.h
>
>     I found it easiest to completely stop it from getting in our way
>     completely, with the attached.  Thoughts, anyone?
>
>     Davinder, Jakub, are you in a position repro the issue and make
>     versions of the patch for the 13, 15 and master branches on top of
>     that?
>
>
> Yes, Thomas, the issue is reproducible.
> After applying your patch and replacing off_t with pgoff_t, the 
> problem has been resolved. I have attached the patches for the 13, 15, 
> and master. These patches include only the changes related to pgoff_t, 
> intended for use with the v3-0001 patch--
>
>


Hi, Thomas,


Do you have a plan for moving ahead with this?


cheers


andrew

--
Andrew Dunstan
EDB:https://www.enterprisedb.com


view thread (4+ messages)

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected], [email protected], [email protected], [email protected], [email protected]
  Subject: Re: Windows pg_basebackup unable to create >2GB pg_wal.tar tarballs ("could not close file: Invalid argument" when creating pg_wal.tar of size ~ 2^31 bytes)
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox