logging-log4net-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From JJoe2 <...@git.apache.org>
Subject [GitHub] log4net issue #25: API to flush appenders that buffer logging data
Date Sat, 15 Oct 2016 17:20:09 GMT
Github user JJoe2 commented on the issue:

    I agree that I should have done a better job of keeping these changes separate but when
I did the initial work I was very much a git novice.
    I’ll bite the bullet and separate these changes into two branches with a rebase on the
latest trunk.
    I take your point about the binary serialization format.  For now I’ll roll back the
change in the serialization / deserialization methods.  Users of RemotingAppender will therefore
still be subject to ambiguous timestamps but it’s no longer a breaking change.
    We could also consider implementing serialization as follows (perhaps enabled by a configuration
setting if preserving backwards compatibility is important):
    info.AddValue("TimeStamp", m_data.TimeStampUtc);                          // Serialize
    m_data.TimeStampUtc = info.GetDateTime("TimeStamp").ToUniversalTime();    // Deserialize
    Given that DateTime.ToUniversalTime() is a noop if the Kind property is already set to
Utc, this would give the correct result if both sides have the new version, and the following
result (ignoring .NET 1.x which didn’t have a Kind property) for mixed versions:
    1.       Old client and new server
    Old client serializes as local time; New server converts this to UTC based on the server’s
timezone.  Result unchanged as long as client and server timezones are the same.
    2.       New client and old server
    New client serializes as UTC.  Old server will have a UTC time in the TimeStamp, and will
probably interpret it as local time.

If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.

View raw message