Sean Fulton
08/25/2025, 8:12 PMShivam Choudhary
08/27/2025, 1:00 AMCristi Aldulea
08/28/2025, 4:39 AMSuraj Goel
09/03/2025, 3:34 PMtransformSpec filtering operates after row deserialization and data ingestion and the above feature can help in saving a lot of computation.Yotam Bagam
09/08/2025, 8:25 AMVivek M
09/08/2025, 10:12 AMOverview
We are facing an issue while ingesting a large dataset from S3 into Apache Druid. The ingestion process fails during the segment building phase with a data length mismatch error.
Error Message
java.lang.IllegalStateException: java.io.IOException: com.amazonaws.SdkClientException: Data read has a different length than the expected: dataLength=9404416; expectedLength=1020242891; includeSkipped=true; in.getClass()=class com.amazonaws.services.s3.AmazonS3Client$2; markedSupported=false; marked=0; resetSinceLastMarked=false; markCount=0; resetCount=0
at org.apache.commons.io.LineIterator.hasNext(LineIterator.java:108)
at org.apache.druid.data.input.TextReader$1.hasNext(TextReader.java:73)
at org.apache.druid.data.input.IntermediateRowParsingReader$1.hasNext(IntermediateRowParsingReader.java:60)
at org.apache.druid.java.util.common.parsers.CloseableIterator$2.findNextIteratorIfNecessary(CloseableIterator.java:74)
at org.apache.druid.java.util.common.parsers.CloseableIterator$2.next(CloseableIterator.java:108)
at org.apache.druid.java.util.common.parsers.CloseableIterator$1.next(CloseableIterator.java:52)
at org.apache.druid.indexing.common.task.FilteringCloseableInputRowIterator.hasNext(FilteringCloseableInputRowIterator.java:68)
at org.apache.druid.data.input.HandlingInputRowIterator.hasNext(HandlingInputRowIterator.java:63)
at org.apache.druid.indexing.common.task.InputSourceProcessor.process(InputSourceProcessor.java:95)
at org.apache.druid.indexing.common.task.IndexTask.generateAndPublishSegments(IndexTask.java:891)
at org.apache.druid.indexing.common.task.IndexTask.runTask(IndexTask.java:500)
Context
• The error occurs while ingesting a large JSON file from S3.
• Data read has a length of 9,404,416 bytes, while the expected length is 1,020,242,891 bytes.
• The error happens in the BUILD_SEGMENTS phase.
• The same large dataset is ingested successfully from our local Druid setup without any issues.
• Other datasets of smaller sizes are being ingested successfully.
Questions / Request for Support
We are looking for guidance and support on the following points:
1. Is this a known issue when ingesting large files from S3 into Druid?
2. Are there recommended configurations or best practices to handle such issues?
3. Should we consider splitting files, adjusting timeouts, or configuring retries to better handle large file ingestion?
4. Are there troubleshooting steps, patches, or workarounds that can help resolve this problem?
Additional Information
• Druid version, ingestion spec, and sample files can be provided upon request.
• We are happy to share more logs and configuration details as needed.
Thank you for your support!Suraj Goel
09/13/2025, 2:07 PMAryan Mullick
09/19/2025, 7:26 AMAdheip Singh
10/02/2025, 9:02 PMKrishna Singh
10/04/2025, 6:43 PMSanjay Dowerah
10/08/2025, 10:21 AMCalum Miller
10/14/2025, 10:53 AMCalum Miller
10/14/2025, 10:56 AMPANKAJ KUMAR
10/15/2025, 5:39 AMlnault
10/15/2025, 1:26 PMtaka hayase
10/28/2025, 12:49 PMJulien Blondeau
10/29/2025, 1:34 PMUtkarsh Chaturvedi
10/31/2025, 4:26 AMtieredReplicants is set higher than the number of historicals in a tier.
Setup example:
• Tier has 3 historicals
• Datasource configured with tieredReplicants: 5
Question: What actually happens in this case?
1. Does Druid cap the replicas at 3 (one per historical)?
2. Can a single historical load multiple copies of the same segment to satisfy the replication factor?
3. Does it fail/warn/queue the additional replicas?
I couldn't find explicit documentation about this edge case. The architecture seems designed to distribute segments across different historicals, but I want to confirm the actual behavior when requested replicas exceed available nodes.
Has anyone tested this scenario or can point me to the relevant code/docs that clarifies this?
Thanks!Utkarsh Chaturvedi
11/18/2025, 7:20 AMEtisha Jain
11/18/2025, 7:33 AMRenato CRON
11/19/2025, 3:33 PMdruid.coordinator.asOverlord.enabled=true).
Problem: After applying the new configuration with separate coordinator and overlord StatefulSets, the coordinator keeps crashing with OOM errors.
What I've done:
1. Updated the Druid CR to have separate coordinators and overlords sections
2. Deleted the existing coordinator StatefulSet (required due to immutable field changes like port)
3. Manually created the missing task tables (druid_tasks, druid_tasklogs, druid_tasklocks) since they didn't exist - my metadata DB only had the 7 base tables (druid_audit, druid_config, druid_datasource, druid_pendingsegments, druid_rules, druid_segments, druid_supervisors)
4. Schema I used: https://gist.github.com/renatocron/8056649b67cc53b02a44a6f98fd30d5b - generated via claude from server/src/main/java/org/apache/druid/metadata/SQLMetadataStorageActionHandler.java - this file do not exists anymore in 35
Current state:
• Tables are created, no more "relation does not exist" errors
But coordinator is now OOM crashing, I reverted everthing and dropped tables now,
I set druid.metadata.storage.connector.createTables=true on coordinator but even then it would not ceate table, was this a bug in the older version?Lee Schumacher
11/20/2025, 12:14 AMRazin Bouzar
11/20/2025, 6:52 PM吴花露
11/22/2025, 8:38 AMD S
11/25/2025, 1:09 AM吴花露
11/25/2025, 2:02 AMAkaash B
12/02/2025, 2:58 PMAshish Kumar
12/03/2025, 9:52 AMYotam Bagam
12/03/2025, 11:43 AMstandard-IA s3 storage class on the s3 files when uploaded to s3?Danny Wilkins
12/03/2025, 3:40 PM