apache/seatunnel · warning

MaxWellJson file does not support this compress type: {}

Error message

MaxWellJson file does not support this compress type: {}

What it means

Warning from MaxWellJsonWriteStrategy.getOrCreateOutputStream when the configured compress format lacks a handled case for MaxWell JSON text output. The writer falls back to an uncompressed stream, so requested compression is silently ignored and the job continues.

Source

Thrown at seatunnel-connectors-v2/connector-file/connector-file-base/src/main/java/org/apache/seatunnel/connectors/seatunnel/file/sink/writer/MaxWellJsonWriteStrategy.java:141

    @Override
    public FSDataOutputStream getOrCreateOutputStream(@NonNull String filePath) {
        FSDataOutputStream fsDataOutputStream = beingWrittenOutputStream.get(filePath);
        if (fsDataOutputStream == null) {
            try {
                switch (compressFormat) {
                    case LZO:
                        LzopCodec lzo = new LzopCodec();
                        OutputStream out =
                                lzo.createOutputStream(
                                        hadoopFileSystemProxy.getOutputStream(filePath));
                        fsDataOutputStream = new FSDataOutputStream(out, null);
                        break;
                    case NONE:
                        fsDataOutputStream = hadoopFileSystemProxy.getOutputStream(filePath);
                        break;
                    default:
                        log.warn(
                                "MaxWellJson file does not support this compress type: {}",
                                compressFormat.getCompressCodec());
                        fsDataOutputStream = hadoopFileSystemProxy.getOutputStream(filePath);
                        break;
                }
                beingWrittenOutputStream.put(filePath, fsDataOutputStream);
                isFirstWrite.put(filePath, true);
            } catch (IOException e) {
                throw CommonError.fileOperationFailed("MaxWellJsonFile", "open", filePath, e);
            }
        }
        return fsDataOutputStream;
    }
}

View on GitHub (pinned to cf67b549a7)

Solutions

  1. Set compress to a supported value (lzo, gzip, none) for maxwell_json sinks
  2. Consult connector docs for supported compress formats per file format
  3. Switch to a columnar format (ORC/Parquet) for broader codec support
  4. Add the codec case to MaxWellJsonWriteStrategy if support is genuinely needed

Example fix

// before
sink = {
  file_format = "maxwell_json"
  compress = "zstd"
}
// after
sink = {
  file_format = "maxwell_json"
  compress = "none"
}
Defensive patterns

Strategy: validation

Validate before calling

Set<String> supported = Set.of("none", "lzo", "gzip");
if (!supported.contains(compressValue.toLowerCase())) {
    throw new IllegalArgumentException("maxwell_json supports compress " + supported + ", got: " + compressValue);
}

Prevention

When it happens

Trigger: Sink with file_format=maxwell_json and a compress codec not covered by the switch (e.g. BROTLI, ZSTD); triggered on first write when the output stream is created.

Common situations: Shared compress settings across sink formats; users expecting text formats to support all codecs; new CompressFormat enum values not propagated to this strategy.

Related errors


AI-assisted analysis of apache/seatunnel@cf67b549a7 (2026-09-10). Data as JSON: /api/errors/6ee52d5c6d852a31. Report an issue: GitHub.