Examples of ZkHelixTestManager


Examples of com.linkedin.helix.ZkHelixTestManager

    _controllerMode = controllerMode;
    _zkAddr = zkAddr;

    if (_controllerMode.equals(HelixControllerMain.STANDALONE.toString()))
    {
      _manager =  new ZkHelixTestManager(clusterName, controllerName, InstanceType.CONTROLLER, zkAddr);

//          HelixManagerFactory.getZKHelixManager(clusterName,
//                                                controllerName,
//                                                InstanceType.CONTROLLER,
//                                                zkAddr);
    }
    else if (_controllerMode.equals(HelixControllerMain.DISTRIBUTED.toString()))
    {
      _manager = new ZkHelixTestManager(clusterName, controllerName, InstanceType.CONTROLLER_PARTICIPANT, zkAddr);
//          HelixManagerFactory.getZKHelixManager(clusterName,
//                                                controllerName,
//                                                InstanceType.CONTROLLER_PARTICIPANT,
//                                                zkAddr);
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

    // start participants
    for (int i = 0; i < 5; i++)
    {
      String instanceName = "localhost_" + (12918 + i);
      ZkHelixTestManager manager =
          new ZkHelixTestManager(clusterName,
                                 instanceName,
                                 InstanceType.PARTICIPANT,
                                 ZK_ADDR);
      participants[i] = new MockParticipant(manager, new SessionExpiryTransition());
      participants[i].syncStart();
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

    private final AtomicBoolean _done = new AtomicBoolean();

    @Override
    public void doTransition(Message message, NotificationContext context)
    {
      ZkHelixTestManager manager = (ZkHelixTestManager)context.getManager();
    
      String instance = message.getTgtName();
      String partition = message.getPartitionName();
      if (instance.equals("localhost_12918")
          && partition.equals("TestDB0_1"// TestDB0_1 is SLAVE on localhost_12918
          && _done.getAndSet(true) == false)
      {
        try
        {
          ZkTestHelper.expireSession(manager.getZkClient());
        }
        catch (Exception e)
        {
          // TODO Auto-generated catch block
          e.printStackTrace();
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

      String instanceName = "localhost_" + (12918 + i);
      participants[i] = new MockParticipant(clusterName, instanceName, ZK_ADDR);
      new Thread(participants[i]).start();
    }

    ZkHelixTestManager controller =
        new ZkHelixTestManager(clusterName,
                                            "controller_0",
                                            InstanceType.CONTROLLER,
                                            ZK_ADDR);
    controller.connect();
    boolean result;
    result =
        ClusterStateVerifier.verifyByPolling(new ClusterStateVerifier.BestPossAndExtViewZkVerifier(ZK_ADDR,
                                                                                          clusterName));
    Assert.assertTrue(result);
    String msgPath = PropertyPathConfig.getPath(PropertyType.MESSAGES, clusterName, "localhost_12918");
    result = checkHandlers(controller.getHandlers(), msgPath);
    Assert.assertTrue(result);

    _gSetupTool.addInstanceToCluster(clusterName, "localhost:12922");
    _gSetupTool.rebalanceStorageCluster(clusterName, "TestDB0", 3);

    participants[nodeNr - 1] =
        new MockParticipant(clusterName, "localhost_12922", ZK_ADDR);
    new Thread(participants[nodeNr - 1]).start();
    result =
        ClusterStateVerifier.verifyByPolling(new ClusterStateVerifier.BestPossAndExtViewZkVerifier(ZK_ADDR,
                                                                                          clusterName));
    Assert.assertTrue(result);
    msgPath = PropertyPathConfig.getPath(PropertyType.MESSAGES, clusterName, "localhost_12922");
    result = checkHandlers(controller.getHandlers(), msgPath);
    Assert.assertTrue(result);

    // clean up
    controller.disconnect();
    for (int i = 0; i < nodeNr; i++)
    {
      participants[i].syncStop();
    }
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

  {
    _clusterName = clusterName;
    _instanceName = instanceName;
    _msModelFactory = new MockMSModelFactory(transition);

    _manager = new ZkHelixTestManager(_clusterName, _instanceName, InstanceType.PARTICIPANT, zkAddr);
//        HelixManagerFactory.getZKHelixManager(_clusterName,
//                                              _instanceName,
//                                              InstanceType.PARTICIPANT,
//                                              zkAddr);
    _job = job;
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

  {
    _clusterName = clusterName;
    _instanceName = instanceName;
    _msModelFactory = factory;

    _manager = new ZkHelixTestManager(_clusterName, _instanceName, InstanceType.PARTICIPANT, zkAddr);
//        HelixManagerFactory.getZKHelixManager(_clusterName,
//                                              _instanceName,
//                                              InstanceType.PARTICIPANT,
//                                              zkAddr);
    _job = job;
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

  @Test
  public void testInstanceBounce() throws Exception
  {
    String controllerName = CONTROLLER_PREFIX + "_0";
    StartCMResult controllerResult = _startCMResultMap.get(controllerName);
    ZkHelixTestManager controller = (ZkHelixTestManager) controllerResult._manager;
    int handlerSize = controller.getHandlers().size();

    for (int i = 0; i < 2; i++)
    {
      String instanceName = PARTICIPANT_PREFIX + "_" + (START_PORT + i);
      // kill 2 participants
      _startCMResultMap.get(instanceName)._manager.disconnect();
      _startCMResultMap.get(instanceName)._thread.interrupt();
      try
      {
        Thread.sleep(1000);
      }
      catch (InterruptedException e)
      {
        e.printStackTrace();
      }
      // restart the participant
      StartCMResult result = TestHelper.startDummyProcess(ZK_ADDR, CLUSTER_NAME, instanceName);
      _startCMResultMap.put(instanceName, result);
      Thread.sleep(100);
    }
    Thread.sleep(2000);

    boolean result = ClusterStateVerifier.verifyByPolling(
        new ClusterStateVerifier.BestPossAndExtViewZkVerifier(ZK_ADDR, CLUSTER_NAME), 50 * 1000);
    Assert.assertTrue(result);
    // When a new live instance is created, we still add current state listener to it
    // and we will remove current-state listener on expired session, so the number of callback handlers is unchanged
    Assert.assertEquals( controller.getHandlers().size(), handlerSize, "Number of handlers should remain unchanged in case of participant rebounce");
  }
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

    MockParticipant[] participants = new MockParticipant[5];
    for (int i = 0; i < 5; i++)
    {
      String instanceName = "localhost_" + (12918 + i);
      ZkHelixTestManager manager =
          new ZkHelixTestManager(clusterName,
                                 instanceName,
                                 InstanceType.PARTICIPANT,
                                 ZK_ADDR);
      participants[i] = new MockParticipant(manager, null);
      participants[i].syncStart();
    }

    ZkHelixTestManager controller =
        new ZkHelixTestManager(clusterName,
                               "controller_0",
                               InstanceType.CONTROLLER,
                               ZK_ADDR);
    controller.connect();

    boolean result;
    result =
        ClusterStateVerifier.verifyByPolling(new ClusterStateVerifier.BestPossAndExtViewZkVerifier(ZK_ADDR,
                                                                                                   clusterName));
    Assert.assertTrue(result);

    // participant session expiry
    ZkHelixTestManager participantToExpire = (ZkHelixTestManager)participants[1].getManager();

    System.out.println("Expire participant session");
    String oldSessionId = participantToExpire.getSessionId();
   
    ZkTestHelper.expireSession(participantToExpire.getZkClient());
    String newSessionId = participantToExpire.getSessionId();
    System.out.println("oldSessionId: " + oldSessionId + ", newSessionId: " + newSessionId);
    Assert.assertTrue(newSessionId.compareTo(oldSessionId) > 0, "Session id should be increased after expiry");

    ClusterSetup setupTool = new ClusterSetup(ZK_ADDR);
    setupTool.addResourceToCluster(clusterName, "TestDB1", 10, "MasterSlave");
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

                            "MasterSlave",
                            true); // do rebalance
   
   
      String instanceName = "localhost_" + (12918 + 0);
      ZkHelixTestManager manager =
          new ZkHelixTestManager(clusterName,
                                 instanceName,
                                 InstanceType.PARTICIPANT,
                                 ZK_ADDR);
      manager.connect();
      ZkClient zkClient = manager.getZkClient();
      ZkTestHelper.expireSession(zkClient);
      for(int i = 0;i < 4; i++)
      {
        ZkTestHelper.expireSession(zkClient);
        Thread.sleep(1000);
        if(i < 5)
        {
          //System.out.println(i);
          Assert.assertTrue(manager.isConnected());
        }
      }
      ZkTestHelper.disconnectSession(zkClient);
      for(int i = 0; i < 20; i++)
      {
        Thread.sleep(500);
        System.out.println(i);
        if(!manager.isConnected()) break;
      }
      Assert.assertFalse(manager.isConnected());
  }
View Full Code Here

Examples of com.linkedin.helix.ZkHelixTestManager

   
   
      // flapping time window to 5 sec
      System.setProperty("helixmanager.flappingTimeWindow", "15000");
      System.setProperty("helixmanager.maxDisconnectThreshold", "7");
      ZkHelixTestManager manager2 =
          new ZkHelixTestManager(clusterName,
                                 instanceName,
                                 type,
                                 ZK_ADDR);
      manager2.connect();
      ZkClient zkClient = manager2.getZkClient();
      for(int i = 0;i < 3; i++)
      {
        ZkTestHelper.expireSession(zkClient);
        Thread.sleep(500);
        Assert.assertTrue(manager2.isConnected());
      }
      Thread.sleep(15000);
      // Old entries should be cleaned up
      for(int i = 0;i < 7; i++)
      {
        ZkTestHelper.expireSession(zkClient);
        Thread.sleep(1000);
        Assert.assertTrue(manager2.isConnected());
      }
      ZkTestHelper.disconnectSession(zkClient);
      for(int i = 0; i < 20; i++)
      {
        Thread.sleep(500);
        if(!manager2.isConnected()) break;
      }
      Assert.assertFalse(manager2.isConnected());
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.