logging-log4j-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Gregory <garydgreg...@gmail.com>
Subject Re: [VOTE] Release Log4j 2.7-rc1
Date Fri, 30 Sep 2016 18:20:25 GMT
On Thu, Sep 29, 2016 at 10:05 AM, Gary Gregory <garydgregory@gmail.com>
wrote:

> Please wait to cut rc2, I am fixing a regression:
> https://issues.apache.org/jira/browse/LOG4J2-1620
>

Fixed.

This looks like it needs addressing:
https://issues.apache.org/jira/browse/LOG4J2-1618

Gary


>
> Gary
>
> On Thu, Sep 29, 2016 at 9:31 AM, Mikael Ståldal <mikael.staldal@magine.com
> > wrote:
>
>> I created JIRA issues for the Kafka and Flume appender timeout issues,
>> and I have fixed both of them in master branch.
>> https://issues.apache.org/jira/browse/LOG4J2-1624
>> https://issues.apache.org/jira/browse/LOG4J2-1625
>>
>> I also created a JIRA issue for the JVM shutdown hook, but that not as
>> easy to fix and I would not consider it a blocker for the 2.7 release. We
>> can fix it for 2.7.1:
>> https://issues.apache.org/jira/browse/LOG4J2-1623
>>
>> I think we can go ahead now and make an 2.7-rc2 from the current state of
>> master branch.
>>
>>
>> On Thu, Sep 29, 2016 at 3:45 PM, Ralph Goers <ralph.goers@dslextreme.com>
>> wrote:
>>
>>> The release is already delayed. So far we have two compatibility issues
>>> that need to be fixed. Please create a Jira issue for the Flume Appender
>>> and the JVM shutdown hook. Lets gets those fixed. And perhaps we should
>>> stop doing things that aren’t directly focused on getting the release out
>>> as they may well introduce more problems.
>>>
>>> Ralph
>>>
>>> On Sep 29, 2016, at 5:16 AM, Mikael Ståldal <mikael.staldal@magine.com>
>>> wrote:
>>>
>>> I think that it is unfortunate that the close timeout is always zero
>>> within the standard JVM shutdown hook (LoggerContext.java:275). I think
>>> that should be configurable. However, I don't want to delay the release for
>>> that, so let's fix that after the 2.7 release. https://issues.apache
>>> .org/jira/browse/LOG4J2-1623
>>>
>>> However, I want to make sure that KafkaManager use the previous behavior
>>> if the requested timeout is zero. I just made a commit to master with that.
>>>
>>> It seems like FlumePersistentManager.releaseSub (the only other Manager
>>> using releaseSub timeout) tries to do something similar:
>>>
>>> final long shutdownWaitMillis = requestedTimeoutMillis < 0 ? SHUTDOWN_WAIT_MILLIS
: requestedTimeoutMillis;
>>>
>>> But I thing the logic is wrong here. It should probably use
>>> SHUTDOWN_WAIT_MILLIS if requestedTimeoutMillis is <= 0. This should
>>> possibly be fixed before the release.
>>>
>>>
>>>
>>> On Wed, Sep 28, 2016 at 6:54 PM, Gary Gregory <garydgregory@gmail.com>
>>> wrote:
>>>
>>>> On Wed, Sep 28, 2016 at 8:51 AM, Mikael Ståldal <
>>>> mikael.staldal@magine.com> wrote:
>>>>
>>>>> Was this timeout thing implemented as part of any JIRA issue?
>>>>>
>>>>
>>>> The high level ticket is: https://issues.apache.org/jira
>>>> /browse/LOG4J2-1539
>>>>
>>>> Gary
>>>>
>>>>
>>>>>
>>>>> On Wed, Sep 28, 2016 at 5:49 PM, Mikael Ståldal <
>>>>> mikael.staldal@magine.com> wrote:
>>>>>
>>>>>> To track this, I temporary added this to KafkaManager.releaseSub():
>>>>>> LOGGER.info("releaseSub: timeout=" + timeout + " " +
>>>>>> timeUnit.toString(), new Throwable());
>>>>>>
>>>>>> and I get:
>>>>>>
>>>>>> 2016-09-28 17:43:14,382 pool-1-thread-1 INFO releaseSub: timeout=0
MILLISECONDS java.lang.Throwable
>>>>>>
>>>>>> 	at org.apache.logging.log4j.core.appender.mom.kafka.KafkaManager.releaseSub(KafkaManager.java:60)
>>>>>> 	at org.apache.logging.log4j.core.appender.AbstractManager.stop(AbstractManager.java:85)
>>>>>> 	at org.apache.logging.log4j.core.appender.mom.kafka.KafkaAppender.stop(KafkaAppender.java:107)
>>>>>> 	at org.apache.logging.log4j.core.config.AbstractConfiguration.stop(AbstractConfiguration.java:349)
>>>>>> 	at org.apache.logging.log4j.core.LoggerContext.stop(LoggerContext.java:329)
>>>>>> 	at org.apache.logging.log4j.core.AbstractLifeCycle.stop(AbstractLifeCycle.java:127)
>>>>>> 	at org.apache.logging.log4j.core.LoggerContext$1.run(LoggerContext.java:275)
>>>>>> 	at org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry$RegisteredCancellable.run(DefaultShutdownCallbackRegistry.java:104)
>>>>>> 	at org.apache.logging.log4j.core.util.DefaultShutdownCallbackRegistry.run(DefaultShutdownCallbackRegistry.java:74)
>>>>>> 	at java.lang.Thread.run(Thread.java:745)
>>>>>>
>>>>>> the culprit is AbstractLifeCycle.stop() which uses a default timeout
of 0.
>>>>>>
>>>>>>
>>>>>> On Wed, Sep 28, 2016 at 5:40 PM, Gary Gregory <garydgregory@gmail.com
>>>>>> > wrote:
>>>>>>
>>>>>>> It is used when you call LifeCycle2.stop(long, TimeUnit), like
>>>>>>> stopping a LoggerContext or all of Log4j through the shutdown()
method.
>>>>>>>
>>>>>>> Gary
>>>>>>>
>>>>>>> On Wed, Sep 28, 2016 at 8:35 AM, Mikael Ståldal <
>>>>>>> mikael.staldal@magine.com> wrote:
>>>>>>>
>>>>>>>> I see that KafkaManager.releaseSub() is passed a timeout
of 0 at
>>>>>>>> runtime, which is not very useful. How is this actually supposed
to be
>>>>>>>> used? How can you make it get something else than 0?
>>>>>>>>
>>>>>>>> On Wed, Sep 28, 2016 at 5:33 PM, Mikael Ståldal <
>>>>>>>> mikael.staldal@magine.com> wrote:
>>>>>>>>
>>>>>>>>> We have already discussed this here: https://issues.apache.or
>>>>>>>>> g/jira/browse/LOG4J2-1390
>>>>>>>>>
>>>>>>>>> I don't think the release process is the right occasion
to reopen
>>>>>>>>> this discussion. Can we please keep the Kafka 0.8 compatibility
for this
>>>>>>>>> release, and then possibly reopen this discussion after
the release (and
>>>>>>>>> possibly changing it for the 2.8 release)?
>>>>>>>>>
>>>>>>>>> On Wed, Sep 28, 2016 at 5:24 PM, Gary Gregory <
>>>>>>>>> garydgregory@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> On Wed, Sep 28, 2016 at 8:13 AM, Mikael Ståldal
<
>>>>>>>>>> mikael.staldal@magine.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Kafka server 0.8 is still in use, and newer Kafka
clients cannot
>>>>>>>>>>> connect to older Kafka servers.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> There will always be users of old software. That
does not mean
>>>>>>>>>> that new versions of Log4j must support old software,
especially pre-1.0
>>>>>>>>>> software.
>>>>>>>>>>
>>>>>>>>>> Gary
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On Wed, Sep 28, 2016 at 5:10 PM, Gary Gregory
<
>>>>>>>>>>> garydgregory@gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> I do not think it makes sense to support
old versions that are
>>>>>>>>>>>> not even 1.0.
>>>>>>>>>>>>
>>>>>>>>>>>> Gary
>>>>>>>>>>>>
>>>>>>>>>>>> On Wed, Sep 28, 2016 at 7:42 AM, Mikael Ståldal
<
>>>>>>>>>>>> mikael.staldal@magine.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> I fixed the Kafka issue and pushed it
to master branch.
>>>>>>>>>>>>>
>>>>>>>>>>>>> However, I have another concern, what
timeout value is
>>>>>>>>>>>>> actually passed in to AbstractManager.releaseSub
?
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Wed, Sep 28, 2016 at 3:51 PM, Mikael
Ståldal <
>>>>>>>>>>>>> mikael.staldal@magine.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> -1 since the Kafka appender now only
works with Kafka client
>>>>>>>>>>>>>> (and thus server) 0.9+, even though
we agreed to keep compatibility with
>>>>>>>>>>>>>> 0.8 for the time being:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> https://issues.apache.org/jira/browse/LOG4J2-1390
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> The problem appeared with commit
170469514b374eb5a5a33bde6936162fd608f097
>>>>>>>>>>>>>> by Gary in KafkaManager.java (method
releaseSub).
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> I get this error with kafka-clients
0.8.2.2:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> java.lang.NoSuchMethodError: org.apache.kafka.clients.produ
>>>>>>>>>>>>>> cer.Producer.close(JLjava/util/concurrent/TimeUnit;)V
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> appender.mom.kafka.KafkaManager.releaseSub(KafkaManager.java
>>>>>>>>>>>>>> :61)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> appender.AbstractManager.stop(AbstractManager.java:85)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> appender.mom.kafka.KafkaAppender.stop(KafkaAppender.java:107)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> config.AbstractConfiguration.stop(AbstractConfiguration.java
>>>>>>>>>>>>>> :349)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> LoggerContext.stop(LoggerContext.java:329)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> AbstractLifeCycle.stop(AbstractLifeCycle.java:127)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> LoggerContext$1.run(LoggerContext.java:275)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> util.DefaultShutdownCallbackRegistry$RegisteredCancellable.r
>>>>>>>>>>>>>> un(DefaultShutdownCallbackRegistry.java:104)
>>>>>>>>>>>>>> at org.apache.logging.log4j.core.
>>>>>>>>>>>>>> util.DefaultShutdownCallbackRegistry.run(DefaultShutdownCall
>>>>>>>>>>>>>> backRegistry.java:74)
>>>>>>>>>>>>>> at java.lang.Thread.run(Thread.java:745)
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Mon, Sep 26, 2016 at 5:50 PM,
Ralph Goers <
>>>>>>>>>>>>>> ralph.goers@dslextreme.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> This is a vote to release Log4j
2.6.2, the next version of
>>>>>>>>>>>>>>> the Log4j 2 project.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Please download, test, and cast
your votes on the log4j
>>>>>>>>>>>>>>> developers list.
>>>>>>>>>>>>>>> [] +1, release the artifacts
>>>>>>>>>>>>>>> [] -1, don't release because...
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> The vote will remain open for
72 hours (or more if
>>>>>>>>>>>>>>> required). All votes are welcome
and we encourage everyone to test the
>>>>>>>>>>>>>>> release, but only Logging PMC
votes are “officially” counted. As always, at
>>>>>>>>>>>>>>> least 3 +1 votes and more positive
than negative votes are required.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Changes in this version include:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> New features:
>>>>>>>>>>>>>>> o LOG4J2-1578:  RoutingAppender
can be configured with scripts. Add Script in a Routes element.
>>>>>>>>>>>>>>> o LOG4J2-1597:  Add a ScriptAppenderSelector
to create an Appender specified by a Script.
>>>>>>>>>>>>>>> o LOG4J2-1349:  (GC) Added support
for garbage-free ThreadContext map. Disabled by default, users need to enable this explicitly.
>>>>>>>>>>>>>>> o LOG4J2-1447:  (GC) Changed
LogEvent's internal data structure for context data to be garbage-free. Added method LogEvent#getContextData(),
deprecated method #getContextMap().
>>>>>>>>>>>>>>> o LOG4J2-1010:  Users can now
inject context data from other sources than ThreadContext. Values can be any Object, not just
Strings. Thanks to Mikael Ståldal.
>>>>>>>>>>>>>>> o LOG4J2-1568:  Added support
for java.util.concurrent.LinkedTransferQueue to AsyncAppender.
>>>>>>>>>>>>>>> o LOG4J2-1430:  Added optional
support for Conversant DisruptorBlockingQueue in AsyncAppender. Thanks to John Cairns.
>>>>>>>>>>>>>>> o LOG4J2-1439:  Added optional
support for JCTools MPSC bounded lock-free queue in AsyncAppender. Thanks to Anthony Maire.
>>>>>>>>>>>>>>> o LOG4J2-1558:  SocketAppender
now supports IO buffering.
>>>>>>>>>>>>>>> o LOG4J2-1557:  Add a Builder
for the SocketAppender (deprecates factory method).
>>>>>>>>>>>>>>> o LOG4J2-1609:  Add a Builder
to ServletAppender and deprecate factory method.
>>>>>>>>>>>>>>> o LOG4J2-1553:  AbstractManager
now implements AutoCloseable.
>>>>>>>>>>>>>>> o LOG4J2-1528:  Added ability
to generate Log4j 2-style XML configuration file from ConfigurationBuilder.
>>>>>>>>>>>>>>> o LOG4J2-1181:  Added Logging
API for Scala 2.10 and 2.11.
>>>>>>>>>>>>>>> o LOG4J2-1512:  Added options
to exclude stack trace from JSON, XML and YAML layouts.
>>>>>>>>>>>>>>> o LOG4J2-1539:  Added Core API
Configurator.shutdown(LoggerContext, long, TimeUnit).
>>>>>>>>>>>>>>> o LOG4J2-1501:  FileAppender
is now able to create files on-demand.
>>>>>>>>>>>>>>> o LOG4J2-1504:  RollingFileAppender
is now able to create files on-demand.
>>>>>>>>>>>>>>> o LOG4J2-1471:  [PatternLayout]
Add an ANSI option to %xThrowable.
>>>>>>>>>>>>>>> o LOG4J2-1472:  org.apache.logging.log4j.core.LoggerContext
now implements Closeable.
>>>>>>>>>>>>>>> o LOG4J2-1458:  [PatternLayout]
Add an ANSI option to %message.
>>>>>>>>>>>>>>> o LOG4J2-1505:  Create a Builder
for the FileAppender plugin to facilitate adding attributes in the future.
>>>>>>>>>>>>>>> o LOG4J2-1507:  Allow Builders
to be completely generic.
>>>>>>>>>>>>>>> o LOG4J2-1508:  Allow a Builder
to subclass another Builder.
>>>>>>>>>>>>>>> o LOG4J2-1516:  Add ThreadContextMap2
interface supporting method putAll(Map<String, String>). Thanks to Gary Gregory.
>>>>>>>>>>>>>>> o LOG4J2-1519:  Add ThreadContext.putAll(Map<String,
String>).
>>>>>>>>>>>>>>> o LOG4J2-1520:  Add JUnit Rule
implementations to manage the thread context.
>>>>>>>>>>>>>>> o LOG4J2-1547:  The Core AbstractConfiguration
now tracks its LoggerContext and add Configuration.getLoggerContext().
>>>>>>>>>>>>>>> o LOG4J2-1540:  The Core AbstractManager
now tracks its LoggerContext.
>>>>>>>>>>>>>>> o LOG4J2-1577:  Add a Builder
to the RoutingAppender and deprecate factory method.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Fixed Bugs:
>>>>>>>>>>>>>>> o LOG4J2-1611:  Improved performance
of context data injector for web applications to be on par with standalone applications.
>>>>>>>>>>>>>>> o LOG4J2-1591:  Introduced new
interface LifeCycle2 with stop(long,TimeUnit) method to avoid breaking backwards compatibility
with new Configurator.shutdown(LoggerContext, long, TimeUnit) API.
>>>>>>>>>>>>>>> o LOG4J2-1590:  Fixed issue with
filters extending AbstractFilter that did not override methods with unrolled varargs.
>>>>>>>>>>>>>>> o LOG4J2-1583:  Fixed scrambled
log messages triggered by nested logging from toString() method of a logging parameter object.
Thanks to Larry West.
>>>>>>>>>>>>>>> o LOG4J2-1259:  Log4j threads
are no longer leaking on Tomcat shutdown. Thanks to Misagh Moayyed, Steffen Offermann.
>>>>>>>>>>>>>>> o LOG4J2-1051:  When starting
on Google App Engine, Interpolator now suppresses the NoClassDefFoundError stack trace  for
the jvmrunargs lookup. Thanks to Lukasz Lenart.
>>>>>>>>>>>>>>> o LOG4J2-1582:  When initializing
on platforms where JMX is not available, Interpolator component no longer prints stack trace
for warning messages.
>>>>>>>>>>>>>>> o LOG4J2-1581:  Unregistering
JMX components no longer prints a stack trace when the MBean has already been unregistered.
>>>>>>>>>>>>>>> o LOG4J2-1313:  Support Property
values to be specified in configuration as a value attribute as well as an element. Thanks
to Philipp Knobel, Leon Finker.
>>>>>>>>>>>>>>> o LOG4J2-1575:  (GC) LoggerConfig
now stores configuration properties in a List, not a Map to prevent creating temporary Iterator
objects. Added method LoggerConfig#getPropertyList(), deprecated method #getProperties().
>>>>>>>>>>>>>>> o LOG4J2-1457:  Fixed class loader
deadlock when using async logging and extended stack trace pattern. Thanks to Leon Finker.
>>>>>>>>>>>>>>> o LOG4J2-1563:  Fix to prevent
Log4j 2.6.2 and higher from losing exceptions when a security manager is present. Thanks to
Jason Tedor.
>>>>>>>>>>>>>>> o LOG4J2-1530:  Fixed issue where
LogEvent.getContextStack() returned null.
>>>>>>>>>>>>>>> o LOG4J2-1518:  Prevent deadlock
in Async Loggers when queue is full and logged Object's toString() logs another message. Thanks
to Leon Finker.
>>>>>>>>>>>>>>> o LOG4J2-1542:  Prevent ArrayIndexOutOfBoundsException
in ParameterizedMessage.formatTo for single-char or empty messages. Thanks to Rogério Lecarião
Leite.
>>>>>>>>>>>>>>> o LOG4J2-1549:  Fixed issue where
AsyncLoggerContextSelector+PropertiesConfigurationBuilder defaulted to includeLocation=true.
Thanks to Jason Bedard.
>>>>>>>>>>>>>>> o LOG4J2-1562:  Prevent SocketAppender
memory usage from growing unbounded if it cannot connect to a server.
>>>>>>>>>>>>>>> o LOG4J2-1559:  Prevent NPE in
Level.isInRange. Thanks to Andrey Plotkin.
>>>>>>>>>>>>>>> o LOG4J2-1511:  DynamicThresholdFilter
filtered incorrectly when params were passed as individual arguments instead of varargs. Thanks
to Srikanth Surukuntu.
>>>>>>>>>>>>>>> o LOG4J2-1548:  [CronTriggeringPolicy]
ConfigurationScheduler scheduled the task infinitely after first fire.
>>>>>>>>>>>>>>> o LOG4J2-1506:  Log4j should
not unregister JMX MBeans when log4j2.disable.jmx property is true. Thanks to Johannes Schleger.
>>>>>>>>>>>>>>> o LOG4J2-1490:  Log4j2 should
postpone creating log file until the appender actually receives an event. Thanks to Krzysztof
Taborski.
>>>>>>>>>>>>>>> o LOG4J2-1320:  Support loading
custom plugins from jar files and directories whose classpath entries use the "vfs" URL protocol.
Thanks to Paresh Varke, Pierrick Hymbert.
>>>>>>>>>>>>>>> o LOG4J2-1541:  Fix file handle
resource leak in XmlConfiguration.XmlConfiguration(ConfigurationSource).
>>>>>>>>>>>>>>> o LOG4J2-1538:  Prevent NPE when
dynamically removing filters. Thanks to Igor Karpov.
>>>>>>>>>>>>>>> o LOG4J2-1532:  Attributes were
not merged properly in composite configurations.
>>>>>>>>>>>>>>> o LOG4J2-1529:  Attributes were
not merged properly in composite configurations. Thanks to Sridevi Narra.
>>>>>>>>>>>>>>> o LOG4J2-1527:  Prevent NPE in
RingBufferLogEvent.getFormattedMessage() when used in web applications. Thanks to Jose Leon.
>>>>>>>>>>>>>>> o LOG4J2-905:  Added ability
to disable (date) lookup completely for compatibility with other libraries like Camel. Thanks
to Moritz Löser.
>>>>>>>>>>>>>>> o LOG4J2-1526:  Added support
for setting StatusLogger destination in ConfigurationBuilder.
>>>>>>>>>>>>>>> o LOG4J2-1448:  Allow comma separated
agents, host list to be passed to FlumeAppender. Thanks to Keith Laban.
>>>>>>>>>>>>>>> o LOG4J2-1500:  Merging configurations
failed with an NPE when comparing Nodes with different attributes. Thanks to Jose Leon.
>>>>>>>>>>>>>>> o LOG4J2-1482:  Fixed improper
header in CsvParameterLayout. Thanks to Sumit Singhal.
>>>>>>>>>>>>>>> o LOG4J2-1199:  Documented that
JVM Input Arguments Lookup (JMX) is not available on Google App Engine.
>>>>>>>>>>>>>>> o LOG4J2-1438:  (GC) Added method
getParameter() to ObjectMessage (and ReusableObjectMessage).
>>>>>>>>>>>>>>> o LOG4J2-1488:  (GC) Fixed ISO8601
%date conversion pattern with a period '.' separator for milliseconds is now garbage free.
Thanks to Richard Zschech.
>>>>>>>>>>>>>>> o LOG4J2-1489:  (GC) Fixed %date
conversion patterns with a timezone parameter are now garbage free. Thanks to Richard Zschech.
>>>>>>>>>>>>>>> o LOG4J2-1279:  Prevent NullPointerException
in FastDateParser$TimeZoneStrategy. Thanks to Tony Baines.
>>>>>>>>>>>>>>> o LOG4J2-1341:  (GC) HighlightConverter
and StyleConverter are now GC-free. Thanks to Richard Zschech.
>>>>>>>>>>>>>>> o LOG4J2-1467:  [OSGi] Fixed
missing import package. Thanks to Ralf, Gary Gregory.
>>>>>>>>>>>>>>> o LOG4J2-351:  [OSGi] Fixed wrong
Fragment-Host in manifest files. Thanks to Roland Weiglhofer.
>>>>>>>>>>>>>>> o LOG4J2-1313:  Properties declared
in configuration can now have their value either in the element body or in an attribute named
"value". Thanks to Philipp Knobel.
>>>>>>>>>>>>>>> o LOG4J2-1235:  org.apache.logging.log4j.core.appender.routing.IdlePurgePolicy
was not working correctly. Thanks to Niranjan Rao, Sascha Scholz, Aleksey Zvolinsky.
>>>>>>>>>>>>>>> o LOG4J2-1502:  Fixed issue where
CsvParameterLayout and CsvLogEventLayout inserted NUL characters if data starts with {, (,
[ or " Thanks to Sumit Singhal.
>>>>>>>>>>>>>>> o LOG4J2-1573:  Layout is no
longer optional. Thanks to Steffen Offermann.
>>>>>>>>>>>>>>> o LOG4J2-1608:  ServletAppender
does not provide throwable object to ServletContext.
>>>>>>>>>>>>>>> o LOG4J2-1599:  Prevent potential
NPE in org.apache.logging.log4j.message.ParameterFormatter.formatMessage3(StringBuilder, char[],
int, Object[], int, int[]).
>>>>>>>>>>>>>>> o LOG4J2-1600:  Prevent potential
NPE due to org.apache.logging.log4j.core.layout.MarkerPatternSelector.createSelector(PatternMatch[],
String, boolean, boolean, Configuration).
>>>>>>>>>>>>>>> o LOG4J2-1601:  Prevent potential
NPE due to org.apache.logging.log4j.core.layout.ScriptPatternSelector.createSelector(AbstractScript,
PatternMatch[], String, boolean, boolean, Configuration).
>>>>>>>>>>>>>>> o LOG4J2-1602:  Prevent potential
NPE in org.apache.logging.log4j.core.util.datetime.FormatCache.MultipartKey.equals(Object)
when object is null.
>>>>>>>>>>>>>>> o LOG4J2-1603:  Redo hashCode()
and equals() methods in org.apache.logging.log4j.core.net.ssl classes.
>>>>>>>>>>>>>>> o LOG4J2-1610:  Add targetNamespace
to log4j-config.xsd. GitHub #43. Thanks to Shubhankar.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Changes:
>>>>>>>>>>>>>>> o LOG4J2-1604:  Log4j2 TcpSocketServer
in background. Thanks to Colin Hillman.
>>>>>>>>>>>>>>> o LOG4J2-1574:  Allow the RollingFileAppender
to use default pattern layout.
>>>>>>>>>>>>>>> o LOG4J2-1556:  Custom Log4j
threads now extend Log4jThread.
>>>>>>>>>>>>>>> o LOG4J2-1605:  Improve error
messages for TcpSocketServer and UdpSocketServer.
>>>>>>>>>>>>>>> o LOG4J2-1458:  Updated Jackson
from 2.7.5 to 2.8.0.
>>>>>>>>>>>>>>> o LOG4J2-1494:  Updated Jackson
from 2.8.0 to 2.8.1.
>>>>>>>>>>>>>>> o LOG4J2-1569:  Updated Jackson
from 2.8.1 to 2.8.2.
>>>>>>>>>>>>>>> o LOG4J2-1598:  Updated Jackson
from 2.8.2 to 2.8.3.
>>>>>>>>>>>>>>> o LOG4J2-1495:  Updated LMAX
Disruptor from 3.3.4 to 3.3.5.
>>>>>>>>>>>>>>> o LOG4J2-1496:  Updated Kafka
client from 0.9.1.0 to 0.10.0.0.
>>>>>>>>>>>>>>> o LOG4J2-1533:  Updated Kafka
client from 0.10.0.0 to 0.10.0.1.
>>>>>>>>>>>>>>> o LOG4J2-1487:  Updated JMS test
from ActiveMQ 5.13.3 to 5.13.4.
>>>>>>>>>>>>>>> o LOG4J2-1551:  Updated JMS test
from ActiveMQ 5.13.4 to 5.14.0.
>>>>>>>>>>>>>>> o LOG4J2-1543:  Removed deprecated
Core API org.apache.logging.log4j.core.util.Constants.UTF_8.
>>>>>>>>>>>>>>> o LOG4J2-1544:  Removed deprecated
Core API org.apache.logging.log4j.core.util.Assert.requireNonNull(T, String).
>>>>>>>>>>>>>>> o LOG4J2-1545:  Removed deprecated
Web API org.apache.logging.log4j.web.WebLookup.getServletContext().
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Tag:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> a)  for a new copy do "git clone
https://git-wip-us.apache.org/repos/asf/logging-log4j2.git" and then "git checkout tags/log4j-2.7-rc1”
>>>>>>>>>>>>>>> b) for an existing working copy
to “git pull” and then “git checkout tags/log4j-2.7-rc1”
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Web Site:  <http://rgoers.github.io/log4j2-site/index.html>http://rgoers.github.io/log4j2-site/index.html
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Artifacts: https://repository.apache.org/content/repositories/orgapachelogging-1021/
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> You may download all the artifacts
by executing:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> wget -e robots=off --cut-dirs=7
-nH -r -p -np --no-check-certificate https://repository.apache.org/content/repositories/orgapachelogging-1021/org/apache/logging/log4j/
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Ralph
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>>> mikael.staldal@magine.com
>>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm,
Sweden  |
>>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Privileged and/or Confidential Information
may be contained
>>>>>>>>>>>>>> in this message. If you are not the
addressee indicated in this message
>>>>>>>>>>>>>> (or responsible for delivery of the
message to such a
>>>>>>>>>>>>>> person), you may not copy or deliver
this message to anyone. In such case,
>>>>>>>>>>>>>> you should destroy this message and
kindly notify the sender
>>>>>>>>>>>>>> by reply email.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>
>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>> mikael.staldal@magine.com
>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm,
Sweden  |
>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>
>>>>>>>>>>>>> Privileged and/or Confidential Information
may be contained in
>>>>>>>>>>>>> this message. If you are not the addressee
indicated in this message
>>>>>>>>>>>>> (or responsible for delivery of the message
to such a person),
>>>>>>>>>>>>> you may not copy or deliver this message
to anyone. In such case,
>>>>>>>>>>>>> you should destroy this message and kindly
notify the sender
>>>>>>>>>>>>> by reply email.
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>>>>>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>>>> <http://www.manning.com/tahchiev/>
>>>>>>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>
>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>> Senior software developer
>>>>>>>>>>>
>>>>>>>>>>> *Magine TV*
>>>>>>>>>>> mikael.staldal@magine.com
>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden
 |   www.magine.com
>>>>>>>>>>>
>>>>>>>>>>> Privileged and/or Confidential Information may
be contained in
>>>>>>>>>>> this message. If you are not the addressee indicated
in this message
>>>>>>>>>>> (or responsible for delivery of the message to
such a person),
>>>>>>>>>>> you may not copy or deliver this message to anyone.
In such case,
>>>>>>>>>>> you should destroy this message and kindly notify
the sender by
>>>>>>>>>>> reply email.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>>>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>> <http://www.manning.com/tahchiev/>
>>>>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> [image: MagineTV]
>>>>>>>>>
>>>>>>>>> *Mikael Ståldal*
>>>>>>>>> Senior software developer
>>>>>>>>>
>>>>>>>>> *Magine TV*
>>>>>>>>> mikael.staldal@magine.com
>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>>
>>>>>>>>> Privileged and/or Confidential Information may be contained
in
>>>>>>>>> this message. If you are not the addressee indicated
in this message
>>>>>>>>> (or responsible for delivery of the message to such a
person), you
>>>>>>>>> may not copy or deliver this message to anyone. In such
case,
>>>>>>>>> you should destroy this message and kindly notify the
sender by
>>>>>>>>> reply email.
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> [image: MagineTV]
>>>>>>>>
>>>>>>>> *Mikael Ståldal*
>>>>>>>> Senior software developer
>>>>>>>>
>>>>>>>> *Magine TV*
>>>>>>>> mikael.staldal@magine.com
>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>
>>>>>>>> Privileged and/or Confidential Information may be contained
in this
>>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>>> (or responsible for delivery of the message to such a person),
you
>>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>>> you should destroy this message and kindly notify the sender
by
>>>>>>>> reply email.
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>> Home: http://garygregory.com/
>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> [image: MagineTV]
>>>>>>
>>>>>> *Mikael Ståldal*
>>>>>> Senior software developer
>>>>>>
>>>>>> *Magine TV*
>>>>>> mikael.staldal@magine.com
>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>
>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>> message. If you are not the addressee indicated in this message
>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>> you should destroy this message and kindly notify the sender by reply
>>>>>> email.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> [image: MagineTV]
>>>>>
>>>>> *Mikael Ståldal*
>>>>> Senior software developer
>>>>>
>>>>> *Magine TV*
>>>>> mikael.staldal@magine.com
>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>
>>>>> Privileged and/or Confidential Information may be contained in this
>>>>> message. If you are not the addressee indicated in this message
>>>>> (or responsible for delivery of the message to such a person), you may
>>>>> not copy or deliver this message to anyone. In such case,
>>>>> you should destroy this message and kindly notify the sender by reply
>>>>> email.
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> E-Mail: garydgregory@gmail.com | ggregory@apache.org
>>>> Java Persistence with Hibernate, Second Edition
>>>> <http://www.manning.com/bauer3/>
>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>> Blog: http://garygregory.wordpress.com
>>>> Home: http://garygregory.com/
>>>> Tweet! http://twitter.com/GaryGregory
>>>>
>>>
>>>
>>>
>>> --
>>> [image: MagineTV]
>>>
>>> *Mikael Ståldal*
>>> Senior software developer
>>>
>>> *Magine TV*
>>> mikael.staldal@magine.com
>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>
>>> Privileged and/or Confidential Information may be contained in this
>>> message. If you are not the addressee indicated in this message
>>> (or responsible for delivery of the message to such a person), you may
>>> not copy or deliver this message to anyone. In such case,
>>> you should destroy this message and kindly notify the sender by reply
>>> email.
>>>
>>>
>>>
>>
>>
>> --
>> [image: MagineTV]
>>
>> *Mikael Ståldal*
>> Senior software developer
>>
>> *Magine TV*
>> mikael.staldal@magine.com
>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>
>> Privileged and/or Confidential Information may be contained in this
>> message. If you are not the addressee indicated in this message
>> (or responsible for delivery of the message to such a person), you may
>> not copy or deliver this message to anyone. In such case,
>> you should destroy this message and kindly notify the sender by reply
>> email.
>>
>
>
>
> --
> E-Mail: garydgregory@gmail.com | ggregory@apache.org
> Java Persistence with Hibernate, Second Edition
> <http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>



-- 
E-Mail: garydgregory@gmail.com | ggregory@apache.org
Java Persistence with Hibernate, Second Edition
<http://www.manning.com/bauer3/>
JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
Spring Batch in Action <http://www.manning.com/templier/>
Blog: http://garygregory.wordpress.com
Home: http://garygregory.com/
Tweet! http://twitter.com/GaryGregory

Mime
View raw message