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

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions