mirror of
https://github.com/rustfs/rustfs.git
synced 2026-09-07 20:46:11 +00:00
feat(s3select): support compressed CSV and JSON input (#6915)
This commit is contained in:
@@ -23,6 +23,7 @@ use datafusion::{
|
||||
use std::{error::Error as StdError, fmt::Display};
|
||||
use thiserror::Error;
|
||||
|
||||
mod input_stream;
|
||||
mod metrics;
|
||||
pub mod object_store;
|
||||
pub mod query;
|
||||
@@ -79,6 +80,9 @@ pub enum SelectError {
|
||||
#[error("The file is not in a supported compression format. Only GZIP and BZIP2 are supported.")]
|
||||
InvalidCompressionFormat,
|
||||
|
||||
#[error("{compression} is not applicable to the queried object. Please correct the request and try again.")]
|
||||
InvalidCompressionFormatForObject { compression: &'static str },
|
||||
|
||||
#[error("The data source type is not valid. Only CSV, JSON, and Parquet are supported.")]
|
||||
InvalidDataSource,
|
||||
|
||||
@@ -87,6 +91,9 @@ pub enum SelectError {
|
||||
)]
|
||||
TruncatedInput,
|
||||
|
||||
#[error("Scan range queries are not supported on this type of object.")]
|
||||
UnsupportedScanRangeInput,
|
||||
|
||||
#[error("An error occurred while parsing the CSV file. Check the file and try again.")]
|
||||
CsvParsingError,
|
||||
|
||||
@@ -96,6 +103,9 @@ pub enum SelectError {
|
||||
#[error("An error occurred while parsing the Parquet file. Check the file and try again.")]
|
||||
ParquetParsingError,
|
||||
|
||||
#[error("The length of a record in the input or result is greater than the maxCharsPerRecord limit of 1 MB.")]
|
||||
OverMaxRecordSize,
|
||||
|
||||
#[error("{message}")]
|
||||
ParseSelectFailure { message: String },
|
||||
|
||||
|
||||
Reference in New Issue
Block a user