You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by jg...@apache.org on 2020/09/22 18:37:26 UTC

[kafka] branch trunk updated (2853284 -> b7c8490)

This is an automated email from the ASF dual-hosted git repository.

jgus pushed a change to branch trunk
in repository https://gitbox.apache.org/repos/asf/kafka.git.


    from 2853284  MINOR: Fix log message when tasks directory is cleaned manually (#9262)
     add b7c8490  KAFKA-10492; Core Kafka Raft Implementation (KIP-595) (#9130)

No new revisions were added by this update.

Summary of changes:
 .gitignore                                         |    1 +
 build.gradle                                       |   76 +
 checkstyle/import-control.xml                      |   14 +
 checkstyle/suppressions.xml                        |   10 +-
 .../org/apache/kafka/clients/NodeApiVersions.java  |    4 +-
 .../org/apache/kafka/common/config/ConfigDef.java  |    2 +-
 .../errors/InconsistentVoterSetException.java      |   31 +
 .../org/apache/kafka/common/protocol/ApiKeys.java  |   65 +-
 .../org/apache/kafka/common/protocol/Errors.java   |   33 +-
 .../org/apache/kafka/common/protocol/Protocol.java |    2 +-
 .../kafka/common/record/ControlRecordType.java     |    7 +
 .../kafka/common/record/ControlRecordUtils.java    |   44 +
 .../apache/kafka/common/record/MemoryRecords.java  |   27 +-
 .../kafka/common/record/MemoryRecordsBuilder.java  |   38 +
 .../apache/kafka/common/record/SimpleRecord.java   |    4 +
 .../kafka/common/requests/AbstractRequest.java     |    6 +
 .../kafka/common/requests/AbstractResponse.java    |    8 +
 .../kafka/common/requests/ApiVersionsResponse.java |    3 +-
 .../common/requests/BeginQuorumEpochRequest.java   |   94 +
 .../common/requests/BeginQuorumEpochResponse.java  |  108 +
 .../common/requests/DescribeQuorumRequest.java     |  109 +
 .../common/requests/DescribeQuorumResponse.java    |   98 +
 .../common/requests/EndQuorumEpochRequest.java     |  101 +
 .../common/requests/EndQuorumEpochResponse.java    |  107 +
 .../apache/kafka/common/requests/VoteRequest.java  |  105 +
 .../apache/kafka/common/requests/VoteResponse.java |  105 +
 .../java/org/apache/kafka/common/utils/Time.java   |    4 +-
 .../java/org/apache/kafka/common/utils/Timer.java  |   26 +
 .../java/org/apache/kafka/common/utils/Utils.java  |    4 +
 .../common/message/BeginQuorumEpochRequest.json    |   39 +
 .../common/message/BeginQuorumEpochResponse.json   |   40 +
 .../common/message/DescribeQuorumRequest.json      |   35 +
 .../common/message/DescribeQuorumResponse.json     |   51 +
 .../common/message/EndQuorumEpochRequest.json      |   43 +
 .../common/message/EndQuorumEpochResponse.json     |   40 +
 .../common/message/LeaderChangeMessage.json        |   32 +
 .../main/resources/common/message/VoteRequest.json |   46 +
 .../resources/common/message/VoteResponse.json     |   45 +
 .../java/org/apache/kafka/clients/MockClient.java  |    1 +
 .../apache/kafka/clients/NodeApiVersionsTest.java  |    9 +-
 .../common/record/ControlRecordUtilsTest.java      |   65 +
 .../common/record/MemoryRecordsBuilderTest.java    |   50 +-
 .../kafka/common/record/MemoryRecordsTest.java     |   41 +
 .../common/requests/ApiVersionsResponseTest.java   |    8 +-
 .../kafka/common/requests/RequestContextTest.java  |    2 +-
 .../apache/kafka/common/utils/MockScheduler.java   |    4 +-
 .../org/apache/kafka/common/utils/MockTime.java    |   14 +-
 .../org/apache/kafka/common/utils/TimerTest.java   |   24 +
 .../kafka/coordinator/group/GroupCoordinator.scala |    2 +-
 core/src/main/scala/kafka/log/Log.scala            |   19 +-
 .../main/scala/kafka/network/RequestChannel.scala  |    2 +-
 .../main/scala/kafka/network/SocketServer.scala    |   12 +-
 .../scala/kafka/raft/KafkaFuturePurgatory.scala    |  122 +
 .../main/scala/kafka/raft/KafkaMetadataLog.scala   |  138 ++
 .../scala/kafka/raft/KafkaNetworkChannel.scala     |  237 ++
 .../main/scala/kafka/raft/SegmentPosition.scala    |   23 +
 .../kafka/security/authorizer/AclAuthorizer.scala  |   24 +-
 core/src/main/scala/kafka/server/KafkaApis.scala   |   12 +-
 .../scala/kafka/server/KafkaRequestHandler.scala   |    8 +-
 .../scala/kafka/server/RaftRequestHandler.scala    |  179 ++
 .../kafka/server/epoch/LeaderEpochFileCache.scala  |    6 +
 .../main/scala/kafka/tools/TestRaftServer.scala    |  404 ++++
 .../kafka/admin/BrokerApiVersionsCommandTest.scala |    7 +-
 .../unit/kafka/network/SocketServerTest.scala      |   30 +-
 .../unit/kafka/raft/KafkaFuturePurgatoryTest.scala |  122 +
 .../unit/kafka/raft/KafkaNetworkChannelTest.scala  |  241 ++
 .../server/AbstractApiVersionsRequestTest.scala    |    2 +-
 .../scala/unit/kafka/server/RequestQuotaTest.scala |   23 +-
 .../server/epoch/LeaderEpochFileCacheTest.scala    |   17 +
 raft/README.md                                     |   73 +
 raft/bin/test-raft-server-start.sh                 |   44 +
 raft/config/raft-log4j.properties                  |   23 +
 raft/config/raft.properties                        |   22 +
 .../main/java/org/apache/kafka/raft/AckMode.java   |   27 +
 .../java/org/apache/kafka/raft/CandidateState.java |  252 ++
 .../java/org/apache/kafka/raft/ElectionState.java  |  125 +
 .../java/org/apache/kafka/raft/EpochState.java     |   42 +
 .../org/apache/kafka/raft/FileBasedStateStore.java |  170 ++
 .../java/org/apache/kafka/raft/FollowerState.java  |  127 +
 .../org/apache/kafka/raft/FuturePurgatory.java     |   76 +
 .../main/java/org/apache/kafka/raft/Isolation.java |   22 +
 .../org/apache/kafka/raft/KafkaRaftClient.java     | 1784 ++++++++++++++
 .../java/org/apache/kafka/raft/LeaderAndEpoch.java |   44 +
 .../java/org/apache/kafka/raft/LeaderState.java    |  301 +++
 .../java/org/apache/kafka/raft/LogAppendInfo.java  |   31 +
 .../java/org/apache/kafka/raft/LogFetchInfo.java   |   33 +
 .../org/apache/kafka/raft/LogOffsetMetadata.java   |   60 +
 .../apache/kafka/raft/LogTruncationException.java  |   26 +
 .../java/org/apache/kafka/raft/NetworkChannel.java |   63 +
 .../java/org/apache/kafka/raft/OffsetAndEpoch.java |   60 +
 .../java/org/apache/kafka/raft/OffsetMetadata.java |   21 +
 .../java/org/apache/kafka/raft/QuorumState.java    |  443 ++++
 .../org/apache/kafka/raft/QuorumStateStore.java    |   52 +
 .../java/org/apache/kafka/raft/RaftClient.java     |   79 +
 .../java/org/apache/kafka/raft/RaftConfig.java     |  210 ++
 .../java/org/apache/kafka/raft/RaftMessage.java    |   26 +
 .../java/org/apache/kafka/raft/RaftRequest.java    |   83 +
 .../java/org/apache/kafka/raft/RaftResponse.java   |   75 +
 .../main/java/org/apache/kafka/raft/RaftUtil.java  |  157 ++
 .../org/apache/kafka/raft/ReplicatedCounter.java   |  132 ++
 .../java/org/apache/kafka/raft/ReplicatedLog.java  |  133 ++
 .../java/org/apache/kafka/raft/RequestManager.java |  210 ++
 .../org/apache/kafka/raft/UnattachedState.java     |   91 +
 .../java/org/apache/kafka/raft/VotedState.java     |   99 +
 .../kafka/raft/internals/KafkaRaftMetrics.java     |  204 ++
 .../org/apache/kafka/raft/internals/LogOffset.java |   48 +
 ...che.kafka.common.config.provider.ConfigProvider |    0
 .../main/resources/common/message/QuorumState.json |   34 +
 .../org/apache/kafka/raft/CandidateStateTest.java  |  165 ++
 .../apache/kafka/raft/FileBasedStateStoreTest.java |   99 +
 .../org/apache/kafka/raft/FollowerStateTest.java   |   82 +
 .../org/apache/kafka/raft/KafkaRaftClientTest.java | 2456 ++++++++++++++++++++
 .../org/apache/kafka/raft/LeaderStateTest.java     |  228 ++
 .../org/apache/kafka/raft/MockFuturePurgatory.java |  117 +
 .../apache/kafka/raft/MockFuturePurgatoryTest.java |   95 +
 .../test/java/org/apache/kafka/raft/MockLog.java   |  445 ++++
 .../java/org/apache/kafka/raft/MockLogTest.java    |  421 ++++
 .../org/apache/kafka/raft/MockNetworkChannel.java  |  123 +
 .../apache/kafka/raft/MockQuorumStateStore.java    |   36 +
 .../org/apache/kafka/raft/QuorumStateTest.java     |  942 ++++++++
 .../java/org/apache/kafka/raft/RaftConfigTest.java |   77 +
 .../apache/kafka/raft/RaftEventSimulationTest.java | 1122 +++++++++
 .../org/apache/kafka/raft/RequestManagerTest.java  |  138 ++
 .../java/org/apache/kafka/raft/VotedStateTest.java |   28 +
 .../kafka/raft/internals/KafkaRaftMetricsTest.java |  263 +++
 raft/src/test/resources/log4j.properties           |   21 +
 settings.gradle                                    |    1 +
 127 files changed, 15728 insertions(+), 88 deletions(-)
 create mode 100644 clients/src/main/java/org/apache/kafka/common/errors/InconsistentVoterSetException.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/record/ControlRecordUtils.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/BeginQuorumEpochRequest.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/BeginQuorumEpochResponse.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/DescribeQuorumRequest.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/DescribeQuorumResponse.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/EndQuorumEpochRequest.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/EndQuorumEpochResponse.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/VoteRequest.java
 create mode 100644 clients/src/main/java/org/apache/kafka/common/requests/VoteResponse.java
 create mode 100644 clients/src/main/resources/common/message/BeginQuorumEpochRequest.json
 create mode 100644 clients/src/main/resources/common/message/BeginQuorumEpochResponse.json
 create mode 100644 clients/src/main/resources/common/message/DescribeQuorumRequest.json
 create mode 100644 clients/src/main/resources/common/message/DescribeQuorumResponse.json
 create mode 100644 clients/src/main/resources/common/message/EndQuorumEpochRequest.json
 create mode 100644 clients/src/main/resources/common/message/EndQuorumEpochResponse.json
 create mode 100644 clients/src/main/resources/common/message/LeaderChangeMessage.json
 create mode 100644 clients/src/main/resources/common/message/VoteRequest.json
 create mode 100644 clients/src/main/resources/common/message/VoteResponse.json
 create mode 100644 clients/src/test/java/org/apache/kafka/common/record/ControlRecordUtilsTest.java
 create mode 100644 core/src/main/scala/kafka/raft/KafkaFuturePurgatory.scala
 create mode 100644 core/src/main/scala/kafka/raft/KafkaMetadataLog.scala
 create mode 100644 core/src/main/scala/kafka/raft/KafkaNetworkChannel.scala
 create mode 100644 core/src/main/scala/kafka/raft/SegmentPosition.scala
 create mode 100644 core/src/main/scala/kafka/server/RaftRequestHandler.scala
 create mode 100644 core/src/main/scala/kafka/tools/TestRaftServer.scala
 create mode 100644 core/src/test/scala/unit/kafka/raft/KafkaFuturePurgatoryTest.scala
 create mode 100644 core/src/test/scala/unit/kafka/raft/KafkaNetworkChannelTest.scala
 create mode 100644 raft/README.md
 create mode 100755 raft/bin/test-raft-server-start.sh
 create mode 100644 raft/config/raft-log4j.properties
 create mode 100644 raft/config/raft.properties
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/AckMode.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/CandidateState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/ElectionState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/EpochState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/FileBasedStateStore.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/FollowerState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/FuturePurgatory.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/Isolation.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/KafkaRaftClient.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/LeaderAndEpoch.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/LeaderState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/LogAppendInfo.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/LogFetchInfo.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/LogOffsetMetadata.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/LogTruncationException.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/NetworkChannel.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/OffsetAndEpoch.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/OffsetMetadata.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/QuorumState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/QuorumStateStore.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RaftClient.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RaftConfig.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RaftMessage.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RaftRequest.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RaftResponse.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RaftUtil.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/ReplicatedCounter.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/ReplicatedLog.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/RequestManager.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/UnattachedState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/VotedState.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/internals/KafkaRaftMetrics.java
 create mode 100644 raft/src/main/java/org/apache/kafka/raft/internals/LogOffset.java
 copy {clients/src/main/resources => raft/src/main/resources/common}/META-INF/services/org.apache.kafka.common.config.provider.ConfigProvider (100%)
 create mode 100644 raft/src/main/resources/common/message/QuorumState.json
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/CandidateStateTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/FileBasedStateStoreTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/FollowerStateTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/KafkaRaftClientTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/LeaderStateTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/MockFuturePurgatory.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/MockFuturePurgatoryTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/MockLog.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/MockLogTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/MockNetworkChannel.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/MockQuorumStateStore.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/QuorumStateTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/RaftConfigTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/RaftEventSimulationTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/RequestManagerTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/VotedStateTest.java
 create mode 100644 raft/src/test/java/org/apache/kafka/raft/internals/KafkaRaftMetricsTest.java
 create mode 100644 raft/src/test/resources/log4j.properties