uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/worker/fetchers/kafka/AbstractKafkaFetcherThread.java (3 lines): - line 339: // TODO (T4575853): recreate kafka consumer if kafka consumer is closed. - line 628: // TODO (T4367183): currently, if more than one jobs have the same TopicPartition, - line 1036: // FIXME: this is a workaround for retry queue duplication problem. uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/controller/rebalancer/RpcJobColocatingRebalancer.java (3 lines): - line 256: // TODO emit metric if candidate worker for a partition is empty - line 257: // TODO: can consider move these jobs to other workers for short mitigation - line 287: // TODO: emit metric if the workers within partition is empty uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/utils/RetryUtils.java (3 lines): - line 89: // TODO (T4576211): we compare topic with RQ in config in order to avoid introducing additional - line 96: // TODO (T4576211): we compare topic with DLQ in config in order to avoid introducing additional - line 103: // TODO (T4576211): we compare topic with RESQ in config in order to avoid introducing additional uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/controller/rebalancer/AbstractRpcUriRebalancer.java (3 lines): - line 155: // TODO: moving batch jobs around might not be a good idea, because the same job will start - line 275: *

TODO: while minimzeWorkers shrinks the number of workers where possible, it is still - line 590: // TODO:yayang how to calculate target worker count when used workers are overloaded uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/worker/pipelines/KafkaPipelineStateManager.java (3 lines): - line 185: // TODO (T4367183): handle the case that the same job definition is assigned to multiple job_ids. - line 207: // TODO (T4367183): handle the case that the same job definition is assigned to multiple job_ids. - line 229: // TODO (T4367183): handle the case that the same job definition is assigned to multiple job_ids. uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/worker/dispatcher/grpc/GrpcManagedChannelPool.java (2 lines): - line 35: *

TODO: register a metric emitter to the gRPC state change listener. - line 257: // TODO: implement down scale uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/controller/storage/Store.java (2 lines): - line 19: *

TODO (T4575491): expose async API that returns CompletableFuture to increase concurrency - line 43: *

TODO (T4575629): move keyAssigner parameter to constructor since it is based on the uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/worker/processor/SimpleOutboundMessageLimiter.java (2 lines): - line 222: * tries to get a permit from the inflight limiter TODO: cleanup after migrate to async permit - line 248: // TODO (T4576171): use tryAcquire instead of blocking forever on lock uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/worker/processor/MessageAckStatusManager.java (2 lines): - line 77: // TODO (T4576653): determine if multiple creation creation by computeIfAbsent is ok. - line 226: // TODO: replace ArrayAckTrackingQueue with LinkedAckTrackingQueue to reduce maintenance uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/common/ZKUtils.java (1 line): - line 26: // TODO: Fix bug in EnsembleTracker, and disable zk34CompatibilityMode uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/worker/processor/ProcessorImpl.java (1 line): - line 1029: // TODO (gteo): cleanup / deprecate processing scope uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/controller/rebalancer/ShadowRebalancerDelegateImpl.java (1 line): - line 22: * TODO: clean up the shadow framework after the new rebalancer is rolled uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/controller/autoscalar/AutoScalar.java (1 line): - line 150: // TODO: remove hardcoded topic group after root cause fixed see KAFEP-2386 uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/worker/processor/ProcessorMessage.java (1 line): - line 395: // TODO: remove once zone isolation mode support zone distribution uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/worker/common/TracedConsumerRecord.java (1 line): - line 34: *

TODO: (chenz) move kafka tracing utilities into common library uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/controller/manager/JobManager.java (1 line): - line 209: *

TODO (T4575557): trigger rebalance based on "unbalanced work" as well as dead worker. uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/worker/controller/StateWorking.java (1 line): - line 245: // TODO: this section is not covered due to flaky tests. Fix the flaky uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/common/PodUtils.java (1 line): - line 7: * Utility class to support pod isolation TODO: remove this class and replace with the PodUtils from uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/controller/storage/TTLDecorator.java (1 line): - line 203: // TODO (T4678197): add metrics for age of data into store uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/worker/fetcher/KafkaFetcherFactory.java (1 line): - line 75: // TODO: This is not extensible way of encoding this. The FetcherFactory should make a decision uforwarder/src/main/java/com/uber/data/kafka/consumerproxy/utils/NodeConfigurationUtils.java (1 line): - line 26: // TODO: throw exception instead of return UNKNOWN_HOST uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/utils/NodeConfigurationUtils.java (1 line): - line 26: // TODO: throw exception instead of return UNKNOWN_HOST uforwarder-core/src/main/java/com/uber/data/kafka/datatransfer/worker/controller/GrpcControllerConfiguration.java (1 line): - line 47: // TODO: refactor configuration naming