Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

  • partitioner: logical correctness.
  • recordsend: functions work correctly (may need MockCallback).
  • bufferpool: logical correct under multi-thread, failure cases.
  • metadata: logical correct under multi-thread, failure cases.
  • recordaccumulator: functional correct for read/drain, etc; logical correct for append under multi-thread.
  • recordbatch: succeed/fail cases of functions (tryAppend, etc)
  • sender: processReadyPartitions function, handleXX functions, and close function correctness.

kafka.server

  • log: log recover and cleaning logical correctness
  • MORE...

Integration Test

For integration tests we will categories the following modules, and for each module we will do integration tests for different scenarios (normal success cases, failure cases with different configs, etc).

" * " indicate tests that we can start in parallel with producer code stabilization.

admin

  • Create topic
  • Adding partitions to topic
  • Alter topic configs (retention, etc)
  • Alter topic replication factor
  • Partition reassignment
  • Preferred leader election

api

Producer: *

  • Blocking and non-blocking send behavior, with different message size (including too-large message size)
  • Send behavior with null key or null value
  • Send with specific partition key(s)
  • New topic auto-creation

Consumer:

  • Commit and fetch offset behavior
  • Poll behavior with/wo timeout, different fetch size
  • Rebalance behavior
  • Topic change capture behavior

config

  • Invalid values *

replication (with broker hard/soft failures and restart, network partition scenarios)

  • Replica consistency and ISR correctness
  • Controller failover behavior
  • Coordinator failover behavior
  • No message-loss with ack > 1 *

compression *

  • compress/decompress behavior with different batch size
  • decompress/re-compress in mirror-maker (?)

logging

  • String encoder
  • Appender property

util (?)