Re: [HACKERS] [COMMITTERS] pgsql: Add support for TCP keepalives on Windows, both for backend and

2010-07-08 Thread Tom Lane
Magnus Hagander mag...@hagander.net writes:
 Seems pretty simple - mingw doesn't have support for this. We have two
 ways to deal with that I think:
 1) Disable it on mingw.
 2) Include it in our custom headers.

 For #2, what we need to include is the define of SIO_KEEPALIVE_VALS as
 well as the definition of struct tcp_keepalive.

 We've done #2 before at least once, which worked well until mingw
 suddenly caught up and added it a while later. It's not like this is a
 new definition in windows, but we need to be ready for them to
 eventually do that.

Yeah.  I'm satisfied with doing #1 and waiting for them to fix it.

 I guess there is:
 3) write an autoconf test and provide them only when mingw doesn't have it.
 if we're going with #3, I'll respectfully have to ask somebod yelse to
 write the autoconf test, that's beyond me I think :-)

An easy approximation would be to make the code #ifdef SIO_KEEPALIVE_VALS.
That would fail if the mingw guys decide to provide the #define without
adding the struct at the same time, but that seems moderately unlikely.

regards, tom lane

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] [COMMITTERS] pgsql: Add support for TCP keepalives on Windows, both for backend and

2010-07-08 Thread Andrew Dunstan



Tom Lane wrote:

Magnus Hagander mag...@hagander.net writes:
  

Seems pretty simple - mingw doesn't have support for this. We have two
ways to deal with that I think:
1) Disable it on mingw.
2) Include it in our custom headers.



  

For #2, what we need to include is the define of SIO_KEEPALIVE_VALS as
well as the definition of struct tcp_keepalive.



  

We've done #2 before at least once, which worked well until mingw
suddenly caught up and added it a while later. It's not like this is a
new definition in windows, but we need to be ready for them to
eventually do that.



Yeah.  I'm satisfied with doing #1 and waiting for them to fix it.

  

I guess there is:
3) write an autoconf test and provide them only when mingw doesn't have it.
if we're going with #3, I'll respectfully have to ask somebod yelse to
write the autoconf test, that's beyond me I think :-)



An easy approximation would be to make the code #ifdef SIO_KEEPALIVE_VALS.
That would fail if the mingw guys decide to provide the #define without
adding the struct at the same time, but that seems moderately unlikely.


  


+1 for this course of action.

cheers

andrew

--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] [COMMITTERS] pgsql: Add support for TCP keepalives on Windows, both for backend and

2010-07-08 Thread Magnus Hagander
On Thu, Jul 8, 2010 at 17:45, Andrew Dunstan and...@dunslane.net wrote:


 Tom Lane wrote:

 Magnus Hagander mag...@hagander.net writes:


 Seems pretty simple - mingw doesn't have support for this. We have two
 ways to deal with that I think:
 1) Disable it on mingw.
 2) Include it in our custom headers.




 For #2, what we need to include is the define of SIO_KEEPALIVE_VALS as
 well as the definition of struct tcp_keepalive.




 We've done #2 before at least once, which worked well until mingw
 suddenly caught up and added it a while later. It's not like this is a
 new definition in windows, but we need to be ready for them to
 eventually do that.


 Yeah.  I'm satisfied with doing #1 and waiting for them to fix it.



 I guess there is:
 3) write an autoconf test and provide them only when mingw doesn't have
 it.
 if we're going with #3, I'll respectfully have to ask somebod yelse to
 write the autoconf test, that's beyond me I think :-)


 An easy approximation would be to make the code #ifdef SIO_KEEPALIVE_VALS.
 That would fail if the mingw guys decide to provide the #define without
 adding the struct at the same time, but that seems moderately unlikely.




 +1 for this course of action.

Here's what I came up with and will apply as soon as my msvc build
completes. (the mingw one works with this)

-- 
 Magnus Hagander
 Me: http://www.hagander.net/
 Work: http://www.redpill-linpro.com/


mingwkeepalives.patch
Description: Binary data

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers


Re: [HACKERS] [COMMITTERS] pgsql: Add support for TCP keepalives on Windows, both for backend and

2010-07-08 Thread Magnus Hagander
On Thu, Jul 8, 2010 at 18:06, Magnus Hagander mag...@hagander.net wrote:
 On Thu, Jul 8, 2010 at 17:45, Andrew Dunstan and...@dunslane.net wrote:


 Tom Lane wrote:

 Magnus Hagander mag...@hagander.net writes:


 Seems pretty simple - mingw doesn't have support for this. We have two
 ways to deal with that I think:
 1) Disable it on mingw.
 2) Include it in our custom headers.




 For #2, what we need to include is the define of SIO_KEEPALIVE_VALS as
 well as the definition of struct tcp_keepalive.




 We've done #2 before at least once, which worked well until mingw
 suddenly caught up and added it a while later. It's not like this is a
 new definition in windows, but we need to be ready for them to
 eventually do that.


 Yeah.  I'm satisfied with doing #1 and waiting for them to fix it.



 I guess there is:
 3) write an autoconf test and provide them only when mingw doesn't have
 it.
 if we're going with #3, I'll respectfully have to ask somebod yelse to
 write the autoconf test, that's beyond me I think :-)


 An easy approximation would be to make the code #ifdef SIO_KEEPALIVE_VALS.
 That would fail if the mingw guys decide to provide the #define without
 adding the struct at the same time, but that seems moderately unlikely.




 +1 for this course of action.

 Here's what I came up with and will apply as soon as my msvc build
 completes. (the mingw one works with this)

... and applied.

-- 
 Magnus Hagander
 Me: http://www.hagander.net/
 Work: http://www.redpill-linpro.com/

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers