I am trying to prepare the CP branch to release 1.4.0.SP3_CP03 for EAP 4.3.CP02, and I
have done a diff between its current state and the state from the 1.4.0.SP3_CP02 tag, and
I see several changes which have no corresponding JIRAs:
| Index: tests/src/org/jboss/test/messaging/tools/container/ClassLoaderJMXWrapper.java
| ===================================================================
| ---
tests/src/org/jboss/test/messaging/tools/container/ClassLoaderJMXWrapper.java (.../branches/Branch_JBossMessaging_1_4_0_SP3_CP) (revision
4568)
| +++
tests/src/org/jboss/test/messaging/tools/container/ClassLoaderJMXWrapper.java (.../tags/JBossMessaging_1_4_0_SP3_CP02) (revision
4568)
| @@ -21,7 +21,9 @@
| */
| package org.jboss.test.messaging.tools.container;
|
| -import org.jboss.util.loading.DelegatingClassLoader;
| +import java.lang.reflect.Array;
| +import java.net.URL;
| +import java.net.URLClassLoader;
|
| /**
| * We extend URLClassLoader just to prevent UnifiedLoaderRepository3 to generate
spurious warning
| @@ -33,7 +35,7 @@
| *
| * $Id$
| */
| -public class ClassLoaderJMXWrapper extends DelegatingClassLoader implements
ClassLoaderJMXWrapperMBean
| +public class ClassLoaderJMXWrapper extends URLClassLoader implements
ClassLoaderJMXWrapperMBean
| {
| // Constants -----------------------------------------------------
|
| @@ -41,13 +43,45 @@
|
| // Attributes ----------------------------------------------------
|
| + private ClassLoader delegate;
| +
| // Constructors --------------------------------------------------
|
| public ClassLoaderJMXWrapper(ClassLoader delegate)
| {
| - super(delegate);
| + super(new URL[0]);
| + this.delegate = delegate;
| }
|
| + // ClassLoaderJMXWrapperMBean implementation ---------------------
| +
| + public Class loadClass(String name) throws ClassNotFoundException
| + {
| + if (name.endsWith("[]"))
| + {
| + name = name.substring(0, name.length() - 2);
| +
| + //The classloader of an array type is the classloader of it's element
(if non primitive)
| +
| + Class cl = delegate.loadClass(name);
| +
| + Object arr = Array.newInstance(cl, 0);
| +
| + return arr.getClass();
| + }
| + else
| + {
| + return delegate.loadClass(name);
| + }
| + }
| +
| + // ClassLoader overrides -----------------------------------------
| +
| + public URL getResource(String name)
| + {
| + return delegate.getResource(name);
| + }
| +
| // Public --------------------------------------------------------
|
| // Package protected ---------------------------------------------
| Index: tests/src/org/jboss/test/messaging/tools/ServerManagement.java
| ===================================================================
| ---
tests/src/org/jboss/test/messaging/tools/ServerManagement.java (.../branches/Branch_JBossMessaging_1_4_0_SP3_CP) (revision
4568)
| +++
tests/src/org/jboss/test/messaging/tools/ServerManagement.java (.../tags/JBossMessaging_1_4_0_SP3_CP02) (revision
4568)
| @@ -500,13 +500,13 @@
|
| String classPath = System.getProperty("java.class.path");
|
| - if
(System.getProperty("os.name").toLowerCase().contains("windows"))
| + if (System.getProperty("os.name").equals("Linux"))
| {
| - sb.append("-cp").append("
\"").append(classPath).append("\" ");
| + sb.append("-cp").append("
").append(classPath).append(" ");
| }
| else
| {
| - sb.append("-cp").append("
").append(classPath).append(" ");
| + sb.append("-cp").append("
\"").append(classPath).append("\" ");
| }
|
| // As there is a problem with Multicast and JGroups on Linux (in certain JDKs)
| Index: tests/src/org/jboss/test/messaging/jms/bridge/SimpleCrashWithRestartTest.java
| ===================================================================
| ---
tests/src/org/jboss/test/messaging/jms/bridge/SimpleCrashWithRestartTest.java (.../branches/Branch_JBossMessaging_1_4_0_SP3_CP) (revision
4568)
| +++
tests/src/org/jboss/test/messaging/jms/bridge/SimpleCrashWithRestartTest.java (.../tags/JBossMessaging_1_4_0_SP3_CP02) (revision
4568)
| @@ -1,136 +0,0 @@
| -/*
| - * JBoss, Home of Professional Open Source
| - * Copyright 2005, JBoss Inc., and individual contributors as indicated
| - * by the @authors tag. See the copyright.txt in the distribution for a
| - * full listing of individual contributors.
| - *
| - * This is free software; you can redistribute it and/or modify it
| - * under the terms of the GNU Lesser General Public License as
| - * published by the Free Software Foundation; either version 2.1 of
| - * the License, or (at your option) any later version.
| - *
| - * This software is distributed in the hope that it will be useful,
| - * but WITHOUT ANY WARRANTY; without even the implied warranty of
| - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
| - * Lesser General Public License for more details.
| - *
| - * You should have received a copy of the GNU Lesser General Public
| - * License along with this software; if not, write to the Free
| - * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
| - * 02110-1301 USA, or see the FSF site:
http://www.fsf.org.
| - */
| -package org.jboss.test.messaging.jms.bridge;
| -
| -import java.util.Properties;
| -
| -import org.jboss.jms.jndi.JMSProviderAdapter;
| -import org.jboss.jms.server.bridge.Bridge;
| -import org.jboss.logging.Logger;
| -import org.jboss.test.messaging.tools.ServerManagement;
| -import org.jboss.test.messaging.tools.TestJMSProviderAdaptor;
| -import org.jboss.test.messaging.tools.aop.PoisonInterceptor;
| -
| -/**
| - * @author <a href="mailto:tim.fox@jboss.com">Tim Fox</a>
| - * @version <tt>$Revision$</tt>
| - *
| - * $Id$
| - *
| - */
| -public class SimpleCrashWithRestartTest extends BridgeTestBase
| -{
| - private static final Logger log = Logger.getLogger(ReconnectTest.class);
| -
| - public SimpleCrashWithRestartTest(String name)
| - {
| - super(name);
| - }
| -
| - protected void setUp() throws Exception
| - {
| - super.setUp();
| -
| - //Now install local JMSProviderAdaptor classes
| -
| - Properties props1 = new Properties();
| - props1.putAll(ServerManagement.getJNDIEnvironment(1));
| -
| - JMSProviderAdapter targetAdaptor =
| - new TestJMSProviderAdaptor(props1, "/XAConnectionFactory",
"adaptor1");
| -
| - sc.installJMSProviderAdaptor("adaptor1", targetAdaptor);
| -
| - sc.startRecoveryManager();
| - }
| -
| - protected void tearDown() throws Exception
| - {
| - super.tearDown();
| -
| - sc.stopRecoveryManager();
| -
| - sc.uninstallJMSProviderAdaptor("adaptor1");
| -
| - log.debug(this + " torn down");
| - }
| -
| - /*
| - * Send some messages
| - * Crash the server after prepare but on commit
| - * Bring up the destination server
| - * Send some more messages
| - * Verify all messages are received
| - */
| - public void testCrashAndRestart() throws Exception
| - {
| - Bridge bridge = null;
| -
| - try
| - {
| - final int NUM_MESSAGES = 10;
| -
| - bridge = new Bridge(cff0, cff1, sourceQueueFactory, targetQueueFactory,
| - null, null, null, null,
| - null, 1000, -1, Bridge.QOS_AT_MOST_ONCE,
| - NUM_MESSAGES, -1,
| - null, null, false);
| -
| - bridge.start();
| -
| - sendMessages(cf0, sourceQueue, 0, NUM_MESSAGES, true);
| -
| - checkMessagesReceived(cf1, targetQueue, Bridge.QOS_ONCE_AND_ONLY_ONCE,
NUM_MESSAGES, true);
| -
| - ServerManagement.kill(1);
| -
| -
| - // >30 sec (timeout on remoting)
| - Thread.sleep(35000);
| -
| - ServerManagement.start(1, "all", false);
| - ServerManagement.deployQueue("targetQueue", 1);
| -
| - setUpAdministeredObjects();
| -
| - sendMessages(cf0, sourceQueue, 0, NUM_MESSAGES, true);
| -
| - checkMessagesReceived(cf1, targetQueue, Bridge.QOS_AT_MOST_ONCE,
NUM_MESSAGES, true);
| - }
| - finally
| - {
| - if (bridge != null)
| - {
| - try
| - {
| - bridge.stop();
| - }
| - catch (Exception e)
| - {
| - log.error("Failed to stop bridge", e);
| - }
| - }
| - }
| - }
| -
| - // Inner classes
-------------------------------------------------------------------
| -}
| Index: src/main/org/jboss/messaging/core/impl/JDBCPersistenceManager.java
| ===================================================================
| ---
src/main/org/jboss/messaging/core/impl/JDBCPersistenceManager.java (.../branches/Branch_JBossMessaging_1_4_0_SP3_CP) (revision
4568)
| +++
src/main/org/jboss/messaging/core/impl/JDBCPersistenceManager.java (.../tags/JBossMessaging_1_4_0_SP3_CP02) (revision
4568)
| @@ -2556,7 +2556,7 @@
| map.put("CREATE_COUNTER",
| "CREATE TABLE JBM_COUNTER (NAME VARCHAR(255), NEXT_ID BIGINT,
PRIMARY KEY(NAME))");
| // Id cache
| - map.put("CREATE_ID_CACHE", "CREATE TABLE JBM_ID_CACHE (NODE_ID
INTEGER, CNTR INTEGER, JBM_ID VARCHAR(255), PRIMARY KEY(NODE_ID, CNTR))");
| + map.put("CREATE_ID_CACHE", "CREATE TABLE JBM_ID_CACHE (NODE_ID
INTEGER, CNTR INTEGER, JBM_ID VARCHAR(255), PRIMARY KEY(NODEID, CNTR))");
| return map;
| }
|
| @@ -2603,8 +2603,8 @@
| "UPDATE JBM_MSG_REF SET CHANNEL_ID = ? WHERE CHANNEL_ID =
?");
| map.put("MOVE_REFERENCE",
| "UPDATE JBM_MSG_REF SET CHANNEL_ID = ? WHERE MESSAGE_ID = ? AND
CHANNEL_ID = ?");
| - map.put("LOAD_ID_CACHE", "SELECT CNTR, JBM_ID FROM JBM_ID_CACHE
WHERE NODE_ID = ?");
| - map.put("UPDATE_ID_IN_CACHE", "UPDATE JBM_ID_CACHE SET JBM_ID =
? WHERE NODE_ID = ? AND CNTR = ?");
| + map.put("LOAD_ID_CACHE", "SELECT CNTR, ID FROM JBM_ID_CACHE
WHERE NODE_ID = ?");
| + map.put("UPDATE_ID_IN_CACHE", "UPDATE JBM_ID_CACHE SET JBM_ID =
? WHERE NODE_ID = ? CNTR = ?");
| map.put("INSERT_ID_IN_CACHE", "INSERT INTO JBM_ID_CACHE
(NODE_ID, CNTR, JBM_ID) VALUES (?, ?, ?)");
|
I have probably said this before, but doing work on the CP branch ***must be tracked by a
corresponding JIRA***.
I know what one of the changes is for (NODE_ID bug), but unless someone comes up with a
JIRA and explanation for the others I will just revert them.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4160165#...
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&a...