From cd54b0d62bff64f3c313038a92916dbc19c75d46 Mon Sep 17 00:00:00 2001 From: Clebert Suconic Date: Mon, 17 May 2010 17:27:15 +0000 Subject: [PATCH] changing public repository in our pom --- pom.xml | 17 +------ .../core/asyncio/AsynchronousFileTest.java | 51 +++++++++++++++++++ 2 files changed, 53 insertions(+), 15 deletions(-) diff --git a/pom.xml b/pom.xml index d468e82c21f..fb98171f351 100644 --- a/pom.xml +++ b/pom.xml @@ -293,7 +293,7 @@ Copyright 2009 Red Hat, Inc. jboss.release JBoss releases - http://repository.jboss.org/maven2 + https://repository.jboss.org/nexus/content/groups/public/ @@ -309,7 +309,7 @@ Copyright 2009 Red Hat, Inc. jboss.release JBoss releases - http://repository.jboss.org/maven2 + https://repository.jboss.org/nexus/content/groups/public - - - repository.jboss.org - JBoss.org Release Distribution Repository - dav:https://svn.jboss.org/repos/repository.jboss.org/maven2 - - - snapshots.jboss.org - JBoss.org Development Snapshot Repository - dav:https://snapshots.jboss.org/maven2 - - - diff --git a/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java b/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java index 1ea00abdbc1..81404158f91 100644 --- a/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java +++ b/tests/src/org/hornetq/tests/unit/core/asyncio/AsynchronousFileTest.java @@ -13,6 +13,7 @@ package org.hornetq.tests.unit.core.asyncio; +import java.lang.ref.WeakReference; import java.nio.ByteBuffer; import java.nio.CharBuffer; import java.nio.charset.Charset; @@ -22,6 +23,7 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; +import java.util.concurrent.TimeUnit; import java.util.concurrent.atomic.AtomicInteger; import junit.framework.Assert; @@ -98,6 +100,55 @@ public void testOpenClose() throws Exception } } + + public void testReleaseBuffers() throws Exception + { + AsynchronousFileImpl controller = new AsynchronousFileImpl(executor, pollerExecutor); + controller.open(FILE_NAME, 10000); + WeakReference bufferCheck = new WeakReference(controller.getHandler()); + controller.fill(0, 10, 1024, (byte)0); + + ByteBuffer write = AsynchronousFileImpl.newBuffer(1024); + + for (int i = 0 ; i < 1024; i++) + { + write.put(getSamplebyte(i)); + } + + final CountDownLatch latch = new CountDownLatch(1); + + controller.write(0, 1024, write, new AIOCallback() + { + + public void onError(int errorCode, String errorMessage) + { + } + + public void done() + { + latch.countDown(); + } + }); + + assertTrue(latch.await(10, TimeUnit.SECONDS)); + + WeakReference bufferCheck2 = new WeakReference(write); + + AsynchronousFileImpl.destroyBuffer(write); + + write = null; + + forceGC(); + + assertNull(bufferCheck2.get()); + + controller.close(); + controller = null; + + forceGC(); + + assertNull(bufferCheck.get()); + } public void testFileNonExistent() throws Exception {