Skip to content

mastr: duplicate key violation for EinheitMastrNummer in changed_dso_assignment table #720

@maurerle

Description

@maurerle

Description of the issue

I got a lot of errors in todays export: Gesamtdatenexport_20260225.zip

2026-02-25 08:00:36,412 [ERROR] Error processing file 'EinheitenAenderungNetzbetreiberzuordnungen_1.xml': 'Execution failed on sql 'INSERT INTO changed_dso_assignment ("EinheitMastrNummer
", "LokationMastrNummer", "NetzbetreiberMastrNummerAlt", "NetzbetreiberMastrNummerNeu", "ArtDerAenderung", "RegistrierungsdatumNetzbetreiberzuordnungsaenderung", "Netzbetreiberzuordnungsa
enderungsdatum", "NetzanschlusspunktMastrNummer", "DatenQuelle", "DatumDownload") VALUES (:EinheitMastrNummer, :LokationMastrNummer, :NetzbetreiberMastrNummerAlt, :NetzbetreiberMastrNumme
rNeu, :ArtDerAenderung, :RegistrierungsdatumNetzbetreiberzuordnungsaenderung, :Netzbetreiberzuordnungsaenderungsdatum, :NetzanschlusspunktMastrNummer, :DatenQuelle, :DatumDownload)': (psy
copg2.errors.UniqueViolation) duplicate key value violates unique constraint "changed_dso_assignment_pkey"
DETAIL:  Key ("EinheitMastrNummer")=(SEE974690188358) already exists.
2026-02-25 08:03:09,722 [ERROR] Error processing file 'Marktrollen.xml': 'Execution failed on sql 'INSERT INTO market_roles ("Id", "Wert", "DatenQuelle", "DatumDownload") VALUES (:Id, :We
rt, :DatenQuelle, :DatumDownload)': (psycopg2.errors.NotNullViolation) null value in column "MastrNummer" of relation "market_roles" violates not-null constraint
DETAIL:  Failing row contains (null, null, null, null, null, null, null, null, null, bulk, 2026-02-25, 1, Übertragungsnetzbetreiber).
2026-02-25 08:03:09,728 [INFO] Creating table 'grid_connections'...
2026-02-25 08:03:14,140 [INFO] From the downloaded xml files following new attribute was introduced: grid_connections.NetzbetreiberMaStRNummer
2026-02-25 08:03:22,942 [INFO] Processing file 'Netze.xml'...
2026-02-25 08:03:22,942 [INFO] Creating table 'grids'...
2026-02-25 08:03:23,135 [ERROR] Error processing file 'Netze.xml': 'could not convert string to float: '334, 335''
2026-02-25 08:03:59,736 [ERROR] Error processing file 'EinheitenAenderungNetzbetreiberzuordnungen_2.xml': 'Execution failed on sql 'INSERT INTO changed_dso_assignment ("EinheitMastrNummer", "LokationMastrNummer", "NetzanschlusspunktMastrNummer", "NetzbetreiberMastrNummerAlt", "NetzbetreiberMastrNummerNeu", "ArtDerAenderung", "RegistrierungsdatumNetzbetreiberzuordnungsaenderung", "Netzbetreiberzuordnungsaenderungsdatum", "DatenQuelle", "DatumDownload") VALUES (:EinheitMastrNummer, :LokationMastrNummer, :NetzanschlusspunktMastrNummer, :NetzbetreiberMastrNummerAlt, :NetzbetreiberMastrNummerNeu, :ArtDerAenderung, :RegistrierungsdatumNetzbetreiberzuordnungsaenderung, :Netzbetreiberzuordnungsaenderungsdatum, :DatenQuelle, :DatumDownload)': (psycopg2.errors.UniqueViolation) duplicate key value violates unique constraint "changed_dso_assignment_pkey"
DETAIL:  Key ("EinheitMastrNummer")=(SEE971165771602) already exists.
2026-02-25 08:06:33,876 [ERROR] Error processing file 'EinheitenAenderungNetzbetreiberzuordnungen_3.xml': 'Execution failed on sql 'INSERT INTO changed_dso_assignment ("EinheitMastrNummer
", "LokationMastrNummer", "NetzanschlusspunktMastrNummer", "NetzbetreiberMastrNummerAlt", "NetzbetreiberMastrNummerNeu", "ArtDerAenderung", "RegistrierungsdatumNetzbetreiberzuordnungsaend
erung", "Netzbetreiberzuordnungsaenderungsdatum", "DatenQuelle", "DatumDownload") VALUES (:EinheitMastrNummer, :LokationMastrNummer, :NetzanschlusspunktMastrNummer, :NetzbetreiberMastrNum
merAlt, :NetzbetreiberMastrNummerNeu, :ArtDerAenderung, :RegistrierungsdatumNetzbetreiberzuordnungsaenderung, :Netzbetreiberzuordnungsaenderungsdatum, :DatenQuelle, :DatumDownload)': (psy
copg2.errors.UniqueViolation) duplicate key value violates unique constraint "changed_dso_assignment_pkey"
DETAIL:  Key ("EinheitMastrNummer")=(SEE973817225167) already exists.

Steps to Reproduce

mastr_downloader = Mastr(engine=self.engine)
mastr_downloader.download()

Ideas of solution

I guess that this does not happen every day, but still.
I thought that Bundesnetzagentur fixed this on their end.
Is there some way to communicate this to the BNetzA?

Context and Environment

  • Version used: v0.16.1
  • Operating system: Linux
  • Environment setup and (python) version: Venv, Python 3.13

Workflow checklist

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions