From a55efe952c89d15aede2c2bb30b4ab5f02afe667 Mon Sep 17 00:00:00 2001 From: Bosanac Dejan Date: Tue, 17 Nov 2009 13:19:35 +0000 Subject: [PATCH] https://issues.apache.org/activemq/browse/AMQ-2499 - reverting previous commit git-svn-id: https://svn.apache.org/repos/asf/activemq/trunk@881270 13f79535-47bb-0310-9956-ffa450edef68 --- .../kaha/impl/async/DataFileAppender.java | 29 ++++--------------- .../kaha/impl/async/NIODataFileAppender.java | 21 +------------- .../activemq/util/IntrospectionSupport.java | 11 ++----- .../src/test/resources/log4j.properties | 2 +- 4 files changed, 11 insertions(+), 52 deletions(-) diff --git a/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/DataFileAppender.java b/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/DataFileAppender.java index 1f4fd036d6..f470de6737 100644 --- a/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/DataFileAppender.java +++ b/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/DataFileAppender.java @@ -21,7 +21,6 @@ import java.io.InterruptedIOException; import java.io.RandomAccessFile; import java.util.Map; import java.util.concurrent.CountDownLatch; -import java.util.concurrent.atomic.AtomicReference; import org.apache.activemq.util.ByteSequence; import org.apache.activemq.util.DataByteArrayOutputStream; @@ -49,7 +48,7 @@ class DataFileAppender { protected final CountDownLatch shutdownDone = new CountDownLatch(1); protected int maxWriteBatchSize = DEFAULT_MAX_BATCH_SIZE; - protected boolean running; + private boolean running; private Thread thread; public static class WriteKey { @@ -83,7 +82,6 @@ class DataFileAppender { public final WriteCommand first; public final CountDownLatch latch = new CountDownLatch(1); public int size; - public AtomicReference exception = new AtomicReference(); public WriteBatch(DataFile dataFile, WriteCommand write) throws IOException { this.dataFile = dataFile; @@ -181,10 +179,6 @@ class DataFileAppender { } catch (InterruptedException e) { throw new InterruptedIOException(); } - IOException exception = batch.exception.get(); - if (exception != null) { - throw exception; - } } return location; @@ -222,7 +216,10 @@ class DataFileAppender { if (shutdown) { throw new IOException("Async Writter Thread Shutdown"); } - + if (firstAsyncException != null) { + throw firstAsyncException; + } + if (!running) { running = true; thread = new Thread() { @@ -234,11 +231,6 @@ class DataFileAppender { thread.setDaemon(true); thread.setName("ActiveMQ Data File Writer"); thread.start(); - firstAsyncException = null; - } - - if (firstAsyncException != null) { - throw firstAsyncException; } if (nextWriteBatch == null) { @@ -306,7 +298,6 @@ class DataFileAppender { protected void processQueue() { DataFile dataFile = null; RandomAccessFile file = null; - WriteBatch wb = null; try { DataByteArrayOutputStream buff = new DataByteArrayOutputStream(maxWriteBatchSize); @@ -330,7 +321,7 @@ class DataFileAppender { enqueueMutex.notify(); } - wb = (WriteBatch)o; + WriteBatch wb = (WriteBatch)o; if (dataFile != wb.dataFile) { if (file != null) { dataFile.closeRandomAccessFile(file); @@ -415,14 +406,6 @@ class DataFileAppender { } catch (IOException e) { synchronized (enqueueMutex) { firstAsyncException = e; - if (wb != null) { - wb.latch.countDown(); - wb.exception.set(e); - } - if (nextWriteBatch != null) { - nextWriteBatch.latch.countDown(); - nextWriteBatch.exception.set(e); - } } } catch (InterruptedException e) { } finally { diff --git a/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/NIODataFileAppender.java b/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/NIODataFileAppender.java index 62a0a84eae..5fbdf53a20 100644 --- a/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/NIODataFileAppender.java +++ b/activemq-core/src/main/java/org/apache/activemq/kaha/impl/async/NIODataFileAppender.java @@ -47,7 +47,6 @@ class NIODataFileAppender extends DataFileAppender { DataFile dataFile = null; RandomAccessFile file = null; FileChannel channel = null; - WriteBatch wb = null; try { @@ -82,14 +81,13 @@ class NIODataFileAppender extends DataFileAppender { enqueueMutex.notify(); } - wb = (WriteBatch)o; + WriteBatch wb = (WriteBatch)o; if (dataFile != wb.dataFile) { if (file != null) { dataFile.closeRandomAccessFile(file); } dataFile = wb.dataFile; file = dataFile.openRandomAccessFile(true); - System.out.println("new channel?"); channel = file.getChannel(); } @@ -182,33 +180,16 @@ class NIODataFileAppender extends DataFileAppender { } catch (IOException e) { synchronized (enqueueMutex) { firstAsyncException = e; - if (wb != null) { - wb.latch.countDown(); - wb.exception.set(e); - } - if (nextWriteBatch != null) { - nextWriteBatch.latch.countDown(); - nextWriteBatch.exception.set(e); - } } } catch (InterruptedException e) { } finally { try { if (file != null) { dataFile.closeRandomAccessFile(file); - dataFile = null; - file.close(); - file = null; - } - if (channel != null) { - System.out.println("Closing channel"); - channel.close(); - channel = null; } } catch (IOException e) { } shutdownDone.countDown(); - running = false; } } diff --git a/activemq-core/src/main/java/org/apache/activemq/util/IntrospectionSupport.java b/activemq-core/src/main/java/org/apache/activemq/util/IntrospectionSupport.java index cdb9034e5c..f2cbdfc04f 100755 --- a/activemq-core/src/main/java/org/apache/activemq/util/IntrospectionSupport.java +++ b/activemq-core/src/main/java/org/apache/activemq/util/IntrospectionSupport.java @@ -262,28 +262,23 @@ public final class IntrospectionSupport { boolean first = true; for (Iterator iter = entrySet.iterator(); iter.hasNext();) { Map.Entry entry = (Map.Entry)iter.next(); - Object value = entry.getValue(); - Object key = entry.getKey(); if (first) { first = false; } else { buffer.append(", "); } - buffer.append(key); + buffer.append(entry.getKey()); buffer.append(" = "); - - appendToString(buffer, key, value); + appendToString(buffer, entry.getValue()); } buffer.append("}"); return buffer.toString(); } - protected static void appendToString(StringBuffer buffer, Object key, Object value) { + protected static void appendToString(StringBuffer buffer, Object value) { if (value instanceof ActiveMQDestination) { ActiveMQDestination destination = (ActiveMQDestination)value; buffer.append(destination.getQualifiedName()); - } else if (key.toString().contains("password")){ - buffer.append("*****"); } else { buffer.append(value); } diff --git a/activemq-core/src/test/resources/log4j.properties b/activemq-core/src/test/resources/log4j.properties index 91348e85b9..980445e997 100755 --- a/activemq-core/src/test/resources/log4j.properties +++ b/activemq-core/src/test/resources/log4j.properties @@ -18,7 +18,7 @@ # # The logging properties used during tests.. # -log4j.rootLogger=DEBUG, out, stdout +log4j.rootLogger=INFO, out, stdout #log4j.logger.org.apache.activemq=DEBUG