Re: Duplicated assignment of slot_name in walsender.c - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: Duplicated assignment of slot_name in walsender.c
Date
Msg-id 20151021215323.GE3391@alvherre.pgsql
Whole thread Raw
In response to Re: Duplicated assignment of slot_name in walsender.c  (Andres Freund <andres@anarazel.de>)
Responses Re: Duplicated assignment of slot_name in walsender.c  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Andres Freund wrote:
> On 2015-10-21 17:21:25 -0300, Alvaro Herrera wrote:

> > I think the first assignment is also pointless -- I mean can't we just
> > use MyReplicationSlot->data.name in both places where slot_name is used?
> 
> Makes the lines a bit long. strlen(NameStr(MyReplicationSlot->data.name)) ...

Meh.  Assign the strlen somewhere?

> > In the same routine, it seems wasteful to be doing strlen() twice for
> > every string sent over the wire.
> 
> That seems fairly insignificant. For one this is a rather infrequent and
> expensive operation,

OK, I can buy that.

> for another every decent compiler can optimize those away. Note that
> those duplicate strlen() calls are there in a lot of places in
> walsender.c

It can?  Tom has repeatedly argue the opposite, in the past.

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: pg_recvlogical fixes
Next
From: Alvaro Herrera
Date:
Subject: Re: Duplicated assignment of slot_name in walsender.c