@Override public void migrationCompleted(MigrationEvent migrationEvent) { if(migrationEvent.getOldOwner() == null) { for(PartitionLostListener listener : listeners) { try { listener.partitionLost(migrationEvent); } catch (Exception e) { //swallow log.error("An exception was thrown by our partitionLost event listener. I will ignore it. ", e); } } } } });
private void verifyMigrationEvent(final Message<?> msg) { assertNotNull(msg); assertNotNull(msg.getPayload()); assertTrue(msg.getPayload() instanceof MigrationEvent); assertNotNull(((MigrationEvent) msg.getPayload()).getStatus()); assertNotNull(((MigrationEvent) msg.getPayload()).getNewOwner()); // Newer Hazelcast versions doesn't populated 'oldOwner' if we drop member on the same host assertNull(((MigrationEvent) msg.getPayload()).getOldOwner()); }
private void render(DiagnosticsLogWriter writer, MigrationEvent event) { switch (event.getStatus()) { case STARTED: writer.startSection("MigrationStarted"); break; case COMPLETED: writer.startSection("MigrationCompleted"); break; case FAILED: writer.startSection("MigrationFailed"); break; default: return; } Member oldOwner = event.getOldOwner(); writer.writeKeyValueEntry("oldOwner", oldOwner == null ? "null" : oldOwner.getAddress().toString()); writer.writeKeyValueEntry("newOwner", event.getNewOwner().getAddress().toString()); writer.writeKeyValueEntry("partitionId", event.getPartitionId()); writer.endSection(); }
private void render(DiagnosticsLogWriter writer, MigrationEvent event) { switch (event.getStatus()) { case STARTED: writer.startSection("MigrationStarted"); break; case COMPLETED: writer.startSection("MigrationCompleted"); break; case FAILED: writer.startSection("MigrationFailed"); break; default: return; } Member oldOwner = event.getOldOwner(); writer.writeKeyValueEntry("oldOwner", oldOwner == null ? "null" : oldOwner.getAddress().toString()); writer.writeKeyValueEntry("newOwner", event.getNewOwner().getAddress().toString()); writer.writeKeyValueEntry("partitionId", event.getPartitionId()); writer.endSection(); }