On Friday 18 November 2011, Graham Leggett wrote: > > besides the ugliness of updating conn_rec, are there known > > functional drawbacks of the existing mechanism, assuming that > > the module which sets the client also sets a note to allow > > logging of the TCP peer if desired?
There is also the problem that with pipelined requests, it is not clear to which request c->remote_ip actually belongs. With the current code, the logging of the previous request (initiated by the destruction of the EOR bucket) will happen after the current request has already changed c->remote_ip. > Looking deeper into mod_remoteip, most specifically > remoteip_modify_connection(), what I see is that we seem to be > leaking memory from c->pool on each request, which on a server > serving millions of requests an hour will start to add up. > > In addition, it looks like we assign memory allocated from > r->pool into the structure attached to c->pool without having > registered any cleanups to reverse this when r->pool is destroyed. > > I think we need to look closer at this. +1