> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kinetica.com/llms.txt
> Use this file to discover all available pages before exploring further.

# IngestOptions

> IngestOptions — Kinetica Rust API

[gpudb\_api](https://docs.kinetica.com/content/api/rust/index.md)::<wbr />[filesystem](https://docs.kinetica.com/content/api/rust/filesystem/index.md)
[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L224-L246)&#x20;

<pre>`pub struct IngestOptions { /* private fields */ }`</pre>

Options for ingesting files: the options of `/insert/records/fromfiles`.Each setter sets its option as well as its value; an option without a setter can be given with [`set_option`](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions#method.set_option).

## Implementations

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L248-L531)
impl [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L250-L252)
pub fn [new](#method.new)() -> Self

Options with nothing set.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L254-L256)
pub fn [bad\_record\_table\_name](#method.bad_record_table_name)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L260-L268)
pub fn [set\_bad\_record\_table\_name](#method.set_bad_record_table_name)( \&mut self, bad\_record\_table\_name: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), ) -> \&mut Self

Sets the table bad records go to; an empty name is ignored, with a warning.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L270-L272)
pub fn [bad\_record\_table\_limit](#method.bad_record_table_limit)(\&self) -> [i64](https://doc.rust-lang.org/1.98.1/std/primitive.i64.html)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L274-L278)
pub fn [set\_bad\_record\_table\_limit](#method.set_bad_record_table_limit)( \&mut self, bad\_record\_table\_limit: [i64](https://doc.rust-lang.org/1.98.1/std/primitive.i64.html), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L282-L284)
pub fn [column\_formats](#method.column_formats)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&\[([String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), ([String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)))]>

The format of each column named, as a pair such as `("date", "%Y-%m-%d")`.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L289-L305)
pub fn [set\_column\_formats](#method.set_column_formats)( \&mut self, column\_formats: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<([String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), ([String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)))>, ) -> \&mut Self

Sets the format of each column named, sent as a JSON object such as `{"column":{"date":"%Y-%m-%d"}}`; an empty list is ignored, with a warning.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L307-L309)
pub fn [columns\_to\_load](#method.columns_to_load)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&\[[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)]>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L316-L331)
pub fn [set\_columns\_to\_load](#method.set_columns_to_load)( \&mut self, columns\_to\_load: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>, ) -> [Result](https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html)\<\&mut Self, [KineticaError](https://docs.kinetica.com/content/api/rust/errors/enum.KineticaError.md)>

Sets the columns to load, sent as a JSON array, each once.

##### Errors

Fails if a column is also one to skip.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L333-L335)
pub fn [columns\_to\_skip](#method.columns_to_skip)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&\[[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)]>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L342-L357)
pub fn [set\_columns\_to\_skip](#method.set_columns_to_skip)( \&mut self, columns\_to\_skip: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>, ) -> [Result](https://doc.rust-lang.org/1.98.1/core/result/enum.Result.html)\<\&mut Self, [KineticaError](https://docs.kinetica.com/content/api/rust/errors/enum.KineticaError.md)>

Sets the columns to skip, sent as a JSON array, each once.

##### Errors

Fails if a column is also one to load.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L359-L361)
pub fn [default\_column\_formats](#method.default_column_formats)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&\[([String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html))]>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L365-L377)
pub fn [set\_default\_column\_formats](#method.set_default_column_formats)( \&mut self, default\_column\_formats: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<([String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html))>, ) -> \&mut Self

Sets the default format of each kind of column, sent as a JSON object; an empty list is ignored, with a warning.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L379-L381)
pub fn [error\_handling\_mode](#method.error_handling_mode)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[ErrorHandlingMode](https://docs.kinetica.com/content/api/rust/filesystem/enum.ErrorHandlingMode.md)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L383-L387)
pub fn [set\_error\_handling\_mode](#method.set_error_handling_mode)( \&mut self, error\_handling\_mode: [ErrorHandlingMode](https://docs.kinetica.com/content/api/rust/filesystem/enum.ErrorHandlingMode.md), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L389-L391)
pub fn [file\_type](#method.file_type)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[FileType](https://docs.kinetica.com/content/api/rust/filesystem/enum.FileType.md)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L393-L397)
pub fn [set\_file\_type](#method.set_file_type)(\&mut self, file\_type: [FileType](https://docs.kinetica.com/content/api/rust/filesystem/enum.FileType.md)) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L399-L401)
pub fn [primary\_keys](#method.primary_keys)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&\[[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)]>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L405-L413)
pub fn [set\_primary\_keys](#method.set_primary_keys)(\&mut self, primary\_keys: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>) -> \&mut Self

Sets the primary key columns, sent joined by commas; an empty list is ignored, with a warning.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L415-L417)
pub fn [shard\_keys](#method.shard_keys)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&\[[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)]>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L421-L429)
pub fn [set\_shard\_keys](#method.set_shard_keys)(\&mut self, shard\_keys: [Vec](https://doc.rust-lang.org/1.98.1/alloc/vec/struct.Vec.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>) -> \&mut Self

Sets the shard key columns, sent joined by commas; an empty list is ignored, with a warning.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L431-L433)
pub fn [text\_comment\_string](#method.text_comment_string)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L435-L439)
pub fn [set\_text\_comment\_string](#method.set_text_comment_string)( \&mut self, text\_comment\_string: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L441-L443)
pub fn [text\_delimiter](#method.text_delimiter)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L445-L449)
pub fn [set\_text\_delimiter](#method.set_text_delimiter)(\&mut self, text\_delimiter: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L451-L453)
pub fn [text\_escape\_character](#method.text_escape_character)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L455-L459)
pub fn [set\_text\_escape\_character](#method.set_text_escape_character)( \&mut self, text\_escape\_character: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L461-L463)
pub fn [is\_text\_has\_header](#method.is_text_has_header)(\&self) -> [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L465-L469)
pub fn [set\_text\_has\_header](#method.set_text_has_header)(\&mut self, text\_has\_header: [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L471-L473)
pub fn [text\_header\_property\_delimiter](#method.text_header_property_delimiter)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L475-L479)
pub fn [set\_text\_header\_property\_delimiter](#method.set_text_header_property_delimiter)( \&mut self, text\_header\_property\_delimiter: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L481-L483)
pub fn [text\_null\_string](#method.text_null_string)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L485-L489)
pub fn [set\_text\_null\_string](#method.set_text_null_string)(\&mut self, text\_null\_string: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L491-L493)
pub fn [text\_quote\_character](#method.text_quote_character)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<&[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L495-L499)
pub fn [set\_text\_quote\_character](#method.set_text_quote_character)( \&mut self, text\_quote\_character: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L501-L503)
pub fn [is\_truncate\_table](#method.is_truncate_table)(\&self) -> [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L505-L509)
pub fn [set\_truncate\_table](#method.set_truncate_table)(\&mut self, truncate\_table: [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L511-L513)
pub fn [type\_inference\_mode](#method.type_inference_mode)(\&self) -> [Option](https://doc.rust-lang.org/1.98.1/core/option/enum.Option.html)\<[TypeInferenceMode](https://docs.kinetica.com/content/api/rust/filesystem/enum.TypeInferenceMode.md)>

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L515-L519)
pub fn [set\_type\_inference\_mode](#method.set_type_inference_mode)( \&mut self, type\_inference\_mode: [TypeInferenceMode](https://docs.kinetica.com/content/api/rust/filesystem/enum.TypeInferenceMode.md), ) -> \&mut Self

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L522-L525)
pub fn [set\_option](#method.set_option)(\&mut self, key: &[str](https://doc.rust-lang.org/1.98.1/std/primitive.str.html), value: impl [ToString](https://doc.rust-lang.org/1.98.1/alloc/string/trait.ToString.html)) -> \&mut Self

Sets any option, by name, over what the setters set.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L528-L530)
pub fn [options](#method.options)(\&self) -> [HashMap](https://doc.rust-lang.org/1.98.1/std/collections/hash/map/struct.HashMap.html)\<[String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html), [String](https://doc.rust-lang.org/1.98.1/alloc/string/struct.String.html)>

The options to send.

## Trait Implementations

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
impl [Clone](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html) for [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
fn [clone](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#tymethod.clone)(\&self) -> [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

Returns a duplicate of the value. [Read more](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#tymethod.clone)

1.0.0 (const: [unstable](https://github.com/rust-lang/rust/issues/142757)) · [Source](https://doc.rust-lang.org/1.98.1/src/core/clone.rs.html#245-247)
fn [clone\_from](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#method.clone_from)(\&mut self, source: \&Self)

Performs copy-assignment from `source`. [Read more](https://doc.rust-lang.org/1.98.1/core/clone/trait.Clone.html#method.clone_from)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
impl [Debug](https://doc.rust-lang.org/1.98.1/core/fmt/trait.Debug.html) for [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
fn [fmt](https://doc.rust-lang.org/1.98.1/core/fmt/trait.Debug.html#tymethod.fmt)(\&self, f: \&mut [Formatter](https://doc.rust-lang.org/1.98.1/core/fmt/struct.Formatter.html)\<'\_>) -> [Result](https://doc.rust-lang.org/1.98.1/core/fmt/type.Result.html)

Formats the value using the given formatter. [Read more](https://doc.rust-lang.org/1.98.1/core/fmt/trait.Debug.html#tymethod.fmt)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
impl [Default](https://doc.rust-lang.org/1.98.1/core/default/trait.Default.html) for [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
fn [default](https://doc.rust-lang.org/1.98.1/core/default/trait.Default.html#tymethod.default)() -> [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

Returns the “default value” for a type. [Read more](https://doc.rust-lang.org/1.98.1/core/default/trait.Default.html#tymethod.default)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
impl [Eq](https://doc.rust-lang.org/1.98.1/core/cmp/trait.Eq.html) for [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
impl [PartialEq](https://doc.rust-lang.org/1.98.1/core/cmp/trait.PartialEq.html) for [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
fn [eq](https://doc.rust-lang.org/1.98.1/core/cmp/trait.PartialEq.html#tymethod.eq)(\&self, other: &[IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)) -> [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)

Tests for `self` and `other` values to be equal, and is used by `==`.

1.0.0 (const: [unstable](https://github.com/rust-lang/rust/issues/143800)) · [Source](https://doc.rust-lang.org/1.98.1/src/core/cmp.rs.html#263)
fn [ne](https://doc.rust-lang.org/1.98.1/core/cmp/trait.PartialEq.html#method.ne)(\&self, other: [\&Rhs](https://doc.rust-lang.org/1.98.1/std/primitive.reference.html)) -> [bool](https://doc.rust-lang.org/1.98.1/std/primitive.bool.html)

Tests for `!=`. The default implementation is almost always sufficient, and should not be overridden without very good reason.

[Source](https://github.com/kineticadb/kinetica-api-rust/blob/master/crates/gpudb-api/src/filesystem/ingest.rs#L223)
impl [StructuralPartialEq](https://doc.rust-lang.org/1.98.1/core/marker/trait.StructuralPartialEq.html) for [IngestOptions](https://docs.kinetica.com/content/api/rust/filesystem/struct.IngestOptions.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.