继续关于MPH(Matrix.org Proxy Hunter)项目的问题。今天发现了令人郁闷的事情,首先是测试程序在我的机器上运行总是到最后挂住,似乎是线程结束不了似的,花了好久才确定这是IBM JDK 1.4.2 GA的问题(还记得上次和AJDT的冲突么),在Sun和BEA最新的JDK上都没问题——虽说cauchy设定的缺省线程数(256)是有点点bt(TNND,为了能跑这个dd,俺不得不对bt的xpsp2打了这个TCPIP.sys的patch),但是现在这么nb的硬件资源,不用白不用嘛。。。然后cauchy试图下载1.4.2sp1,发现IBM现在要“审查”才给下载-_-bbb,cauchy于是拆了自己的椅子以泄愤。

另一个问题是关于log4j的配置的,是我们对log4j.xml的语法有了全新的认识,原来root节点下的appender是普适的,即使你针对特定的package定义了单独的logger,root中的appender总是会起作用,看下面的代码段:

<logger name="org.matrix">
<level value="INFO" />
<!--
<appender-ref ref="file_appender"/>
<appender-ref ref="CONSOLE" />
-->
</logger>

<root>
<level value="ERROR" />
<!--
<appender-ref ref="file_appender"/>
-->
<appender-ref ref="CONSOLE" />
</root>

如果<logger name=”org.matrix”>中的<appender-ref ref=”CONSOLE” />从注释中移出来,那么org.matrix包下的debug log都会在root和本logger的作用下出现两次(CONSOLE)。

不管这个功能是bug还是by design,我们认为这是不合理的。