Обсуждение: pgsql: Replace strncpy with strlcpy in selected places that seem

Поиск
Список
Период
Сортировка

pgsql: Replace strncpy with strlcpy in selected places that seem

От
tgl@postgresql.org (Tom Lane)
Дата:
Log Message:
-----------
Replace strncpy with strlcpy in selected places that seem possibly relevant
to performance.  (A wholesale effort to get rid of strncpy should be
undertaken sometime, but not during beta.)  This commit also fixes dynahash.c
to correctly truncate overlength string keys for hashtables, so that its
callers don't have to anymore.

Modified Files:
--------------
    pgsql/src/backend/commands:
        prepare.c (r1.64 -> r1.65)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/prepare.c.diff?r1=1.64&r2=1.65)
    pgsql/src/backend/nodes:
        read.c (r1.48 -> r1.49)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/read.c.diff?r1=1.48&r2=1.49)
    pgsql/src/backend/storage/ipc:
        shmem.c (r1.95 -> r1.96)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/shmem.c.diff?r1=1.95&r2=1.96)
    pgsql/src/backend/utils/error:
        elog.c (r1.173 -> r1.174)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/error/elog.c.diff?r1=1.173&r2=1.174)
    pgsql/src/backend/utils/fmgr:
        dfmgr.c (r1.89 -> r1.90)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/fmgr/dfmgr.c.diff?r1=1.89&r2=1.90)
    pgsql/src/backend/utils/hash:
        dynahash.c (r1.71 -> r1.72)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/hash/dynahash.c.diff?r1=1.71&r2=1.72)
        hashfn.c (r1.27 -> r1.28)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/hash/hashfn.c.diff?r1=1.27&r2=1.28)
    pgsql/src/backend/utils/misc:
        ps_status.c (r1.31 -> r1.32)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/ps_status.c.diff?r1=1.31&r2=1.32)
    pgsql/src/backend/utils/mmgr:
        portalmem.c (r1.94 -> r1.95)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/mmgr/portalmem.c.diff?r1=1.94&r2=1.95)
    pgsql/src/port:
        path.c (r1.68 -> r1.69)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/port/path.c.diff?r1=1.68&r2=1.69)
        thread.c (r1.34 -> r1.35)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/port/thread.c.diff?r1=1.34&r2=1.35)

Re: pgsql: Replace strncpy with strlcpy in selected

От
Andrew Dunstan
Дата:
Looks like we have broken Windows builds ... e.g.
http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=yak&dt=2006-09-28%2012:37:33

cheers

andrew

Tom Lane wrote:
> Log Message:
> -----------
> Replace strncpy with strlcpy in selected places that seem possibly relevant
> to performance.  (A wholesale effort to get rid of strncpy should be
> undertaken sometime, but not during beta.)  This commit also fixes dynahash.c
> to correctly truncate overlength string keys for hashtables, so that its
> callers don't have to anymore.
>
> Modified Files:
> --------------
>     pgsql/src/backend/commands:
>         prepare.c (r1.64 -> r1.65)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/prepare.c.diff?r1=1.64&r2=1.65)
>     pgsql/src/backend/nodes:
>         read.c (r1.48 -> r1.49)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/read.c.diff?r1=1.48&r2=1.49)
>     pgsql/src/backend/storage/ipc:
>         shmem.c (r1.95 -> r1.96)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/shmem.c.diff?r1=1.95&r2=1.96)
>     pgsql/src/backend/utils/error:
>         elog.c (r1.173 -> r1.174)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/error/elog.c.diff?r1=1.173&r2=1.174)
>     pgsql/src/backend/utils/fmgr:
>         dfmgr.c (r1.89 -> r1.90)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/fmgr/dfmgr.c.diff?r1=1.89&r2=1.90)
>     pgsql/src/backend/utils/hash:
>         dynahash.c (r1.71 -> r1.72)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/hash/dynahash.c.diff?r1=1.71&r2=1.72)
>         hashfn.c (r1.27 -> r1.28)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/hash/hashfn.c.diff?r1=1.27&r2=1.28)
>     pgsql/src/backend/utils/misc:
>         ps_status.c (r1.31 -> r1.32)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/ps_status.c.diff?r1=1.31&r2=1.32)
>     pgsql/src/backend/utils/mmgr:
>         portalmem.c (r1.94 -> r1.95)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/mmgr/portalmem.c.diff?r1=1.94&r2=1.95)
>     pgsql/src/port:
>         path.c (r1.68 -> r1.69)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/port/path.c.diff?r1=1.68&r2=1.69)
>         thread.c (r1.34 -> r1.35)
>         (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/port/thread.c.diff?r1=1.34&r2=1.35)
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: if posting/reading through Usenet, please send an appropriate
>        subscribe-nomail command to majordomo@postgresql.org so that your
>        message can get through to the mailing list cleanly
>
>


Re: pgsql: Replace strncpy with strlcpy in selected places that seem

От
Tom Lane
Дата:
Andrew Dunstan <andrew@dunslane.net> writes:
> Looks like we have broken Windows builds ... e.g.
> http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=yak&dt=2006-09-28%2012:37:33

Yeah ... I was just trying to figure out why only Windows is showing the
problem.  It looks like I missed including strlcpy in the ecpglib build,
but why didn't it fail everywhere?

            regards, tom lane

Re: pgsql: Replace strncpy with strlcpy in selected places that seem

От
Chris Browne
Дата:
tgl@sss.pgh.pa.us (Tom Lane) writes:
> Andrew Dunstan <andrew@dunslane.net> writes:
>> Looks like we have broken Windows builds ... e.g.
>> http://www.pgbuildfarm.org/cgi-bin/show_log.pl?nm=yak&dt=2006-09-28%2012:37:33
>
> Yeah ... I was just trying to figure out why only Windows is showing the
> problem.  It looks like I missed including strlcpy in the ecpglib build,
> but why didn't it fail everywhere?

FYI, the patching did briefly bust builds on AIX, so you can rest
reassured that it did break on more than just Windows :-).
--
let name="cbbrowne" and tld="acm.org" in name ^ "@" ^ tld;;
http://linuxfinances.info/info/languages.html
Rules of the  Evil Overlord #159. "If I  burst into rebel headquarters
and find  it deserted except for  an odd, blinking device,  I will not
walk up and investigate; I'll run like hell."
<http://www.eviloverlord.com/>