[
https://issues.jboss.org/browse/AS7-1445?page=com.atlassian.jira.plugin.s...
]
Thomas Diesler commented on AS7-1445:
-------------------------------------
Arnaud says,
http://lists.ops4j.org/pipermail/general/2011q3/006701.html
I have done some additional tests on this.
The issue occurs also in previous version of JBoss ( 5 and 6).
Having pax-logging service bundle hang the whole server as well (same
stackoverflow error than with JBoss 7), the issue gone by removing
pax-logging service bundle.
So I tested back in 7 as bundles can be direcly deployed into the
container, it is easier to reproduce the issue.
As I understand, when pax-logging api only is deployed, pax direcltly
use System.out to output logs. I have tested and in this case it works,
but if both are deployed (api and service bundles)
pax-logging use log4j to output logs. In this case stack overflow
occurs when pax try to log something on stdout through its log4j logger
(probably default root logger for pax when there is no configuration)
In this case the logs got through some Jboss classes, then get back to
pax, then get back to jboss, .... until the stack overflow.
According to some posts in JBoss forum it seems that there should not be
any root logger configured for application that comes with their own
log4j configuration.
So if I launch JBoss with
-Dorg.ops4j.pax.logging.DefaultServiceLog.level=FATAL the issue gone,
because it prevents some logs to go through default root logger, until I
can create a log configuration without stdout root logger.
{code}
Logger.log(Level, String) line: 434
LoggingWriter(AbstractLoggingWriter).write(char[], int, int) line: 71
LoggingOutputStream(WriterOutputStream).finish() line: 137
LoggingOutputStream(WriterOutputStream).write(byte[], int, int) line: 106
PrintStream.write(byte[], int, int) line: 430
StdioContext$1(StdioContext$DelegatingPrintStream).write(byte[], int,
int) line: 225
StreamEncoder.writeBytes() line: 202 [local variables unavailable]
StreamEncoder.implWrite(char[], int, int) line: 263
StreamEncoder.write(char[], int, int) line: 106
StreamEncoder.write(String, int, int) line: 116
OutputStreamWriter.write(String, int, int) line: 203
OutputStreamWriter(Writer).write(String) line: 140
QuietWriter.write(String) line: 48
ConsoleAppender(WriterAppender).subAppend(LoggingEvent) line: 310
ConsoleAppender(WriterAppender).append(LoggingEvent) line: 162
ConsoleAppender(AppenderSkeleton).doAppend(LoggingEvent) line: 251
AppenderAttachableImpl.appendLoopOnAppenders(LoggingEvent) line: 66
Logger(Category).callAppenders(LoggingEvent) line: 206
Logger(Category).forcedLog(String, Priority, Object, Throwable) line: 391
Logger(Category).log(String, Priority, Object, Throwable) line: 856
PaxLoggerImpl.log(Priority, Object, Throwable) line: 231
JdkHandler.publish(LogRecord) line: 106
LoggerNode.publish(ExtLogRecord) line: 283
LoggerNode.publish(ExtLogRecord) line: 291
Logger.logRaw(ExtLogRecord) line: 649
Logger.log(Level, String) line: 434
LoggingWriter(AbstractLoggingWriter).write(char[], int, int) line: 71
LoggingOutputStream(WriterOutputStream).finish() line: 137
LoggingOutputStream(WriterOutputStream).flush() line: 155
PrintStream.write(byte[], int, int) line: 432
StdioContext$1(StdioContext$DelegatingPrintStream).write(byte[], int,
int) line: 225
StreamEncoder.writeBytes() line: 202 [local variables unavailable]
StreamEncoder.implFlushBuffer() line: 272 [local variables unavailable]
StreamEncoder.implFlush() line: 276 [local variables unavailable]
StreamEncoder.flush() line: 122 [local variables unavailable]
OutputStreamWriter.flush() line: 212 [local variables unavailable]
QuietWriter.flush() line: 59
ConsoleAppender(WriterAppender).subAppend(LoggingEvent) line: 324
ConsoleAppender(WriterAppender).append(LoggingEvent) line: 162
ConsoleAppender(AppenderSkeleton).doAppend(LoggingEvent) line: 251
AppenderAttachableImpl.appendLoopOnAppenders(LoggingEvent) line: 66
Logger(Category).callAppenders(LoggingEvent) line: 206
Logger(Category).forcedLog(String, Priority, Object, Throwable) line: 391
Logger(Category).log(String, Priority, Object, Throwable) line: 856
PaxLoggerImpl.debug(String, Throwable) line: 132
PaxLoggingServiceImpl.log(Bundle, ServiceReference, int, String,
Throwable) line: 149
PaxLoggingServiceImpl.log(Bundle, int, String, Throwable) line: 115
FrameworkHandler.bundleChanged(BundleEvent) line: 93
{code}
Pax-Logging deployment causes stack overflow
--------------------------------------------
Key: AS7-1445
URL:
https://issues.jboss.org/browse/AS7-1445
Project: Application Server 7
Issue Type: Bug
Reporter: Thomas Diesler
Assignee: Thomas Diesler
Arnaud says,
http://lists.ops4j.org/pipermail/general/2011q3/006668.html
Trying to deploy an application using pax-logging (1.6.3), it seems to
hang JBoss AS (7)
By waiting some time I had the stackoverflow stack trace above, os I
suspected something wrong with pax-logging service.
If I remove pax-logging service from my application, it works fine.
As JBoss 7 allow to deploy bundles direcly, I tried to deploy
pax-logging-api and pax-logging-service directly and it seems to hand
Jboss as well, the server stop to answer, but anything is log
A simple way t reproduce, start a JBoss AS 7 server, go to the JBoss
console (
http://127.0.0.1:9990/console/App.html), the console page
should be displayed
Copy pax-logging-api and pax-logging-service in
$JBOSS_HOME/standalone/deployments, wait for pax logging bundles to be
deployed
Then try to go to the jboss console again, it does not respond anymore.
Is it a known issue ? is there any special configuration to have pax
logging service to work with JBoss 7 ?
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira