Re: dsm use of uint64 - Mailing list pgsql-hackers

From Andres Freund
Subject Re: dsm use of uint64
Date
Msg-id 20131104155530.GG25546@awork2.anarazel.de
Whole thread Raw
In response to Re: dsm use of uint64  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: dsm use of uint64  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
On 2013-11-04 10:46:06 -0500, Robert Haas wrote:
> On Fri, Nov 1, 2013 at 11:45 PM, Peter Eisentraut <peter_e@gmx.net> wrote:
> > On Mon, 2013-10-28 at 12:17 -0400, Robert Haas wrote:
> >> On Sun, Oct 27, 2013 at 11:34 PM, Noah Misch <noah@leadboat.com> wrote:
> >> > On Fri, Oct 25, 2013 at 10:11:41PM -0400, Robert Haas wrote:
> >> >> When I wrote the dynamic shared memory patch, I used uint64 everywhere
> >> >> to measure sizes - rather than, as we do for the main shared memory
> >> >> segment, Size.  This now seems to me to have been the wrong decision;
> >
> > This change is now causing compiler warnings on 32-bit platforms.  You
> > can see them here, for example:
> > http://buildfarm.postgresql.org/cgi-bin/show_stage_log.pl?nm=lapwing&dt=2013-11-01%2020%3A45%3A01&stg=make
> 
> Ah.  This is because I didn't change the format code used to print the
> arguments; it's still using UINT64_FORMAT, but the argument is now a
> Size.  What's the right way to print out a Size, anyway?

There isn't a nice one currently. glibc/gcc have %z that automatically
has the right width, but that's not supported by windows. I've been
wondering if we shouldn't add support for that just like we have added
support for %m.

>  Should I
> just try %lu?  It seems that sysv_shmem.c uses %lu, but also casts the
> value to (unsigned long); I could follow that precedent here, if
> there's no consistency to what format is needed to print a size_t.

Yes, you need a cast like that.

Greetings,

Andres Freund

-- Andres Freund                       http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training &
Services



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: Removal of archive in wal_level
Next
From: Robert Haas
Date:
Subject: Re: Fast insertion indexes: why no developments