Skip to content

Keine Wildcard Domains erlaubt

Das ging auf jeden fall for 1-2 Monaten noch. Wenn man versucht eine Wildcard Domain in DNSVS anzulegen (in meinem Fall *.dev.etp.kit.edu.) kommt eine Fehlermeldung: [dns] FQDN-Namenskonvention verletzt Details new row for relation "dns_ntree" violates check constraint "chk_dns_ntree_name".

Meiner Vermutung nach erlaubt einer dieser checks kein * als erstes Zeichen im FQDN String.

Hier noch die gesammte Fehlerinfo:
{
  "ta": [
   {
    "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_check_fqdn",
    "name": "dns.fqdn.list",
    "old": {
     "value_list": [
      "*.dev.etp.kit.edu."
     ]
    }
   },
   {
    "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_rec_type_def",
    "name": "dnscfg.record_type.list",
    "old": {
     "name": "A"
    },
    "when": {
     "returns_no_data": [
      "9d57897b-2241-42a9-8643-ae0cf6f9fde9_check_fqdn"
     ]
    }
   },
   {
    "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_fqdn_type",
    "name": "dnscfg.fqdn_type.list",
    "inner_join_ref": {
     "9d57897b-2241-42a9-8643-ae0cf6f9fde9_rec_type_def": "api_fkey_dnscfg_record_type_dflt_fqdn_type"
    },
    "when": {
     "returns_no_data": [
      "9d57897b-2241-42a9-8643-ae0cf6f9fde9_check_fqdn"
     ]
    }
   },
   {
    "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_crt_fqdn",
    "name": "dns.fqdn.create",
    "new": {
     "value": "*.dev.etp.kit.edu.",
     "description": ""
    },
    "new_ref_params": [
     {
      "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_fqdn_type",
      "params": {
       "type": "name"
      }
     }
    ],
    "when": {
     "returns_no_data": [
      "9d57897b-2241-42a9-8643-ae0cf6f9fde9_check_fqdn"
     ]
    }
   },
   {
    "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_upd_fqdn",
    "name": "dns.fqdn.update",
    "new": {
     "description": ""
    },
    "old": {
     "value": "*.dev.etp.kit.edu."
    },
    "when": {
     "and": [
      {
       "and": [
        true,
        false
       ]
      },
      {
       "returns_data": [
        "9d57897b-2241-42a9-8643-ae0cf6f9fde9_check_fqdn"
       ]
      }
     ]
    }
   },
   {
    "name": "dns.record.create",
    "new": {
     "fqdn": "*.dev.etp.kit.edu.",
     "type": "A",
     "data": "129.13.101.12",
     "target_is_singleton": false,
     "target_is_reverse_unique": false
    },
    "idx": "9d57897b-2241-42a9-8643-ae0cf6f9fde9"
   }
  ],
  "result": {
   "exception": {
    "error": {
     "code": 35,
     "description": "[dns] FQDN-Namenskonvention verletzt",
     "details": "Für Labels hostbezogener Namenstypen gilt: erstes Zeichen: alphanumerisch [a-z,0-9], nachfolgende Zeichen: alphanumerisch oder '-' oder leer, letztes Zeichen darf kein '-' sein. Für Labels aller anderen nicht-hostbezogenen Namenstypen ist der vorangestellte Unterstrich optional. Für Wildcard-Labels ist ausschließlich '*' erlaubt."
    },
    "error_type": {
     "code": -20102,
     "name": "chk_constraint_violation",
     "description": "Datensatzprüfkriterium verletzt"
    },
    "constraint": {
     "name": "api_chk_dns_fqdn_label",
     "description": "Für Labels hostbezogener Namenstypen gilt: erstes Zeichen: alphanumerisch [a-z,0-9], nachfolgende Zeichen: alphanumerisch oder '-' oder leer, letztes Zeichen darf kein '-' sein. Für Labels aller anderen nicht-hostbezogenen Namenstypen ist der vorangestellte Unterstrich '_' optional. Für Wildcard-Labels ist ausschließlich '*' erlaubt. Hostbezogene Namenstypen haben das Attribut 'is_host=true'."
    },
    "stacked_diag_params": {
     "sqlstate": "23514",
     "message": "new row for relation \"dns_ntree\" violates check constraint \"chk_dns_ntree_name\"",
     "detail": "Failing row contains (9566362, 9566361, t, t, t, f, 0, f, dflt:11000, *, , *.dev.etp.kit.edu., *.dev.etp.kit.edu, f, 236, 57068, {9566362,9566361,8538428,134283,97,1}, null, 0, f, *.dev.etp.kit.edu.).",
     "hint": "",
     "context": "PL/pgSQL function eh.set_err(eh.stacked_diag_params_rec_type,name,name,eh.userparams_kv_rec_type[],eh.typecode_rec_type) line 22 at RAISE\\nSQL statement \"SELECT eh.set_err(sd_rec, fpkg, fname, up_kv_rec_list, et_rec)\"\\nPL/pgSQL function dns_wapi_4_0.ta_stmt_handler(jsonb,wapi_4_0.exec_ta_stmt_rec_type) line 198 at PERFORM\\nSQL statement \"select\\n                    eh_ret_stmt_pos, eh_ret_stmt_idx,\\n                    (attrs.dict #> array[int_dwh_tab_arg_name, dwh_gpk_col_name])::bigint,\\n                    attrs.dict - attrs.fattrs,\\n                    nextval('obj_dict_pos_seq')\\n                  from dns_wapi_4_0.ta_stmt_handler(in_ta_osr_jsonb => stmt_osr_jsonb, in_stmt_rec => rp_tah_stmt_rec) as attrs(dict, fattrs)\"\\nPL/pgSQL function wapi_4_0.exec_ta_handler(bigint,jsonb,boolean,boolean,boolean,boolean,text,text) line 823 at RETURN QUERY\\nSQL statement \"select tah.out_stmt_pos, tah.out_stmt_idx, tah.out_obj_dict from wapi_4_0.exec_ta_handler(\\n    in_ta_id => ta_id,\\n    in_ta_osr_jsonb => ta_osr_jsonb,\\n    in_keep_tmp_ta => in_keep_tmp_ta,\\n    in_report_stmt_pos => in_report_stmt_pos,\\n    in_is_dry_mode => in_is_dry_mode,\\n    in_ignore_maint_state => in_ignore_maint_state,\\n    in_su_login_name => in_su_login_name,\\n    in_language_tag => in_language_tag\\n  ) AS tah\"\\nPL/pgSQL function wapi_4_0.ta_handler(text,text,text,boolean,boolean,boolean,boolean,text,text) line 33 at RETURN QUERY",
     "dml_src_table": "dns_ntree",
     "schema": "netadmin",
     "table": "dns_ntree",
     "column": "",
     "datatype": "",
     "constraint": "chk_dns_ntree_name"
    },
    "others": {},
    "traceback": [
     {
      "function": "dns.exec_insert_pqdn",
      "param": {
       "dns.fqdn.value": [
        {
         "state": null,
         "value": "*.dev.etp.kit.edu."
        }
       ],
       "dnscfg.fqdn_type.description": [
        {
         "state": null,
         "value": "Domain/Host"
        }
       ]
      }
     },
     {
      "function": "wapi_4_0.exec_ta_handler",
      "param": {
       "wapi.transaction_stmt.pos": [
        {
         "state": null,
         "value": 3
        }
       ],
       "wapi.transaction_stmt.idx": [
        {
         "state": null,
         "value": "9d57897b-2241-42a9-8643-ae0cf6f9fde9_crt_fqdn"
        }
       ]
      }
     }
    ],
    "hint": null
   }
  }
 }
Edited by Gitlab-Migration Account
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information