Reliable Breakage [Was:: "prepare_commit error in module tdb" importing schema]

Kamen Mazdrashki kamenim at samba.org
Thu Dec 2 04:19:56 MST 2010


Hi Adam,

I think the problem in is in your ldif file.
Could you please try to use ldapDisplayName instead of NumericOID?
For instance, this snippet:
> # mayContain: anniversary
> mayContain: 1.3.6.1.4.1.8506.1.2.12
should become
> mayContain: anniversary
> # mayContain: 1.3.6.1.4.1.8506.1.2.12


-- 
CU,
Kamen Mazdrashki
Samba Team                                            http://samba.org
http://gitweb.samba.org/?p=kamenim/samba.git;a=summary


On Wed, Dec 1, 2010 at 21:45, Adam Tauno Williams
<awilliam at whitemice.org> wrote:
> I can reliably break Samba4 by doing a schema import;  which maybe the
> import should fail but it doesn't seem like it should break Samba.
>
> Version 4.0.0alpha14-GIT-71e2d9e
>
> make
> make install
> /opt/ad/samba4/sbin/provision --host-ip=10.66.77.1 \
>    --realm=AD.MORMAIL.COM   \
>    --domain=MORMAIL.COM   --host-name=samba   --adminpass=fred123.7a \
>    --krbtgtpass=fred123.7k   --machinepass=fred123.7m   \
>    --server-role='domain controller'
> chown named:named /opt/ad/samba4/private/dns.keytab
> chown named:named /opt/ad/samba4/private/dns
> chmod g+wr /opt/ad/samba4/private/dns.keytab
> chmod u+wrx,g+wrx /opt/ad/samba4/private/dns
> /opt/ad/samba4/sbin/samba_dnsupdate --verbose # Works!
> /opt/ad/samba4/bin/ldbmodify -vv -H ldap://10.66.77.1/ \
>   --user=administrator%fred123.7a evolution.ldif
> <OUTPUT>
> Modified
> cn=Evolution-Anniversary,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-AssistantName,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-AssistantPhone,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-BirthDate,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-BusinessRole,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-CalendarURI,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-CallbackPhone,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-CarPhone,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-CompanyPhone,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-Arbitrary,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-FileAs,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-FreeBusyURI,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-HomeFacsimileTelephoneNumber,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-Mailer,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-ManagerName,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-Note,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-OtherFacsimileTelephoneNumber,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> ERR: (Protocol error) "LDAP error 2 LDAP_PROTOCOL_ERROR -  <del_trans
> error on CN=Schema,CN=Configuration,DC=ad,DC=mormail,DC=com:
> prepare_commit error on
> CN=Schema,CN=Configuration,DC=ad,DC=mormail,DC=com: prepare_commit error
> in module tdb: Protocol error (2)> <>" on DN
> cn=Evolution-OtherPhone,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-OtherPostalAddress,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-PrimaryPhone,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-Radio,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-SpouseName,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-Telex,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> cn=Evolution-TTY,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> ERR: (Invalid attribute syntax) "LDAP error 21
> LDAP_INVALID_ATTRIBUTE_SYNTAX -  <0000200B: Invalid attribute syntax -
> objectclass_attrs: attribute 'mayContain' on entry
> 'CN=Evolution-Person,CN=Schema,CN=Configuration,DC=ad,DC=mormail,DC=com'
> contains at least one invalid value!> <>" on DN
> cn=Evolution-Person,cn=Schema,cn=Configuration,DC=AD,DC=MORMAIL,DC=COM
> Modified
> Modified 25 records with 2 failures
> </OUTPUT>
>
> /opt/ad/samba4/sbin/samba_dnsupdate --verbose
> <OUTPUT>
> IPs: ['172.16.54.129', '10.66.77.1']
> schema_load_init: dsdb_set_schema() failed: 20:Attribute or value
> exists: attribute 'otherFacsimileTelephoneNumber': value #1 on
> '@ATTRIBUTES' provided more than once
> module schema_load initialization failed : Attribute or value exists
> module operational initialization failed : Attribute or value exists
> module acl initialization failed : Attribute or value exists
> module descriptor initialization failed : Attribute or value exists
> module objectclass initialization failed : Attribute or value exists
> module asq initialization failed : Attribute or value exists
> module server_sort initialization failed : Attribute or value exists
> module paged_results initialization failed : Attribute or value exists
> module aclread initialization failed : Attribute or value exists
> module rootdse initialization failed : Attribute or value exists
> module samba_dsdb initialization failed : Attribute or value exists
> Unable to load modules for /opt/ad/samba4/private/sam.ldb:
> schema_load_init: dsdb_set_schema() failed: 20:Attribute or value
> exists: attribute 'otherFacsimileTelephoneNumber': value #1 on
> '@ATTRIBUTES' provided more than once
> Traceback (most recent call last):
>  File "/opt/ad/samba4/sbin/samba_dnsupdate", line 366, in <module>
>    sub_vars = get_subst_vars()
>  File "/opt/ad/samba4/sbin/samba_dnsupdate", line 214, in
> get_subst_vars
>    lp=lp)
>  File "/opt/ad/samba4/lib/python2.6/site-packages/samba/samdb.py", line
> 53, in __init__
>    options=options)
>  File "/opt/ad/samba4/lib/python2.6/site-packages/samba/__init__.py",
> line 110, in __init__
>    self.connect(url, flags, options)
>  File "/opt/ad/samba4/lib/python2.6/site-packages/samba/samdb.py", line
> 66, in connect
>    options=options)
> _ldb.LdbError: (80, "schema_load_init: dsdb_set_schema() failed:
> 20:Attribute or value exists: attribute 'otherFacsimileTelephoneNumber':
> value #1 on '@ATTRIBUTES' provided more than once")
> </OUTPUT>
>


More information about the samba-technical mailing list