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

# CSV source configuration

> Configuration reference for `CsvSourceConfiguration` properties such as `parser-threads`, `buffer-size`, `synchronous-mode`, and `accepts-topic-overrides`, shared across CSV sources.

### Configuration properties

Properties for the CSV Source are provided inside the configuration of a CSV Source.
For example: [Local CSV Source](/configuration/csv/local-csv-source).

| Key                     | Type     | Default                                                                        | Description                                                                                                                             |
| ----------------------- | :------- | :----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| parser-threads          | int      | Half of the available processors, but no more than eight and not less than two | Sets the number of threads that run the parsing in parallel.                                                                            |
| buffer-size             | DataSize | 64KB                                                                           | Sets the size of a byte buffer.                                                                                                         |
| synchronous-mode        | boolean  | false                                                                          | In synchronous mode, the processing of a new file can only start when all the activity related to the previous file has been completed. |
| accepts-topic-overrides | boolean  | false                                                                          | Whether this source is allowed to accept Topic Overrides in the [Load Request](/operations/operations-load).                            |

#### YAML example

```yaml theme={"languages":{"custom":["/engine/python-sdk/0.9/languages/pycon.tmLanguage.json"]}}
dlc:
  csv:
    local:
      sources:
        source:
            root-base-dir: 'data'
            source-properties:
              synchronous-mode: false
              parser-threads: 3
```

### Java configuration

`CsvSourceConfiguration` Java object can be used for configuration in Java. The object is used in the configuration of a
CSV Topic.

For more information, see the Atoti Server documentation on
[ICsvSourceConfiguration](https://docs.activeviam.com/products/atoti/server/latest/docs/sources/csv_source#icsvsourceconfiguration).

#### Java example

```java theme={"languages":{"custom":["/engine/python-sdk/0.9/languages/pycon.tmLanguage.json"]}}
@Bean
LocalCsvSourceDescription source() {
    return LocalCsvSourceDescription.builder("source", "data")
            .sourceConfiguration(
                    CsvSourceConfiguration.builder()
                            .parserThreads(3)
                            .synchronousMode(false)
                            .build()
            )
            .build();
}
```
