本文整理汇总了Java中org.apache.cassandra.repair.messages.SyncRequest类的典型用法代码示例。如果您正苦于以下问题:Java SyncRequest类的具体用法?Java SyncRequest怎么用?Java SyncRequest使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
SyncRequest类属于org.apache.cassandra.repair.messages包,在下文中一共展示了SyncRequest类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: doVerb
import org.apache.cassandra.repair.messages.SyncRequest; //导入依赖的package包/类
public void doVerb(MessageIn<RepairMessage> message, int id)
{
// TODO add cancel/interrupt message
RepairJobDesc desc = message.payload.desc;
switch (message.payload.messageType)
{
case VALIDATION_REQUEST:
ValidationRequest validationRequest = (ValidationRequest) message.payload;
// trigger read-only compaction
ColumnFamilyStore store = Keyspace.open(desc.keyspace).getColumnFamilyStore(desc.columnFamily);
Validator validator = new Validator(desc, message.from, validationRequest.gcBefore);
CompactionManager.instance.submitValidation(store, validator);
break;
case SYNC_REQUEST:
// forwarded sync request
SyncRequest request = (SyncRequest) message.payload;
StreamingRepairTask task = new StreamingRepairTask(desc, request);
task.run();
break;
default:
ActiveRepairService.instance.handleMessage(message.from, message.payload);
break;
}
}
示例2: performStreamingRepair
import org.apache.cassandra.repair.messages.SyncRequest; //导入依赖的package包/类
/**
* Starts sending/receiving our list of differences to/from the remote endpoint: creates a callback
* that will be called out of band once the streams complete.
*/
void performStreamingRepair()
{
InetAddress local = FBUtilities.getBroadcastAddress();
// We can take anyone of the node as source or destination, however if one is localhost, we put at source to avoid a forwarding
InetAddress src = r2.endpoint.equals(local) ? r2.endpoint : r1.endpoint;
InetAddress dst = r2.endpoint.equals(local) ? r1.endpoint : r2.endpoint;
SyncRequest request = new SyncRequest(desc, local, src, dst, differences);
StreamingRepairTask task = new StreamingRepairTask(desc, request);
task.run();
}
示例3: startSync
import org.apache.cassandra.repair.messages.SyncRequest; //导入依赖的package包/类
protected void startSync(List<Range<Token>> differences)
{
InetAddress local = FBUtilities.getBroadcastAddress();
SyncRequest request = new SyncRequest(desc, local, r1.endpoint, r2.endpoint, differences);
String message = String.format("Forwarding streaming repair of %d ranges to %s (to be streamed with %s)", request.ranges.size(), request.src, request.dst);
logger.info("[repair #{}] {}", desc.sessionId, message);
Tracing.traceRepair(message);
MessagingService.instance().sendOneWay(request.createMessage(), request.src);
}
示例4: StreamingRepairTask
import org.apache.cassandra.repair.messages.SyncRequest; //导入依赖的package包/类
public StreamingRepairTask(RepairJobDesc desc, SyncRequest request)
{
this.desc = desc;
this.request = request;
}
示例5: StreamingRepairTask
import org.apache.cassandra.repair.messages.SyncRequest; //导入依赖的package包/类
public StreamingRepairTask(RepairJobDesc desc, SyncRequest request, long repairedAt)
{
this.desc = desc;
this.request = request;
this.repairedAt = repairedAt;
}
示例6: doVerb
import org.apache.cassandra.repair.messages.SyncRequest; //导入依赖的package包/类
public void doVerb(MessageIn<RepairMessage> message, int id)
{
// TODO add cancel/interrupt message
RepairJobDesc desc = message.payload.desc;
switch (message.payload.messageType)
{
case PREPARE_MESSAGE:
PrepareMessage prepareMessage = (PrepareMessage) message.payload;
List<ColumnFamilyStore> columnFamilyStores = new ArrayList<>(prepareMessage.cfIds.size());
for (UUID cfId : prepareMessage.cfIds)
{
Pair<String, String> kscf = Schema.instance.getCF(cfId);
ColumnFamilyStore columnFamilyStore = Keyspace.open(kscf.left).getColumnFamilyStore(kscf.right);
columnFamilyStores.add(columnFamilyStore);
}
ActiveRepairService.instance.registerParentRepairSession(prepareMessage.parentRepairSession,
columnFamilyStores,
prepareMessage.ranges);
MessagingService.instance().sendReply(new MessageOut(MessagingService.Verb.INTERNAL_RESPONSE), id, message.from);
break;
case VALIDATION_REQUEST:
ValidationRequest validationRequest = (ValidationRequest) message.payload;
// trigger read-only compaction
ColumnFamilyStore store = Keyspace.open(desc.keyspace).getColumnFamilyStore(desc.columnFamily);
Validator validator = new Validator(desc, message.from, validationRequest.gcBefore);
CompactionManager.instance.submitValidation(store, validator);
break;
case SYNC_REQUEST:
// forwarded sync request
SyncRequest request = (SyncRequest) message.payload;
StreamingRepairTask task = new StreamingRepairTask(desc, request);
task.run();
break;
case ANTICOMPACTION_REQUEST:
logger.debug("Got anticompaction request");
AnticompactionRequest anticompactionRequest = (AnticompactionRequest) message.payload;
try
{
List<Future<?>> futures = ActiveRepairService.instance.doAntiCompaction(anticompactionRequest.parentRepairSession);
FBUtilities.waitOnFutures(futures);
}
catch (Exception e)
{
throw new RuntimeException(e);
}
break;
default:
ActiveRepairService.instance.handleMessage(message.from, message.payload);
break;
}
}