@@ -0,0 +1,3154 @@
+/*%0A * Copyright 2008-2009 LinkedIn, Inc%0A * %0A * Licensed under the Apache License, Version 2.0 (the %22License%22); you may not%0A * use this file except in compliance with the License. You may obtain a copy of%0A * the License at%0A * %0A * http://www.apache.org/licenses/LICENSE-2.0%0A * %0A * Unless required by applicable law or agreed to in writing, software%0A * distributed under the License is distributed on an %22AS IS%22 BASIS, WITHOUT%0A * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the%0A * License for the specific language governing permissions and limitations under%0A * the License.%0A */%0A%0Apackage voldemort.utils;%0A%0Aimport static org.junit.Assert.assertTrue;%0A%0Aimport java.io.IOException;%0Aimport java.util.Properties;%0A%0Aimport org.junit.Before;%0Aimport org.junit.Test;%0A%0Aimport voldemort.ServerTestUtils;%0Aimport voldemort.TestUtils;%0Aimport voldemort.cluster.Cluster;%0Aimport voldemort.server.VoldemortServer;%0Aimport voldemort.store.socket.SocketStoreFactory;%0Aimport voldemort.store.socket.clientrequest.ClientRequestExecutorPool;%0A%0Apublic class ServerTestUtilsTest %7B%0A%0A    // private static String storesXmlfile = %22test/common/voldemort/config/single-store.xml%22;%0A    private static String storesXmlfile = %22test/common/voldemort/config/stores.xml%22;%0A    private SocketStoreFactory socketStoreFactory = new ClientRequestExecutorPool(2,%0A                                                                                  10000,%0A                                                                                  100000,%0A                                                                                  32 * 1024);%0A%0A    @Before%0A    public void setUp() throws IOException %7B%0A        /*-%0A        Cluster cluster = ServerTestUtils.getLocalCluster(1, new int%5B%5D%5B%5D %7B %7B 0, 1, 2, 3, 4, 5, 6,%0A                7, 8 %7D %7D);%0A        */%0A        Cluster cluster = ServerTestUtils.getLocalCluster(8, new int%5B%5D%5B%5D %7B %7B 0 %7D, %7B 1 %7D, %7B 2 %7D,%0A                %7B 3 %7D, %7B 4 %7D, %7B 5 %7D, %7B 6 %7D, %7B 7 %7D %7D);%0A%0A        VoldemortServer%5B%5D servers = new VoldemortServer%5B8%5D;%0A%0A        // for(int i = 0; i %3C 1; i++) %7B%0A        for(int i = 0; i %3C 8; i++) %7B%0A            servers%5Bi%5D = ServerTestUtils.startVoldemortServer(socketStoreFactory,%0A                                                              ServerTestUtils.createServerConfig(true,%0A                                                                                                 i,%0A                                                                                                 TestUtils.createTempDir()%0A                                                                                                          .getAbsolutePath(),%0A                                                                                                 null,%0A                                                                                                 storesXmlfile,%0A                                                                                                 new Properties()),%0A                                                              cluster);%0A        %7D%0A    %7D%0A%0A    @Test%0A    public void startMultipleVoldemortServers() %7B%0A        assertTrue(true);%0A    %7D%0A%7D%0A

Adding a specific mini test that exercises ServerTestUtils.startVoldemortServer. This ~15 line program that simply starts some Voldemort servers using test utils can tickle two different intermittent failures: