org.apache.helix.model.Message.setPartitionName()方法的使用及代码示例

x33g5p2x  于2022-01-25 转载在 其他  
字(13.7k)|赞(0)|评价(0)|浏览(193)

本文整理了Java中org.apache.helix.model.Message.setPartitionName()方法的一些代码示例,展示了Message.setPartitionName()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.setPartitionName()方法的具体详情如下:
包路径:org.apache.helix.model.Message
类名称:Message
方法名:setPartitionName

Message.setPartitionName介绍

[英]Set the name of the partition this message concerns
[中]设置此消息所涉及的分区的名称

代码示例

代码示例来源:origin: apache/incubator-gobblin

  1. newMessage.setTgtName(tgtInstanceName);
  2. newMessage.setResourceName(map.get("resourceName"));
  3. newMessage.setPartitionName(map.get("partitionName"));
  4. if (recipientCriteria.isSessionSpecific()) {
  5. newMessage.setTgtSessionId(sessionIdMap.get(tgtInstanceName));

代码示例来源:origin: org.apache.helix/helix-core

  1. public void postFaultInjectionMessage(String zkServer, String clusterName, String instanceName,
  2. String payloadString, String partition) {
  3. Message message = new Message("FaultInjection", UUID.randomUUID().toString());
  4. if (payloadString != null) {
  5. message.getRecord().setSimpleField("faultType", payloadString);
  6. }
  7. if (partition != null) {
  8. message.setPartitionName(partition);
  9. }
  10. post(zkServer, message, clusterName, instanceName);
  11. }

代码示例来源:origin: apache/helix

  1. public void postFaultInjectionMessage(String zkServer, String clusterName, String instanceName,
  2. String payloadString, String partition) {
  3. Message message = new Message("FaultInjection", UUID.randomUUID().toString());
  4. if (payloadString != null) {
  5. message.getRecord().setSimpleField("faultType", payloadString);
  6. }
  7. if (partition != null) {
  8. message.setPartitionName(partition);
  9. }
  10. post(zkServer, message, clusterName, instanceName);
  11. }

代码示例来源:origin: org.apache.helix/helix-core

  1. public BatchMessageHandler(Message msg, NotificationContext context, MessageHandlerFactory fty,
  2. BatchMessageWrapper wrapper, TaskExecutor executor) {
  3. super(msg, context);
  4. if (fty == null || executor == null) {
  5. throw new HelixException("MessageHandlerFactory | TaskExecutor can't be null");
  6. }
  7. _msgHandlerFty = fty;
  8. _batchMsgWrapper = wrapper;
  9. _executor = executor;
  10. // create sub-messages
  11. _subMessages = new ArrayList<Message>();
  12. List<String> partitionKeys = _message.getPartitionNames();
  13. for (String partitionKey : partitionKeys) {
  14. // assign a new message id, put batch-msg-id to parent-id field
  15. Message subMsg = new Message(_message.getRecord(), UUID.randomUUID().toString());
  16. subMsg.setPartitionName(partitionKey);
  17. subMsg.setAttribute(Attributes.PARENT_MSG_ID, _message.getId());
  18. subMsg.setBatchMessageMode(false);
  19. _subMessages.add(subMsg);
  20. }
  21. // create sub-message handlers
  22. _subMessageHandlers = createMsgHandlers(_subMessages, context);
  23. }

代码示例来源:origin: apache/helix

  1. public BatchMessageHandler(Message msg, NotificationContext context, MessageHandlerFactory fty,
  2. BatchMessageWrapper wrapper, TaskExecutor executor) {
  3. super(msg, context);
  4. if (fty == null || executor == null) {
  5. throw new HelixException("MessageHandlerFactory | TaskExecutor can't be null");
  6. }
  7. _msgHandlerFty = fty;
  8. _batchMsgWrapper = wrapper;
  9. _executor = executor;
  10. // create sub-messages
  11. _subMessages = new ArrayList<Message>();
  12. List<String> partitionKeys = _message.getPartitionNames();
  13. for (String partitionKey : partitionKeys) {
  14. // assign a new message id, put batch-msg-id to parent-id field
  15. Message subMsg = new Message(_message.getRecord(), UUID.randomUUID().toString());
  16. subMsg.setPartitionName(partitionKey);
  17. subMsg.setAttribute(Attributes.PARENT_MSG_ID, _message.getId());
  18. subMsg.setBatchMessageMode(false);
  19. _subMessages.add(subMsg);
  20. }
  21. // create sub-message handlers
  22. _subMessageHandlers = createMsgHandlers(_subMessages, context);
  23. }

代码示例来源:origin: apache/helix

  1. @Test()
  2. public void testOnBecomeOfflineFromStandby() {
  3. Message message = new Message(MessageType.STATE_TRANSITION, "0");
  4. message.setPartitionName(clusterName);
  5. message.setTgtName("controller_0");
  6. stateModel.onBecomeOfflineFromStandby(message, null);
  7. }

代码示例来源:origin: apache/helix

  1. @Test()
  2. public void testReset() {
  3. Message message = new Message(MessageType.STATE_TRANSITION, "0");
  4. message.setPartitionName(clusterName);
  5. message.setTgtName("controller_0");
  6. try {
  7. stateModel.onBecomeLeaderFromStandby(message, new NotificationContext(null));
  8. } catch (Exception e) {
  9. LOG.error("Exception becoming leader from standby", e);
  10. }
  11. stateModel.reset();
  12. }

代码示例来源:origin: apache/helix

  1. @Test()
  2. public void testOnBecomeStandbyFromLeader() {
  3. Message message = new Message(MessageType.STATE_TRANSITION, "0");
  4. message.setPartitionName(clusterName);
  5. message.setTgtName("controller_0");
  6. stateModel.onBecomeStandbyFromLeader(message, new NotificationContext(null));
  7. }

代码示例来源:origin: apache/helix

  1. @Test()
  2. public void testRollbackOnError() {
  3. Message message = new Message(MessageType.STATE_TRANSITION, "0");
  4. message.setPartitionName(clusterName);
  5. message.setTgtName("controller_0");
  6. try {
  7. stateModel.onBecomeLeaderFromStandby(message, new NotificationContext(null));
  8. } catch (Exception e) {
  9. LOG.error("Exception becoming leader from standby", e);
  10. }
  11. stateModel.rollbackOnError(message, new NotificationContext(null), null);
  12. }

代码示例来源:origin: apache/helix

  1. @Test()
  2. public void testOnBecomeLeaderFromStandby() {
  3. Message message = new Message(MessageType.STATE_TRANSITION, "0");
  4. message.setPartitionName(clusterName);
  5. message.setTgtName("controller_0");
  6. try {
  7. stateModel.onBecomeLeaderFromStandby(message, new NotificationContext(null));
  8. } catch (Exception e) {
  9. LOG.error("Exception becoming leader from standby", e);
  10. }
  11. stateModel.onBecomeStandbyFromLeader(message, new NotificationContext(null));
  12. }

代码示例来源:origin: apache/helix

  1. @Override public void doInject(ClusterDataCache cache) {
  2. String topStateNode = null;
  3. for (String instance : cfg.initialCurrentStates.keySet()) {
  4. if (cfg.initialCurrentStates.get(instance).currentState.equals("MASTER")) {
  5. topStateNode = instance;
  6. break;
  7. }
  8. }
  9. // Simulate the previous top state instance goes offline
  10. if (topStateNode != null) {
  11. long originalStartTime = cfg.currentStateWithMissingTopState.get(topStateNode).startTime;
  12. // Inject a message that fit expectedDuration
  13. Message message =
  14. new Message(Message.MessageType.STATE_TRANSITION, "thisisafakemessage");
  15. message.setTgtSessionId(SESSION_PREFIX + topStateNode.split("_")[1]);
  16. message.setToState("MASTER");
  17. message.setCreateTimeStamp(originalStartTime - messageTimeBeforeMasterless);
  18. message.setTgtName(topStateNode);
  19. message.setResourceName(TEST_RESOURCE);
  20. message.setPartitionName(PARTITION);
  21. cache.cacheMessages(Collections.singletonList(message));
  22. }
  23. }
  24. }, 1, 0,

代码示例来源:origin: apache/helix

  1. public void postTestMessage(String zkServer, String clusterName, String instanceName) {
  2. String msgSrc = "cm-instance-0";
  3. String msgId = "TestMessageId-2";
  4. Message message = new Message(MessageType.STATE_TRANSITION, msgId);
  5. message.setMsgId(msgId);
  6. message.setSrcName(msgSrc);
  7. message.setTgtName(instanceName);
  8. message.setMsgState(MessageState.NEW);
  9. message.setFromState("Slave");
  10. message.setToState("Master");
  11. message.setPartitionName("EspressoDB.partition-0." + instanceName);
  12. post(zkServer, message, clusterName, instanceName);
  13. }

代码示例来源:origin: org.apache.helix/helix-core

  1. public void postTestMessage(String zkServer, String clusterName, String instanceName) {
  2. String msgSrc = "cm-instance-0";
  3. String msgId = "TestMessageId-2";
  4. Message message = new Message(MessageType.STATE_TRANSITION, msgId);
  5. message.setMsgId(msgId);
  6. message.setSrcName(msgSrc);
  7. message.setTgtName(instanceName);
  8. message.setMsgState(MessageState.NEW);
  9. message.setFromState("Slave");
  10. message.setToState("Master");
  11. message.setPartitionName("EspressoDB.partition-0." + instanceName);
  12. post(zkServer, message, clusterName, instanceName);
  13. }

代码示例来源:origin: apache/helix

  1. public static Message createMessage(String msgId, String fromState, String toState,
  2. String tgtName, String resourceName, String partitionName) {
  3. Message msg = new Message(MessageType.STATE_TRANSITION, msgId);
  4. msg.setFromState(fromState);
  5. msg.setToState(toState);
  6. msg.setTgtName(tgtName);
  7. msg.setResourceName(resourceName);
  8. msg.setPartitionName(partitionName);
  9. msg.setStateModelDef("MasterSlave");
  10. return msg;
  11. }

代码示例来源:origin: apache/helix

  1. private Message createStateTransitionCancellationMessage(HelixManager manager, Resource resource,
  2. String partitionName, String instanceName, String sessionId, String stateModelDefName,
  3. String fromState, String toState, String nextState, Message cancellationMessage,
  4. boolean isCancellationEnabled, String currentState) {
  5. if (isCancellationEnabled && cancellationMessage == null) {
  6. LogUtil.logInfo(logger, _eventId,
  7. "Send cancellation message of the state transition for " + resource.getResourceName()
  8. + "." + partitionName + " on " + instanceName + ", currentState: " + currentState
  9. + ", nextState: " + (nextState == null ? "N/A" : nextState));
  10. String uuid = UUID.randomUUID().toString();
  11. Message message = new Message(MessageType.STATE_TRANSITION_CANCELLATION, uuid);
  12. message.setSrcName(manager.getInstanceName());
  13. message.setTgtName(instanceName);
  14. message.setMsgState(MessageState.NEW);
  15. message.setPartitionName(partitionName);
  16. message.setResourceName(resource.getResourceName());
  17. message.setFromState(fromState);
  18. message.setToState(toState);
  19. message.setTgtSessionId(sessionId);
  20. message.setSrcSessionId(manager.getSessionId());
  21. message.setStateModelDef(stateModelDefName);
  22. message.setStateModelFactoryName(resource.getStateModelFactoryname());
  23. message.setBucketSize(resource.getBucketSize());
  24. return message;
  25. }
  26. return null;
  27. }

代码示例来源:origin: apache/helix

  1. void sendMessage(String msgId, String instanceName, String fromState, String toState,
  2. String partitionKey, int partitionId) throws InterruptedException, JsonGenerationException,
  3. JsonMappingException, IOException {
  4. Message message = new Message(MessageType.STATE_TRANSITION, msgId);
  5. message.setMsgId(msgId);
  6. message.setSrcName(srcName);
  7. message.setTgtName(instanceName);
  8. message.setMsgState(MessageState.NEW);
  9. message.setFromState(fromState);
  10. message.setToState(toState);
  11. // message.setPartitionId(partitionId);
  12. message.setPartitionName(partitionKey);
  13. String path = PropertyPathBuilder.instanceMessage(clusterName, instanceName, message.getId());
  14. ObjectMapper mapper = new ObjectMapper();
  15. StringWriter sw = new StringWriter();
  16. mapper.writeValueUsingView(sw, message, Message.class);
  17. System.out.println(sw.toString());
  18. client.delete(path);
  19. Thread.sleep(10000);
  20. ZNRecord record = client.readData(PropertyPathBuilder.liveInstance(clusterName, instanceName));
  21. message.setTgtSessionId(record.getSimpleField(LiveInstanceProperty.SESSION_ID.toString())
  22. .toString());
  23. client.createPersistent(path, message);
  24. }

代码示例来源:origin: org.apache.helix/helix-core

  1. private Message createStateTransitionMessage(HelixManager manager, Resource resource, String partitionName,
  2. String instanceName, String currentState, String nextState, String sessionId,
  3. String stateModelDefName) {
  4. String uuid = UUID.randomUUID().toString();
  5. Message message = new Message(MessageType.STATE_TRANSITION, uuid);
  6. message.setSrcName(manager.getInstanceName());
  7. message.setTgtName(instanceName);
  8. message.setMsgState(MessageState.NEW);
  9. message.setPartitionName(partitionName);
  10. message.setResourceName(resource.getResourceName());
  11. message.setFromState(currentState);
  12. message.setToState(nextState);
  13. message.setTgtSessionId(sessionId);
  14. message.setSrcSessionId(manager.getSessionId());
  15. message.setStateModelDef(stateModelDefName);
  16. message.setStateModelFactoryName(resource.getStateModelFactoryname());
  17. message.setBucketSize(resource.getBucketSize());
  18. if (resource.getResourceGroupName() != null) {
  19. message.setResourceGroupName(resource.getResourceGroupName());
  20. }
  21. if (resource.getResourceTag() != null) {
  22. message.setResourceTag(resource.getResourceTag());
  23. }
  24. return message;
  25. }

代码示例来源:origin: apache/helix

  1. private Message createStateTransitionMessage(HelixManager manager, Resource resource,
  2. String partitionName, String instanceName, String currentState, String nextState,
  3. String sessionId, String stateModelDefName) {
  4. String uuid = UUID.randomUUID().toString();
  5. Message message = new Message(MessageType.STATE_TRANSITION, uuid);
  6. message.setSrcName(manager.getInstanceName());
  7. message.setTgtName(instanceName);
  8. message.setMsgState(MessageState.NEW);
  9. message.setPartitionName(partitionName);
  10. message.setResourceName(resource.getResourceName());
  11. message.setFromState(currentState);
  12. message.setToState(nextState);
  13. message.setTgtSessionId(sessionId);
  14. message.setSrcSessionId(manager.getSessionId());
  15. message.setStateModelDef(stateModelDefName);
  16. message.setStateModelFactoryName(resource.getStateModelFactoryname());
  17. message.setBucketSize(resource.getBucketSize());
  18. if (resource.getResourceGroupName() != null) {
  19. message.setResourceGroupName(resource.getResourceGroupName());
  20. }
  21. if (resource.getResourceTag() != null) {
  22. message.setResourceTag(resource.getResourceTag());
  23. }
  24. return message;
  25. }

代码示例来源:origin: apache/helix

  1. private Message newMessage(String resourceName, String partitionName, String instanceName,
  2. String fromState, String toState) {
  3. String uuid = UUID.randomUUID().toString();
  4. Message message = new Message(MessageType.STATE_TRANSITION, uuid);
  5. message.setSrcName("controller");
  6. message.setTgtName(instanceName);
  7. message.setMsgState(MessageState.NEW);
  8. message.setResourceName(resourceName);
  9. message.setPartitionName(partitionName);
  10. message.setFromState(fromState);
  11. message.setToState(toState);
  12. message.setTgtSessionId("sessionId");
  13. message.setSrcSessionId("sessionId");
  14. message.setStateModelDef("MasterSlave");
  15. message.setStateModelFactoryName("DEFAULT");
  16. message.setBucketSize(0);
  17. return message;
  18. }

代码示例来源:origin: apache/helix

  1. private Message generateMessage(String from, String to) {
  2. String uuid = UUID.randomUUID().toString();
  3. Message message = new Message(Message.MessageType.STATE_TRANSITION, uuid);
  4. message.setSrcName("ADMIN");
  5. message.setTgtName(_participant.getInstanceName());
  6. message.setMsgState(Message.MessageState.NEW);
  7. message.setPartitionName("P");
  8. message.setResourceName(WorkflowGenerator.DEFAULT_TGT_DB);
  9. message.setFromState(from);
  10. message.setToState(to);
  11. message.setTgtSessionId(_participant.getSessionId());
  12. message.setSrcSessionId(_manager.getSessionId());
  13. message.setStateModelDef("OnlineOffline");
  14. message.setStateModelFactoryName("DEFAULT");
  15. return message;
  16. }

相关文章