I'll an eye out for it.

G

On Tue, Mar 22, 2016 at 9:14 AM, Remko Popma <[email protected]> wrote:

> Ouch, scary!
> Would it be possible to reproduce this? I wonder why this is happening...
>
> I updated TextEncoderHelper with a fallback mechanism to String.getBytes()
> in case an error occurs.
> That will also log the text that could not be encoded to the StatusLogger
> at ERROR level.
>
> If it happens again, can you post the text that causes the problem?
> Thanks!
>
>
> On Wed, Mar 23, 2016 at 2:25 AM, Gary Gregory <[email protected]>
> wrote:
>
>> Coincidentally, I just got:
>>
>> 2016-03-22 07:58:19,034 main ERROR An exception occurred processing
>> Appender RollingFile java.lang.IllegalArgumentException
>> at java.nio.Buffer.position(Buffer.java:236)
>> at sun.nio.cs.UTF_8.updatePositions(UTF_8.java:78)
>> at sun.nio.cs.UTF_8$Encoder.encodeArrayLoop(UTF_8.java:564)
>> at sun.nio.cs.UTF_8$Encoder.encodeLoop(UTF_8.java:619)
>> at java.nio.charset.CharsetEncoder.encode(CharsetEncoder.java:561)
>> at
>> org.apache.logging.log4j.core.layout.TextEncoderHelper.encodeAsMuchAsPossible(TextEncoderHelper.java:93)
>> at
>> org.apache.logging.log4j.core.layout.TextEncoderHelper.encode(TextEncoderHelper.java:79)
>> at
>> org.apache.logging.log4j.core.layout.TextEncoderHelper.encodeText(TextEncoderHelper.java:66)
>> at
>> org.apache.logging.log4j.core.layout.PatternLayout.encode(PatternLayout.java:185)
>> at
>> org.apache.logging.log4j.core.layout.AbstractLayout.encode(AbstractLayout.java:1)
>> at
>> org.apache.logging.log4j.core.appender.RollingRandomAccessFileAppender.append(RollingRandomAccessFileAppender.java:101)
>> at
>> org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:155)
>> at
>> org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:128)
>> at
>> org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:119)
>> at
>> org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:84)
>> at
>> org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:387)
>> at
>> org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:372)
>> at
>> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:356)
>> at
>> org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:346)
>> at
>> org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:63)
>> at org.apache.logging.log4j.core.Logger.logMessage(Logger.java:146)
>> at
>> org.apache.logging.log4j.spi.AbstractLogger.throwing(AbstractLogger.java:1263)
>> at
>> org.apache.logging.log4j.spi.AbstractLogger.throwing(AbstractLogger.java:1244)
>> at com.rs.jdbc.dv.DvLogger.throwingIOException(DvLogger.java:245)
>>
>> With a recent 2.6 SNAPSHOT.
>>
>> Gary
>>
>> On Tue, Mar 22, 2016 at 4:58 AM, Mikael Ståldal <
>> [email protected]> wrote:
>>
>>> I fixed it while moving the field and method to AbstractStringLayout (to
>>> be able to use from GelfLayout as well).
>>>
>>> On Tue, Mar 22, 2016 at 12:55 PM, Mikael Ståldal <
>>> [email protected]> wrote:
>>>
>>>> I am working on a fix.
>>>>
>>>> On Tue, Mar 22, 2016 at 11:52 AM, Remko Popma <[email protected]>
>>>> wrote:
>>>>
>>>>> I think you're right. This should be an instance field, not a static
>>>>> field. Good catch!
>>>>>
>>>>>
>>>>> On Tuesday, 22 March 2016, Mikael Ståldal <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> In PatternLayout we have:
>>>>>>
>>>>>> private static final ThreadLocal<TextEncoderHelper> textEncoderHelper =  
>>>>>>    new ThreadLocal<>();
>>>>>>
>>>>>> private TextEncoderHelper getCachedTextEncoderHelper() {
>>>>>>     TextEncoderHelper result = textEncoderHelper.get();
>>>>>>     if (result == null) {
>>>>>>         result = new TextEncoderHelper(getCharset());
>>>>>>         textEncoderHelper.set(result);
>>>>>>     }
>>>>>>     return result;
>>>>>> }
>>>>>>
>>>>>>
>>>>>> Does this really work properly? What if we have several instance of
>>>>>> PatternLayout with different charsets?
>>>>>>
>>>>>> --
>>>>>> [image: MagineTV]
>>>>>>
>>>>>> *Mikael Ståldal*
>>>>>> Senior software developer
>>>>>>
>>>>>> *Magine TV*
>>>>>> [email protected]
>>>>>> 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*
>>>> [email protected]
>>>> 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*
>>> [email protected]
>>> 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: [email protected] | [email protected]
>> 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: [email protected] | [email protected]
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

Reply via email to