csvim: a headered CSV that omits a column writes NULL into it - the column's defaultValue never applies to seeded rows
Maintainers usually reply within 1 day
@nedelcho-delchev-tues is already working on this.
Since Oct 20, 2026.
- #7994 by @nedelcho-delchev-tues — open
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 74/100
Research direction
Start with components/data/data-csvim/.../CsvProcessor.java, especially the column-list construction in insert and value binding in insertCsvWithHeader; then trace the upsert path. Add or locate CSVIM fixtures for a defaulted column and a NOT NULL column without a default. Done means omitted header columns preserve database defaults on inserts and remain untouched on updates, while the missing required column fails with its name.
Written by the indexing model from the issue text.
Description
Problem
A headered CSV that omits a table column writes an explicit NULL into that column, so the column's declared defaultValue never applies to seeded rows.
CsvProcessor.insert builds the INSERT column list from tableMetadata.getColumns() (components/data/data-csvim/.../CsvProcessor.java:94-101), and insertCsvWithHeader binds getCsvValueForColumn(column) for every one of them (:250-261) — a column absent from the header binds NULL.
Observed effect
An intent-generated Product declares Type with init: 1 (schema "defaultValue": "1"). A seed CSV with header ID,NAME,CODE,PRICE,UUID,UO_M,TAX_RATE lands every product with PRODUCT_TYPE = NULL. Every picker narrowed by where: { Type: 1 } (all stock documents of an inventory model) then silently omits the seeded products, while UI-created products (which get the init: value) appear. Nothing logs.
Expected
For a CSV with a header, insert only the columns the header names (plus the primary key), so the database default applies to the rest — the same result a hand-written INSERT naming those columns gives. A NOT NULL column without a default that the CSV omits should keep failing loudly, with the column named.
Updates (upsert) should likewise leave absent columns untouched rather than nulling them.
Verify
A CSVIM fixture over a table with a defaulted column the CSV omits: the imported row carries the default; a second fixture omitting a NOT NULL defaultless column fails naming it.
- Dominant language
- Java
- Stars
- 278
- Forks
- 97
- Avg merge
- 18h 53m
- Merged PRs (30d)
- 228
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from eclipse-dirigible/dirigible
-
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
eclipse-dirigible/dirigible#7958 ·
Maintainers usually reply within 1 day
-
intent: a create-from without fromStatus answers 200 on a missing or unknown source id (no 400/404)Open
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
eclipse-dirigible/dirigible#7945 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
eclipse-dirigible/dirigible#7891 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
eclipse-dirigible/dirigible#6538 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
eclipse-dirigible/dirigible#4812 ·
Maintainers usually reply within 1 day
All issues in eclipse-dirigible/dirigible
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
navikt/mock-oauth2-server#1129 ·
Maintainers usually reply within 1 day
-
bug main ui
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
openhab/openhab-webui#4600 ·
Maintainers usually reply within 4 days
-
`DeepSeekChatModel` streaming returns no content when chunks have no `id`Possibly taken @lejuho claimed this today. Openstatus: waiting-for-triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
spring-projects/spring-ai#7214 ·
Maintainers usually reply within 2 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
QuiltMC/update-quilt-meta#28 ·
-
awaiting triage Documentation P3
Difficulty 1/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day