duckdb / duckdb/duckdb-python

overwrite parameter to relation.write_csv and write_parquet seems to do nothing

Aperta
#156 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
needs triage
Lingua principale
Python
Stelle
187
Fork
112
Merge medio
13h 29m
PR unite (30g)
17

Descrizione

### What happens?

The DuckDBPyRelation methods `write_csv` and `write_parquet` both have a parameter called `overwrite: bool`. Setting it to either False or True does nothing as far as I can tell; the target file is always overwritten if it exists.

I expected setting overwrite=False to raise an error if the target already exists. If it's meant to something else, can you please document what it does?

I can't find a matching parameter in duckdb COPY TO, so maybe it's meant for something else and I'm just confused.

### To Reproduce

```
conn.sql('select * from range(10)').write_csv('/tmp/foo.csv', overwrite=False)
conn.sql('select * from range(10)').write_csv('/tmp/foo.csv', overwrite=False)
```
The file is overwritten two times in a row.

### OS:

Linux

### DuckDB Package Version:

1.4.1

### Python Version:

3.12.12

### Full Name:

Daniel Armak

### Affiliation:

SparkBeyond

### What is the latest build you tested with? If possible, we recommend testing with the latest nightly build.

I have tested with a stable release

### Did you include all relevant data sets for reproducing the issue?

Yes

### Did you include all code required to reproduce the issue?

- [x] Yes, I have

### Did you include all relevant configuration to reproduce the issue?

- [x] Yes, I have

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.