Jelajahi Sumber

ZOOKEEPER-2393: Revert run-time dependency on log4j and slf4j-log4j12 (Arshad Mohammad via cnauroth)

git-svn-id: https://svn.apache.org/repos/asf/zookeeper/trunk@1735820 13f79535-47bb-0310-9956-ffa450edef68
Chris Nauroth 9 tahun lalu
induk
melakukan
c1c42eee0b

+ 3 - 0
CHANGES.txt

@@ -288,6 +288,9 @@ BUGFIXES:
 
 
   ZOOKEEPER-2392 Update netty to 3.7.1.Final (Hendy Irawan via phunt)
   ZOOKEEPER-2392 Update netty to 3.7.1.Final (Hendy Irawan via phunt)
 
 
+  ZOOKEEPER-2393: Revert run-time dependency on log4j and slf4j-log4j12
+  (Arshad Mohammad via cnauroth)
+
 IMPROVEMENTS:
 IMPROVEMENTS:
   ZOOKEEPER-1660 Documentation for Dynamic Reconfiguration (Reed Wanderman-Milne via shralex)  
   ZOOKEEPER-1660 Documentation for Dynamic Reconfiguration (Reed Wanderman-Milne via shralex)  
 
 

+ 1 - 42
build.xml

@@ -231,14 +231,6 @@ xmlns:cs="antlib:com.puppycrawl.tools.checkstyle.ant">
       </fileset>
       </fileset>
       <path refid="java.classpath"/>
       <path refid="java.classpath"/>
     </path>
     </path>
-	<path id="test.java.classpath.without.log4j">
-        <pathelement location="${test.java.classes}" />
-        <fileset dir="${ivy.test.lib}">
-            <include name="**/*.jar" />
-            <exclude name="**/*log4j*.jar"/>
-        </fileset>
-        <path refid="java.classpath"/>
-    </path>
 
 
     <!-- ====================================================== -->
     <!-- ====================================================== -->
     <!-- Generate and compile the Java files                    -->
     <!-- Generate and compile the Java files                    -->
@@ -1176,46 +1168,15 @@ xmlns:cs="antlib:com.puppycrawl.tools.checkstyle.ant">
       <fileset id="quicktest.files" dir="${test.src.dir}">
       <fileset id="quicktest.files" dir="${test.src.dir}">
         <include name="**/*${test.category}Test.java" />
         <include name="**/*${test.category}Test.java" />
         <exclude name="**/*HammerTest.java" />
         <exclude name="**/*HammerTest.java" />
-        <exclude name="**/*${test.category}NoLog4j*.java"/>
       </fileset>
       </fileset>
       <fileset id="fulltest.files" dir="${test.src.dir}">
       <fileset id="fulltest.files" dir="${test.src.dir}">
         <include name="**/*${test.category}Test.java" />
         <include name="**/*${test.category}Test.java" />
-        <exclude name="**/*${test.category}NoLog4j*.java"/>
       </fileset>
       </fileset>
       <fileset id="testcase.files" dir="${test.src.dir}">
       <fileset id="testcase.files" dir="${test.src.dir}">
         <include name="**/${testcase}.java" />
         <include name="**/${testcase}.java" />
-        <exclude name="**/*${test.category}NoLog4j*.java"/>
       </fileset>
       </fileset>
     </target>
     </target>
 
 
-    <target name="junit.run.nolog4j">
-        <junit showoutput="${test.output}"
-               printsummary="${test.junit.printsummary}"
-               haltonfailure="${test.junit.haltonfailure}"
-               fork="yes"
-               forkmode="${test.junit.fork.mode}"
-               maxmemory="${test.junit.maxmem}"
-               dir="${basedir}" timeout="${test.timeout}"
-               errorProperty="tests.failed.nolog4j"
-               failureProperty="tests.failed.nolog4j">
-            <sysproperty key="build.test.dir" value="${test.tmp.dir}"/>
-            <sysproperty key="test.data.dir" value="${test.data.dir}"/>
-            <!-- superDigest is used by the tests/main code. If this is not set
-                 as part of starting the jvm there is no guarantee that the static
-                 initializers in the java code will see this (esp when running
-                 with junit fork mode set to "once")-->
-            <sysproperty key="zookeeper.DigestAuthenticationProvider.superDigest"
-                         value="super:D/InIHSb7yEEbrWz8b9l71RjZJU="/>
-            <classpath refid="test.java.classpath.without.log4j"/>
-            <formatter type="${test.junit.output.format}"/>
-            <batchtest todir="${test.log.dir}" if="fulltest">
-                <fileset dir="${test.src.dir}">
-                    <include name="**/*${test.category}NoLog4j*.java"/>
-                </fileset>
-            </batchtest>
-        </junit>
-        <fail if="tests.failed.nolog4j">Tests failed!</fail>
-    </target>
     <target name="junit.run" depends="junit-init,junit.run-single,junit.run-concurrent" />
     <target name="junit.run" depends="junit-init,junit.run-single,junit.run-concurrent" />
 
 
     <target name="junit.run-concurrent" if="ant.supports.concurrent.junit.processes">
     <target name="junit.run-concurrent" if="ant.supports.concurrent.junit.processes">
@@ -1368,11 +1329,9 @@ xmlns:cs="antlib:com.puppycrawl.tools.checkstyle.ant">
     
     
     <target name="test-core-java" depends="test-init, test-category, junit.run"/>
     <target name="test-core-java" depends="test-init, test-category, junit.run"/>
 
 
-    <target name="test-core-java-nolog4j" depends="test-init, test-category, junit.run.nolog4j"/>
-
     <target name="test-core-cppunit" depends="test-init, test-category, call-test-cppunit"/>
     <target name="test-core-cppunit" depends="test-init, test-category, call-test-cppunit"/>
 
 
-    <target name="test-core" depends="test-core-java, test-core-java-nolog4j, test-core-cppunit"/>
+    <target name="test-core" depends="test-core-java, test-core-cppunit"/>
 
 
     <!-- ====================================================== -->
     <!-- ====================================================== -->
     <!-- Run optional third-party tool targets                  -->
     <!-- Run optional third-party tool targets                  -->

TEMPAT SAMPAH
docs/index.pdf


TEMPAT SAMPAH
docs/javaExample.pdf


TEMPAT SAMPAH
docs/linkmap.pdf


TEMPAT SAMPAH
docs/recipes.pdf


+ 4 - 4
docs/zookeeperAdmin.html

@@ -615,7 +615,7 @@ server.3=zoo3:2888:3888</pre>
 
 
           
           
 <p>
 <p>
-<span class="codefrag computeroutput">$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.16.jar:conf \
+<span class="codefrag computeroutput">$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.17.jar:conf \
               org.apache.zookeeper.server.quorum.QuorumPeerMain zoo.cfg
               org.apache.zookeeper.server.quorum.QuorumPeerMain zoo.cfg
           </span>
           </span>
 </p>
 </p>
@@ -652,7 +652,7 @@ server.3=zoo3:2888:3888</pre>
 
 
               
               
 <p>
 <p>
-<span class="codefrag computeroutput">$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.16.jar:conf:src/java/lib/jline-2.11.jar \
+<span class="codefrag computeroutput">$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.17.jar:conf:src/java/lib/jline-2.11.jar \
       org.apache.zookeeper.ZooKeeperMain -server 127.0.0.1:2181</span>
       org.apache.zookeeper.ZooKeeperMain -server 127.0.0.1:2181</span>
 </p>
 </p>
             
             
@@ -976,7 +976,7 @@ server.3=zoo3:2888:3888</pre>
         in the unlikely event a recent log has become corrupted). This
         in the unlikely event a recent log has become corrupted). This
         can be run as a cron job on the ZooKeeper server machines to
         can be run as a cron job on the ZooKeeper server machines to
         clean up the logs daily.</p>
         clean up the logs daily.</p>
-<pre class="code"> java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.16.jar:conf org.apache.zookeeper.server.PurgeTxnLog &lt;dataDir&gt; &lt;snapDir&gt; -n &lt;count&gt;</pre>
+<pre class="code"> java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.17.jar:conf org.apache.zookeeper.server.PurgeTxnLog &lt;dataDir&gt; &lt;snapDir&gt; -n &lt;count&gt;</pre>
 <p>Automatic purging of the snapshots and corresponding
 <p>Automatic purging of the snapshots and corresponding
         transaction logs was introduced in version 3.4.0 and can be
         transaction logs was introduced in version 3.4.0 and can be
         enabled via the following configuration parameters <strong>autopurge.snapRetainCount</strong> and <strong>autopurge.purgeInterval</strong>. For more on
         enabled via the following configuration parameters <strong>autopurge.snapRetainCount</strong> and <strong>autopurge.purgeInterval</strong>. For more on
@@ -1028,7 +1028,7 @@ server.3=zoo3:2888:3888</pre>
 <h3 class="h4">Logging</h3>
 <h3 class="h4">Logging</h3>
 <p>
 <p>
         ZooKeeper uses <strong><a href="http://www.slf4j.org">SLF4J</a></strong>
         ZooKeeper uses <strong><a href="http://www.slf4j.org">SLF4J</a></strong>
-        version 1.7 as its logging infrastructure. For backward compatibility it is bound to
+        version 1.7.5 as its logging infrastructure. For backward compatibility it is bound to
         <strong>LOG4J</strong> but you can use
         <strong>LOG4J</strong> but you can use
         <strong><a href="http://logback.qos.ch/">LOGBack</a></strong>
         <strong><a href="http://logback.qos.ch/">LOGBack</a></strong>
         or any other supported logging framework of your choice.
         or any other supported logging framework of your choice.

TEMPAT SAMPAH
docs/zookeeperAdmin.pdf


TEMPAT SAMPAH
docs/zookeeperHierarchicalQuorums.pdf


TEMPAT SAMPAH
docs/zookeeperInternals.pdf


TEMPAT SAMPAH
docs/zookeeperJMX.pdf


TEMPAT SAMPAH
docs/zookeeperObservers.pdf


TEMPAT SAMPAH
docs/zookeeperOver.pdf


TEMPAT SAMPAH
docs/zookeeperProgrammers.pdf


TEMPAT SAMPAH
docs/zookeeperQuotas.pdf


TEMPAT SAMPAH
docs/zookeeperReconfig.pdf


TEMPAT SAMPAH
docs/zookeeperStarted.pdf


TEMPAT SAMPAH
docs/zookeeperTutorial.pdf


+ 2 - 2
ivy.xml

@@ -41,13 +41,13 @@
 
 
   <dependencies>
   <dependencies>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
-    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false" conf="test->default"/>
+    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false"/>
     <dependency org="commons-cli" name="commons-cli" rev="1.2" />
     <dependency org="commons-cli" name="commons-cli" rev="1.2" />
   
   
     <dependency org="org.apache.maven.wagon" name="wagon-http" rev="2.4" conf="mvn-ant-task->default"/>
     <dependency org="org.apache.maven.wagon" name="wagon-http" rev="2.4" conf="mvn-ant-task->default"/>
     <dependency org="org.apache.maven" name="maven-ant-tasks" rev="2.1.3" conf="mvn-ant-task->master"/>
     <dependency org="org.apache.maven" name="maven-ant-tasks" rev="2.1.3" conf="mvn-ant-task->master"/>
     <!-- transitive false turns off dependency checking, log4j deps seem borked -->
     <!-- transitive false turns off dependency checking, log4j deps seem borked -->
-    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false" conf="test->default"/>
+    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false"/>
     <dependency org="jline" name="jline" rev="2.11" transitive="false" conf="optional->default"/>
     <dependency org="jline" name="jline" rev="2.11" transitive="false" conf="optional->default"/>
 
 
     <dependency org="io.netty" name="netty" conf="default" rev="3.7.1.Final">
     <dependency org="io.netty" name="netty" conf="default" rev="3.7.1.Final">

+ 2 - 2
src/contrib/loggraph/ivy.xml

@@ -32,10 +32,10 @@
 
 
   <dependencies>
   <dependencies>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
-    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false" conf="test->default" />
+    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false"/>
   
   
     <!-- transitive false turns off dependency checking, log4j deps seem borked -->
     <!-- transitive false turns off dependency checking, log4j deps seem borked -->
-    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false" conf="test->default" />
+    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false"/>
     <dependency org="org.eclipse.jetty" name="jetty-server" rev="7.0.1.v20091125" />
     <dependency org="org.eclipse.jetty" name="jetty-server" rev="7.0.1.v20091125" />
     <dependency org="org.eclipse.jetty" name="jetty-servlet" rev="7.0.1.v20091125" />
     <dependency org="org.eclipse.jetty" name="jetty-servlet" rev="7.0.1.v20091125" />
     <dependency org="com.googlecode.json-simple" name="json-simple" rev="1.1" />
     <dependency org="com.googlecode.json-simple" name="json-simple" rev="1.1" />

+ 2 - 2
src/contrib/rest/ivy.xml

@@ -32,10 +32,10 @@
 
 
   <dependencies>
   <dependencies>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
-    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false" conf="test->default" />
+    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false"/>
   
   
     <!-- transitive false turns off dependency checking, log4j deps seem borked -->
     <!-- transitive false turns off dependency checking, log4j deps seem borked -->
-    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false" conf="test->default" />
+    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false"/>
     <dependency org="asm" name="asm" rev="3.1" />
     <dependency org="asm" name="asm" rev="3.1" />
     <dependency org="com.sun.grizzly" name="grizzly-servlet-webserver" rev="1.9.8" />
     <dependency org="com.sun.grizzly" name="grizzly-servlet-webserver" rev="1.9.8" />
     <dependency org="com.sun.jersey" name="jersey-server" rev="1.1.5.1" />
     <dependency org="com.sun.jersey" name="jersey-server" rev="1.1.5.1" />

+ 2 - 2
src/contrib/zooinspector/ivy.xml

@@ -35,9 +35,9 @@
     <dependency org="com.google.guava" name="guava" rev="18.0" />
     <dependency org="com.google.guava" name="guava" rev="18.0" />
 
 
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
     <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5"/>
-    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false" conf="test->default" />
+    <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" transitive="false"/>
             
             
-    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false" conf="test->default" />
+    <dependency org="log4j" name="log4j" rev="1.2.17" transitive="false"/>
     <dependency org="junit" name="junit" rev="4.12" conf="test->default"/>
     <dependency org="junit" name="junit" rev="4.12" conf="test->default"/>
     <dependency org="org.apache.rat" name="apache-rat-tasks" 
     <dependency org="org.apache.rat" name="apache-rat-tasks" 
                 rev="0.6" conf="releaseaudit->default"/>
                 rev="0.6" conf="releaseaudit->default"/>

+ 4 - 4
src/docs/src/documentation/content/xdocs/zookeeperAdmin.xml

@@ -260,7 +260,7 @@ server.3=zoo3:2888:3888</programlisting>
           <para>If your configuration file is set up, you can start a
           <para>If your configuration file is set up, you can start a
           ZooKeeper server:</para>
           ZooKeeper server:</para>
 
 
-          <para><computeroutput>$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.16.jar:conf \
+          <para><computeroutput>$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.17.jar:conf \
               org.apache.zookeeper.server.quorum.QuorumPeerMain zoo.cfg
               org.apache.zookeeper.server.quorum.QuorumPeerMain zoo.cfg
           </computeroutput></para>
           </computeroutput></para>
           
           
@@ -286,7 +286,7 @@ server.3=zoo3:2888:3888</programlisting>
               <para>In Java, you can run the following command to execute
               <para>In Java, you can run the following command to execute
               simple operations:</para>
               simple operations:</para>
 
 
-              <para><computeroutput>$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.16.jar:conf:src/java/lib/jline-2.11.jar \
+              <para><computeroutput>$ java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.17.jar:conf:src/java/lib/jline-2.11.jar \
       org.apache.zookeeper.ZooKeeperMain -server 127.0.0.1:2181</computeroutput></para>
       org.apache.zookeeper.ZooKeeperMain -server 127.0.0.1:2181</computeroutput></para>
             </listitem>
             </listitem>
 
 
@@ -543,7 +543,7 @@ server.3=zoo3:2888:3888</programlisting>
         can be run as a cron job on the ZooKeeper server machines to
         can be run as a cron job on the ZooKeeper server machines to
         clean up the logs daily.</para>
         clean up the logs daily.</para>
 
 
-        <programlisting> java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.16.jar:conf org.apache.zookeeper.server.PurgeTxnLog &lt;dataDir&gt; &lt;snapDir&gt; -n &lt;count&gt;</programlisting>
+        <programlisting> java -cp zookeeper.jar:lib/slf4j-api-1.7.5.jar:lib/slf4j-log4j12-1.7.5.jar:lib/log4j-1.2.17.jar:conf org.apache.zookeeper.server.PurgeTxnLog &lt;dataDir&gt; &lt;snapDir&gt; -n &lt;count&gt;</programlisting>
 
 
         <para>Automatic purging of the snapshots and corresponding
         <para>Automatic purging of the snapshots and corresponding
         transaction logs was introduced in version 3.4.0 and can be
         transaction logs was introduced in version 3.4.0 and can be
@@ -620,7 +620,7 @@ server.3=zoo3:2888:3888</programlisting>
 
 
     <para>
     <para>
         ZooKeeper uses <emphasis role="bold"><ulink url="http://www.slf4j.org">SLF4J</ulink></emphasis>
         ZooKeeper uses <emphasis role="bold"><ulink url="http://www.slf4j.org">SLF4J</ulink></emphasis>
-        version 1.7 as its logging infrastructure. For backward compatibility it is bound to
+        version 1.7.5 as its logging infrastructure. For backward compatibility it is bound to
         <emphasis role="bold">LOG4J</emphasis> but you can use
         <emphasis role="bold">LOG4J</emphasis> but you can use
         <emphasis role="bold"><ulink url="http://logback.qos.ch/">LOGBack</ulink></emphasis>
         <emphasis role="bold"><ulink url="http://logback.qos.ch/">LOGBack</ulink></emphasis>
         or any other supported logging framework of your choice.
         or any other supported logging framework of your choice.

+ 0 - 0
src/java/lib/log4j-1.2.16.LICENSE.txt → src/java/lib/log4j-1.2.17.LICENSE.txt