Bug 50413 - DNS records without dnsRecord not created in UCS-UDM
DNS records without dnsRecord not created in UCS-UDM
Status: NEW
Product: UCS
Classification: Unclassified
Component: S4 Connector
UCS 4.4
Other Linux
: P5 normal (vote)
: ---
Assigned To: Samba maintainers
Samba maintainers
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2019-10-25 17:01 CEST by Florian Best
Modified: 2019-10-28 19:35 CET (History)
2 users (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Florian Best univentionstaff 2019-10-25 17:01:51 CEST
Empty DNS records without dnsRecord arent' synchronized from Samab4 → UCS-UDM:
dn: DC=host_record4,DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
objectClass: top
objectClass: dnsNode
name: host_record4
dc: host_record4

Logfile:
12.10.2019 00:27:46.839 LDAP        (INFO   ): object_from_element: olddn:
12.10.2019 00:27:46.842 LDAP        (INFO   ): _ignore_object: Do not ignore DC=host_record4,DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
12.10.2019 00:27:46.843 LDAP        (INFO   ): _object_mapping: map with key dns and type con
12.10.2019 00:27:46.844 LDAP        (INFO   ): _dn_type con
12.10.2019 00:27:46.849 LDAP        (INFO   ): dns_dn_mapping: check newdn for key 'dn'
12.10.2019 00:27:46.849 LDAP        (INFO   ): dns_dn_mapping: not premapped (in first instance)
12.10.2019 00:27:46.850 LDAP        (INFO   ): dns_dn_mapping: dn: DC=host_record4,DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
12.10.2019 00:27:46.850 LDAP        (INFO   ): dns_dn_mapping: got an S4-Object
12.10.2019 00:27:46.850 LDAP        (INFO   ): dns_dn_mapping: get dns_dn_mapping for DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
12.10.2019 00:27:46.850 LDAP        (INFO   ): dns_dn_mapping: check newdn for key 'dn'
12.10.2019 00:27:46.851 LDAP        (INFO   ): dns_dn_mapping: not premapped (in first instance)
12.10.2019 00:27:46.851 LDAP        (INFO   ): dns_dn_mapping: dn: DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
12.10.2019 00:27:46.851 LDAP        (INFO   ): dns_dn_mapping: got an S4-Object
12.10.2019 00:27:46.851 LDAP        (INFO   ): dns_dn_mapping: UCS filter: (&(objectClass=dNSZone)(zoneName=school.dev))
12.10.2019 00:27:46.851 LDAP        (INFO   ): dns_dn_mapping: UCS base: l=school,l=dev
12.10.2019 00:27:46.853 LDAP        (INFO   ): dns_dn_mapping: newdn is ucsdn
12.10.2019 00:27:46.853 LDAP        (INFO   ): dns_dn_mapping: mapping for key 'dn':
12.10.2019 00:27:46.853 LDAP        (INFO   ): dns_dn_mapping: source DN: DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
12.10.2019 00:27:46.853 LDAP        (INFO   ): dns_dn_mapping: mapped DN: zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.853 LDAP        (INFO   ): dns_dn_mapping: check newdn for key 'olddn'
12.10.2019 00:27:46.854 LDAP        (INFO   ): dns_dn_mapping: UCS filter: (&(objectClass=dNSZone)(relativeDomainName=host_record4))
12.10.2019 00:27:46.854 LDAP        (INFO   ): dns_dn_mapping: UCS base: zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.854 LDAP        (INFO   ): dns_dn_mapping: mapping for key 'dn':
12.10.2019 00:27:46.855 LDAP        (INFO   ): dns_dn_mapping: source DN: DC=host_record4,DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev
12.10.2019 00:27:46.855 LDAP        (INFO   ): dns_dn_mapping: mapped DN: relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.855 LDAP        (INFO   ): dns_dn_mapping: check newdn for key 'olddn'
12.10.2019 00:27:46.856 LDAP        (INFO   ): _ignore_object: Do not ignore relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.856 LDAP        (INFO   ): get_ucs_object: object not found: relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.856 LDAP        (PROCESS): sync to ucs:   [           dns] [       add] u'relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev'
12.10.2019 00:27:46.857 LDAP        (INFO   ): sync_to_ucs: set position to zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.857 LDAP        (INFO   ): The following attributes have been changed: []
12.10.2019 00:27:46.857 LDAP        (INFO   ): sync_to_ucs: lock S4 guid: 338a814f-ca9c-49c4-b893-f8bb9d6ac740
12.10.2019 00:27:46.857 LDAP        (INFO   ): LockingDB: Execute SQL command: 'SELECT id FROM S4_LOCK WHERE guid=?;', '('338a814f-ca9c-49c4-b893-f8bb9d6ac740',)'
12.10.2019 00:27:46.858 LDAP        (INFO   ): LockingDB: Return SQL result: '[]'
12.10.2019 00:27:46.858 LDAP        (INFO   ): LockingDB: Execute SQL command: 'INSERT INTO S4_LOCK(guid) VALUES(?);', '('338a814f-ca9c-49c4-b893-f8bb9d6ac740',)'
12.10.2019 00:27:46.860 LDAP        (INFO   ): dns con2ucs: Object (relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev): {'dn': u'relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev', 'attributes': {'distinguishedName': [u'DC=host_record4,DC=school.dev,CN=MicrosoftDNS,DC=DomainDnsZones,DC=school,DC=dev'], 'name': [u'host_record4'], 'objectCategory': [u'CN=Dns-Node,CN=Schema,CN=Configuration,DC=school,DC=dev'], 'objectClass': [u'top', u'dnsNode'], 'objectGUID': ['O\x81\x8a3\x9c\xca\xc4I\xb8\x93\xf8\xbb\x9dj\xc7@'], 'dc': [u'host_record4'], 'whenChanged': [u'20191011222740.0Z'], 'whenCreated': [u'20191011222740.0Z'], 'uSNChanged': [u'13529'], 'uSNCreated': [u'13529'], 'showInAdvancedViewOnly': [u'TRUE'], 'instanceType': [u'4']}, 'changed_attributes': [], 'modtype': 'add'}
12.10.2019 00:27:46.860 LDAP        (INFO   ): dns con2ucs: Ignore unknown dns object: relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev
12.10.2019 00:27:46.860 LDAP        (INFO   ): sync_to_ucs: unlock S4 guid: 338a814f-ca9c-49c4-b893-f8bb9d6ac740
12.10.2019 00:27:46.861 LDAP        (INFO   ): LockingDB: Execute SQL command: 'DELETE FROM S4_LOCK WHERE guid = ?;', '('338a814f-ca9c-49c4-b893-f8bb9d6ac740',)'
12.10.2019 00:27:46.862 LDAP        (INFO   ): Return  result for DN (relativeDomainName=host_record4,zoneName=school.dev,cn=dns,l=school,l=dev)
12.10.2019 00:27:46.863 LDAP        (INFO   ): _set_lastUSN: new lastUSN is: 13529

Of course, where should the S4-Connector know which UDM object type this is (dns/host_record, dns/txt_record, dns/*_record).
I think it should nevertheless either create a dns/host_record object or at least when the object then is modified, i.e.: adding dnsRecord::  BAABAAXwAAABAAAAAAADhAAAAAAAAAAABAMCAQ== the object should no longer be ignored!

Any maybe someday we should re-think our UDM conecpt of splitting each type of record into an own UDM handler and have just dns/forward_zone, dns/reverse_zone, dns/ptr_record and dns/record. The latter one should combine MX, TXT, A, aAAA, NS, etc.
Comment 1 Florian Best univentionstaff 2019-10-25 17:03:11 CEST
This is the reverse to Bug #49874.
Comment 2 Arvid Requate univentionstaff 2019-10-28 19:35:25 CET
We should not create a dns/host_record in OepnLDAP if there is no data corresponding to that in Samba/AD.
If there are DNS RR classes that are not implemented yet, then we should think about implementing them instead.