Skip to content

KAFKA-1686; Implement SASL/Kerberos#334

Closed
ijuma wants to merge 62 commits intoapache:trunkfrom
ijuma:KAFKA-1686-V1
Closed

KAFKA-1686; Implement SASL/Kerberos#334
ijuma wants to merge 62 commits intoapache:trunkfrom
ijuma:KAFKA-1686-V1

Conversation

@ijuma
Copy link
Copy Markdown
Member

@ijuma ijuma commented Oct 20, 2015

This PR implements SASL/Kerberos which was originally submitted by @harshach as #191.

I've been submitting PRs to Harsha's branch with fixes and improvements and he has integrated all, but the most recent one. I'm creating this PR so that the Jenkins can run the tests on the branch (they pass locally).

Sriharsha Chintalapani and others added 30 commits September 2, 2015 20:36
* apache/trunk:
  KAFKA-2596: reject commits from unknown groups with positive generations
  MINOR: typing ProcessorDef
  KAFKA-2477: Fix a race condition between log append and fetch that causes OffsetOutOfRangeException.
  KAFKA-2428: Add sanity check in KafkaConsumer for the timeouts
  Kafka-2587:  Only notification handler will update the cache and all verifications will use waitUntilTrue.
  KAFKA-2419; Garbage collect unused sensors
  KAFKA-2534: Fixes and unit tests for SSLTransportLayer buffer overflow
  KAFKA-2476: Add Decimal, Date, and Timestamp logical types.
  KAFKA-2474: Add caching of JSON schema conversions to JsonConverter
  KAFKA-2482: Allow sink tasks to get their current assignment, as well as pause and resume topic partitions.
  KAFKA-2573: Mirror maker system test hangs and eventually fails
  KAFKA-2599: Fix Metadata.getClusterForCurrentTopics throws NPE
  TRIVIAL: remove TODO in KafkaConsumer after KAFKA-2120
  HOTFIX: Persistent store in ProcessorStateManagerTest
  KAFKA-2604; Remove `completeAll` and improve timeout passed to `Selector.poll` from `NetworkClient.poll`
  KAFKA-2601; ConsoleProducer tool shows stacktrace on invalid command parameters
Merge trunk and a few improvements and fixes
* apache/trunk:
  MINOR: Use the correct processor id in the processor thread name
  KAFKA-2614; No more clients can connect after `TooManyConnectionsException` threshold (max.connections.per.ip) is reached
  MINOR: putting back kstream stateful transform methods
  MINOR: Fix exception message in Copycat's Time logical type.
  KAFKA-2600: Align Kafka Streams' interfaces with Java 8 functional interfaces
  KAFKA-2622: Add Time logical type for Copycat.
* Address some of Jun's and Parth's comments
* Make fields final
* Reduce scope of variables where possible
* Remove unused fields and methods
* Fix javadoc
* Fix formatting and naming issues
Merge trunk, address some feedback and code clean-ups
… now

Add private methods to `Login` instead as it's the only class where they are used.
* apache/trunk:
  KAFKA-2637; Cipher suite setting should be configurable for SSL
  Closes apache#206 . *WONT FIX* - no new release planned for 0.8.2 branch
  closes pr apache#206. *WONT FIX* - no new release planned for 0.8.2 branch
  KAFKA-2613; Make maxParallelForks configurable via Gradle config so it can be turned down on shared build infrastructure.
  KAFKA-2581: Run some existing ducktape tests with SSL
  KAFKA-2203: Getting Java8 to relax about javadoc and let our build pass
  KAFKA-2443 KAFKA-2567; Expose windowSize on Rate; - Throttle time should not return NaN
  KAFKA-2633; Default logging from tools to Stderr
ijuma and others added 16 commits October 16, 2015 08:59
The original class has been split into multiple ones and a simple test
was introduced.
…er.startHandshake`

There is now a `SSLTransportLayer.create` method that initialises the instance properly.
Refactor createBrokerConfig methods in `TestUtils`
to make this possible.
Introduce LoginType and refactor KerberosName in order to make `authToLocal` rules configurable
* apache/trunk: (21 commits)
  KAFKA-2665: Add images to code github
  KAFKA-2397: add leave group request to force coordinator trigger rebalance
  KAFKA-2515: Handle oversized messages properly in new consumer
  KAFKA-2484: Add schema projection utilities
  KAFKA-2594: Add InMemoryLRUCacheStore as a preliminary method for bounding in-memory stores
  KAFKA-2419 - Fix to prevent background thread from getting created when not required
  KAFKA-2120: cleaning follow-up
  KAFKA-2487: change kafka.examples.Consumer to use the new java consumer
  MINOR: set up temp directories properly in StreamTaskTest
  KAFKA-2295; Support dynamically loaded classes from context class loader
  KAFKA-2654: optimize unnecessary poll(0) away in StreamTask
  TRIVIAL: add @throws ConsumerWakeupException in KafkaConsumer
  KAFKA-2536: topics tool should allow users to alter topic configuration
  KAFKA-2650: Change ConfigCommand --deleted-config option to align wit…
  KAFKA-2593: Key value stores can use specified serializers and deserializers
  KAFKA-2603: Add timeout arg to ConsoleConsumer for new consumer
  MINOR: ignore wakeups when committing offsets on consumer close
  KAFKA-2632: move fetchable check ahead in handleFetchResponse
  MINOR: flush record collector after local state flush
  KAFKA-2527; System Test for Quotas in Ducktape
  ...
…d fix bug in `ClientUtils.createChannelBuilder`
…ocols

Include improvements from `SaslIntegrationTest` and remove duplicated code.
* apache/trunk:
  MINOR: Fixed README examples on running specific tests.
  KAFKA-2639: Refactoring of ZkUtils
* apache/trunk:
  HOTFIX: check logic of KAFKA-2515 should be on buffer.limit()
  MINOR: Capture stderr in ConsumerPerformanceService.
  KAFKA-2669; Fix LogCleaner.awaitCleaned for LogCleanerIntegrationTest
  KAFKA-2656; Remove hardcoded default key and truststores
  MINOR: Reduce logging level for controller connection failures from `error` to `warn`
@ijuma
Copy link
Copy Markdown
Member Author

ijuma commented Oct 20, 2015

There are some test failures in Jenkins (even though they pass on my box). Ben was able to reproduce them too, so investigating.

ijuma added 2 commits October 20, 2015 16:50
This seems to be necessary for our tests to pass consistently.
`Sasl*ConsumerTest` already tests similar scenarios.
@ijuma
Copy link
Copy Markdown
Member Author

ijuma commented Oct 20, 2015

The tests passed in Jenkins for the Scala 2.10 build, but the 60 minutes limit killed the job while the 2.11 tests were being run. Previous PR builds were taking around 42 minutes and the additional tests from this PR have taken it over the 60 minutes limit.

Do you think I should remove some SASL tests or do we need to bump the Jenkins limit?

@asfgit asfgit closed this in 403158b Oct 20, 2015
@ijuma ijuma deleted the KAFKA-1686-V1 branch March 1, 2016 22:47
efeg added a commit to efeg/kafka that referenced this pull request Jan 29, 2020
bbejeck pushed a commit that referenced this pull request Mar 4, 2021
KAFKA-12393: Document multi-tenancy considerations
Addressed review feedback by @dajac and @rajinisivaram
Ported from apache/kafka-site#334

Reviewers: Bill Bejeck <bbejeck@apache.org>
bbejeck pushed a commit that referenced this pull request Mar 4, 2021
KAFKA-12393: Document multi-tenancy considerations
Addressed review feedback by @dajac and @rajinisivaram
Ported from apache/kafka-site#334

Reviewers: Bill Bejeck <bbejeck@apache.org>
davide-armand pushed a commit to aiven/kafka that referenced this pull request Dec 1, 2025
…records_v1 (apache#334)

This commit slightly speeds up `delete_topic_v1` and `delete_records_v1` by using `WHERE NOT EXISTS` instead of `LEFT JOIN ... WHERE ... IS NULL`. This is also more explicit and easier to understand.

Another understandability change is using explicit locking on log records before deleting them in `delete_topic_v1`. This allows to revert `fk_batches_logs` to the default deferrability mode and not think about how constraint deferring works.

The semantics remains unchanged.
jeqo pushed a commit to aiven/kafka that referenced this pull request Jan 16, 2026
…records_v1 (apache#334)

This commit slightly speeds up `delete_topic_v1` and `delete_records_v1` by using `WHERE NOT EXISTS` instead of `LEFT JOIN ... WHERE ... IS NULL`. This is also more explicit and easier to understand.

Another understandability change is using explicit locking on log records before deleting them in `delete_topic_v1`. This allows to revert `fk_batches_logs` to the default deferrability mode and not think about how constraint deferring works.

The semantics remains unchanged.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants