You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Zhao Yongming (JIRA)" <ji...@apache.org> on 2011/09/07 17:08:10 UTC
[jira] [Updated] (TS-168) LogBuffer.h/LogObject.h overload operator
new and do object initialization there using iObject which is evil
[ https://issues.apache.org/jira/browse/TS-168?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zhao Yongming updated TS-168:
-----------------------------
Attachment: TS-168-2.patch
this is a 85KB patch which will revert most of the changes in the last patch, that will include iObject etc, and mutex locking.
things beyond revert include:
1, make LogObject compare really works, not we do not close and then reopen the connections(when do remote logging), the files(when do local file logging)
2, rework the size based rolling with a simple way.
this is a huge patch, may need full review and testing.
> LogBuffer.h/LogObject.h overload operator new and do object initialization there using iObject which is evil
> ------------------------------------------------------------------------------------------------------------
>
> Key: TS-168
> URL: https://issues.apache.org/jira/browse/TS-168
> Project: Traffic Server
> Issue Type: Improvement
> Components: Logging
> Reporter: John Plevyak
> Assignee: Zhao Yongming
> Priority: Critical
> Fix For: 3.1.1
>
> Attachments: LogBuff.diff, TS-168-2.patch
>
>
> In header LogBuffer.h the classes iObject/iObjectActivator/iLogBufferData
> need to be cleaned up.
> This code is terribly designed. Nobody should ever do object initialization
> in an overloaded new operator. This caused TS-159.
> The logging code was designed to be completely lockless on the critical path
> and not to do any malloc/new (which typically involve locks) and this code
> breaks that design.
> Basically, this should be rewritten, perhaps someone for Y! could attach
> the patch which added this junk so it can be backed out and whatever
> real functionality it added, added in a reasonable way.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira