diff options
| author | Paul Buetow <paul@buetow.org> | 2025-06-22 16:45:17 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2025-06-22 16:45:17 +0300 |
| commit | 4c16cc3c4da7bbf8375d7951185db1761eb396bf (patch) | |
| tree | 19199b664ce802ed3e967e318e6d4ffeb8c9bf39 /src/main/java/simulator | |
| parent | 464df52901e2dcb84eb81a22f2db19cbf17e5a9f (diff) | |
Remove all Raft protocol code
Removed all Raft-related code as it was not working properly:
- Removed VSRaftProtocol.java implementation
- Removed all Raft test files
- Removed Raft example/demo files
- Removed Raft documentation
- Removed Raft simulation files (.dat)
- Removed Raft scripts
- Updated VSRegisteredEvents to remove Raft registration
- Updated SimulationBuilder to remove RAFT constant
- Updated SimulationFactory to remove Raft methods
- Updated SimulationBuilderTest to remove Raft tests
- Updated pom.xml to remove Raft test configurations
The protocol had issues with leader election not completing in GUI mode.
🤖 Generated with Claude Code
https://claude.ai/code
Co-Authored-By: Claude <noreply@anthropic.com>
Diffstat (limited to 'src/main/java/simulator')
| -rw-r--r-- | src/main/java/simulator/builder/SimulationBuilder.java | 1 | ||||
| -rw-r--r-- | src/main/java/simulator/builder/SimulationFactory.java | 32 |
2 files changed, 0 insertions, 33 deletions
diff --git a/src/main/java/simulator/builder/SimulationBuilder.java b/src/main/java/simulator/builder/SimulationBuilder.java index 8ac5d04..c35f0ea 100644 --- a/src/main/java/simulator/builder/SimulationBuilder.java +++ b/src/main/java/simulator/builder/SimulationBuilder.java @@ -351,7 +351,6 @@ public class SimulationBuilder { * Fluent API for common protocol setups */ public static class Protocols { - public static final String RAFT = "protocols.implementations.VSRaftProtocol"; public static final String PING_PONG = "protocols.implementations.VSPingPongProtocol"; public static final String BERKLEY_TIME = "protocols.implementations.VSBerkelyTimeProtocol"; public static final String BROADCAST = "protocols.implementations.VSBroadcastProtocol"; diff --git a/src/main/java/simulator/builder/SimulationFactory.java b/src/main/java/simulator/builder/SimulationFactory.java index c06be00..2bd73b9 100644 --- a/src/main/java/simulator/builder/SimulationFactory.java +++ b/src/main/java/simulator/builder/SimulationFactory.java @@ -8,38 +8,6 @@ import java.util.stream.IntStream; */ public class SimulationFactory { - /** - * Create a standard Raft consensus simulation - * @param numServers Number of Raft servers (minimum 3 for consensus) - * @param numClients Number of client processes - * @return Configured SimulationBuilder - */ - public static SimulationBuilder createRaftSimulation(int numServers, int numClients) throws Exception { - if (numServers < 3) { - throw new IllegalArgumentException("Raft requires at least 3 servers for consensus"); - } - - return new SimulationBuilder() - .withProcesses(numServers + numClients) - .withProtocol(SimulationBuilder.Protocols.RAFT) - .withDuration(15000) // 15 seconds to see leader election - .activateServers(IntStream.range(0, numServers).toArray()) - .activateClients(500, IntStream.range(numServers, numServers + numClients).toArray()); - } - - /** - * Create a Raft simulation with fault tolerance testing - * @param numServers Number of Raft servers - * @return Configured SimulationBuilder with crash/recovery events - */ - public static SimulationBuilder createRaftFaultToleranceSimulation(int numServers) throws Exception { - return createRaftSimulation(numServers, 0) - .withDuration(30000) // 30 seconds for fault testing - .addCrashEvent(0, 5000) // Crash leader after 5s - .addRecoveryEvent(0, 10000) // Recover after 10s - .addCrashEvent(1, 15000) // Crash another server - .addRecoveryEvent(1, 20000); // Recover after 20s - } /** * Create a simple ping-pong simulation |
