Bug 9998 - replication failed with "Failed to find GUID for (null): Invalid DN syntax"
replication failed with "Failed to find GUID for (null): Invalid DN syntax"
Status: NEEDINFO
Product: Samba 4.0
Classification: Unclassified
Component: AD: LDB/DSDB/SAMDB
4.0.6
All All
: P5 normal
: ---
Assigned To: Garming Sam
Samba QA Contact
:
Depends on: 11139
Blocks:
  Show dependency treegraph
 
Reported: 2013-07-04 23:04 UTC by Matthieu Patou
Modified: 2016-10-02 17:41 UTC (History)
6 users (show)

See Also:


Attachments
debug patch (1.80 KB, patch)
2013-07-05 01:11 UTC, Matthieu Patou
no flags Details
debug patch (2.60 KB, patch)
2013-07-05 01:47 UTC, Matthieu Patou
no flags Details
Patch to force crash in the failing function (559 bytes, patch)
2013-07-06 05:39 UTC, Matthieu Patou
no flags Details
Proposed patch, fix my repro (4.00 KB, patch)
2015-05-20 15:22 UTC, Matthieu Patou
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Matthieu Patou 2013-07-04 23:04:54 UTC
from nickc@pronet.com.au 

Here is the screen output. Let me know if need other logs.

[root@rodc01 bin]# sudo ./samba-tool domain join pronet.com.au RODC -U
administrator@pronet.com.au
Finding a writeable DC for domain 'pronet.com.au'
Found DC DC01.pronet.com.au
Password for [administrator@pronet.com.au]:
workgroup is PNET
realm is pronet.com.au
checking sAMAccountName
Adding CN=RODC01,OU=Domain Controllers,DC=pronet,DC=com,DC=au
Adding CN=krbtgt_RODC01,CN=Users,DC=pronet,DC=com,DC=au
Got krbtgt_name=krbtgt_60350
Renaming CN=krbtgt_RODC01,CN=Users,DC=pronet,DC=com,DC=au to
CN=krbtgt_60350,CN=Users,DC=pronet,DC=com,DC=au
Adding
CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Adding CN=NTDS
Settings,CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Adding CN=RODC Connection (FRS),CN=NTDS
Settings,CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Adding SPNs to CN=RODC01,OU=Domain Controllers,DC=pronet,DC=com,DC=au
Setting account password for RODC01$
Enabling account
Calling bare provision
No IPv6 address will be assigned
Provision OK for domain DN DC=pronet,DC=com,DC=au
Starting replication
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[402]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[804]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[1206]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[1608]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[2010]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[2412]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[2814]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[3216]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[3618]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[4020]
linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[4081]
linked_values[0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[402]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[804]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[1206]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[1608]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[2010]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[2412]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[2769]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[3170]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[3572]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[3974]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4239]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4398]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4551]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4709]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4875]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[5071]
linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[5255]
linked_values[1]
Failed to apply records: Failed to find GUID for (null): Invalid DN syntax
Failed to commit objects: WERR_GENERAL_FAILURE
Join failed - cleaning up
checking sAMAccountName
Deleted CN=RODC01,OU=Domain Controllers,DC=pronet,DC=com,DC=au
Deleted CN=RODC Connection (FRS),CN=NTDS
Settings,CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Deleted CN=NTDS
Settings,CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Deleted
CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
ERROR(<type 'exceptions.TypeError'>): uncaught exception - Failed to process
chunk: NT_STATUS_UNSUCCESSFUL
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/__init__.py", line
175, in _run
    return self.run(*args, **kwargs)
  File
"/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/domain.py",line
558, in run
    dns_backend=dns_backend)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/join.py", line
1071, in join_RODC
    ctx.do_join()
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/join.py", line
1009, in do_join
    ctx.join_replicate()
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/join.py", line
734, in join_replicate
    replica_flags=ctx.replica_flags)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/drs_utils.py",
line 252, in replicate
    schema=schema, req_level=req_level, req=req)
Comment 1 Matthieu Patou 2013-07-05 01:11:53 UTC
Created attachment 9025 [details]
debug patch
Comment 2 Matthieu Patou 2013-07-05 01:12:36 UTC
nick ?

Can you try the attached patch it won't solve your problem but should give us more information why the replication is failing.
Comment 3 Matthieu Patou 2013-07-05 01:47:07 UTC
Created attachment 9026 [details]
debug patch
Comment 4 nickc 2013-07-05 02:31:29 UTC
(In reply to comment #2)
> nick ?
> 
> Can you try the attached patch it won't solve your problem but should give us
> more information why the replication is failing.

Do I patch is on top of previous patch?
Comment 5 Matthieu Patou 2013-07-05 03:55:44 UTC
The previous to fix pure schema replication problems ?

If yes then yeS.
Comment 6 nickc 2013-07-05 04:19:34 UTC
(In reply to comment #5)
> The previous to fix pure schema replication problems ? yes
> 
> If yes then yeS.

When I apply the debug patch, I'm getting this warning, not sure if it's important, and when I run the samba-tool, it appears to give the same screen output. Is there other logs that you are after?

[root@rodc01 samba-4.0.6]# git apply debug_pb.patch
debug_pb.patch:12: trailing whitespace.

warning: 1 line adds whitespace errors.
Comment 7 Matthieu Patou 2013-07-05 07:42:18 UTC
Did you rebuild after applying the patch ?

The whitespace message is harmless, just be sure that you have the modification.

if no new message can you run the domain provision command with -d 4 and paste the result ?
Comment 8 nickc 2013-07-05 08:54:26 UTC
(In reply to comment #7)
> Did you rebuild after applying the patch ?

yes


> 
> The whitespace message is harmless, just be sure that you have the
> modification.
> 
> if no new message can you run the domain provision command with -d 4 and paste
> the result ?

Please refer to attachment.
Comment 9 nickc 2013-07-05 09:16:49 UTC
(In reply to comment #7)
> Did you rebuild after applying the patch ?
> 
> The whitespace message is harmless, just be sure that you have the
> modification.
> 
> if no new message can you run the domain provision command with -d 4 and paste
> the result ?

File too big to attach, please download from here, http://www.pronet.com.au/temp/debuglog.txt
Comment 10 Matthieu Patou 2013-07-06 04:48:05 UTC
It looks like a -d 10 are you sure you specified only -d 4 ?
Also remove the file now I have it.
Comment 11 Matthieu Patou 2013-07-06 05:15:29 UTC
Hi Rick I have
Comment 12 Matthieu Patou 2013-07-06 05:38:33 UTC
Hi Rick I have a new debug patch that you can put on top of the others.

It will force a crash of samba in the function la_guid_from_dn when we are are not able to find the GUID.

Then rerun the command (without -d) with --option="panic action=<path_to_sourcecode_of_samba>/selftest/gdb_backtrace %d"

A post here the backtrace that you got.
Comment 13 Matthieu Patou 2013-07-06 05:39:04 UTC
Created attachment 9028 [details]
Patch to force crash in the failing function
Comment 14 nickc 2013-07-06 06:30:57 UTC
(In reply to comment #10)
> It looks like a -d 10 are you sure you specified only -d 4 ?
> Also remove the file now I have it.

yes, it's -d4. I tried -d5 which is even longer
Comment 15 nickc 2013-07-06 06:31:49 UTC
(In reply to comment #10)
> It looks like a -d 10 are you sure you specified only -d 4 ?
> Also remove the file now I have it.

yes, it's -d4. I tried -d5 which is even longer
Comment 16 nickc 2013-07-06 07:11:23 UTC
(In reply to comment #13)
> Created attachment 9028 [details]
> Patch to force crash in the failing function

Hi Matthieu, here's the output with the new patch applied.

Finding a writeable DC for domain 'pronet.com.au'
Found DC DC01.pronet.com.au
workgroup is PNET
realm is pronet.com.au
checking sAMAccountName
Adding CN=RODC01,OU=Domain Controllers,DC=pronet,DC=com,DC=au
Adding CN=krbtgt_RODC01,CN=Users,DC=pronet,DC=com,DC=au
Got krbtgt_name=krbtgt_53820
Renaming CN=krbtgt_RODC01,CN=Users,DC=pronet,DC=com,DC=au to CN=krbtgt_53820,CN=Users,DC=pronet,DC=com,DC=au
Adding CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Adding CN=NTDS Settings,CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Adding CN=RODC Connection (FRS),CN=NTDS Settings,CN=RODC01,CN=Servers,CN=Default-First-Site-Name,CN=Sites,CN=Configuration,DC=pronet,DC=com,DC=au
Adding SPNs to CN=RODC01,OU=Domain Controllers,DC=pronet,DC=com,DC=au
Setting account password for RODC01$
Enabling account
Calling bare provision
No IPv6 address will be assigned
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[402] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[804] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[1206] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[1608] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[2010] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[2412] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[2814] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[3216] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[3618] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[4020] linked_values[0]
Schema-DN[CN=Schema,CN=Configuration,DC=pronet,DC=com,DC=au] objects[4081] linked_values[0]
Analyze and apply schema objects
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[402] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[804] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[1206] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[1608] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[2010] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[2412] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[2769] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[3170] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[3572] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[3974] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4239] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4398] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4551] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4709] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[4875] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[5071] linked_values[0]
Partition[CN=Configuration,DC=pronet,DC=com,DC=au] objects[5243] linked_values[1]
Comment 17 Matthieu Patou 2013-07-07 05:13:42 UTC
Don't you have something in gdb ie something like that:

===============================================================
INTERNAL ERROR: Signal 11 in pid 7236 (4.1.0pre1-DEVELOPERBUILD)
Please read the Trouble-Shooting section of the Samba HOWTO
===============================================================
smb_panic(): calling panic action [/usr/local/src/samba/selftest/gdb_backtrace 7236]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fff2e5fe000
0x00007f9056a0894a in __libc_waitpid (pid=7238, stat_loc=stat_loc@entry=0x7fff2e52b4a0, options=options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31
31	../sysdeps/unix/sysv/linux/waitpid.c: No such file or directory.
#0  0x00007f9056a0894a in __libc_waitpid (pid=7238, stat_loc=stat_loc@entry=0x7fff2e52b4a0, options=options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31
        resultvar = 18446744073709551104
        oldtype = <optimized out>
        result = <optimized out>
#1  0x00007f905698e05e in do_system (line=0x7fff2e52b680 "/usr/local/src/samba/selftest/gdb_backtrace 7236") at ../sysdeps/posix/system.c:148
        __result = <optimized out>
        _buffer = {__routine = 0x7f905698e310 <cancel_handler>, __arg = 0x7fff2e52b4b0, __canceltype = 0, __prev = 0x0}
        _avail = 1
        status = <optimized out>
        save = <optimized out>
        pid = 7238
        sa = {__sigaction_handler = {sa_handler = 0x1, sa_sigaction = 0x1}, sa_mask = {__val = {65536, 0 <repeats 15 times>}}, sa_flags = 0, sa_restorer = 0x4}
        omask = {__val = {1024, 0, 140733970560560, 140257910809360, 140733970563760, 0, 0, 140257908837522, 140257910809360, 140257908913280, 0, 365099073858, 0, 206158430224, 140733970560576, 140733970560384}}
#2  0x00007f9056d5510b in smb_panic_default (why=0x7f9056d67455 "internal error") at ../lib/util/fault.c:134
        result = 32656
        pidstr = "7236\000\177", '\000' <repeats 13 times>
        cmdstring = "/usr/local/src/samba/selftest/gdb_backtrace 7236\000\267R.\377\177\000\000\300\266R.\377\177\000\000`\036\002X\220\177", '\000' <repeats 18 times>, "ru\326V\220\177\000\000`\206\320V\220\177\000\000\344a\231V\220\177\000\000\000\000\000\000\001\000\000\000\300\204\317W\220\177\000\000\000\000\000\000\000\000\000\000\200\250_Y\220\177\000\000\320:OX\220\177\000\000`\204\317W\220\177\000\000p\267R.\377\177\000\000\356\210\356V\220\177\000\000x\000\000\000\000\000\000\000 \205\026X\220\177\000\000\000\000\000\000\001\000\000"
        __FUNCTION__ = "smb_panic_default"
#3  0x00007f9056d55298 in smb_panic (why=0x7f9056d67455 "internal error") at ../lib/util/fault.c:162
No locals.
#4  0x00007f9056d54f5f in fault_report (sig=11) at ../lib/util/fault.c:77
        counter = 1
        __FUNCTION__ = "fault_report"
#5  0x00007f9056d54f74 in sig_fault (sig=11) at ../lib/util/fault.c:88
No locals.
#6  <signal handler called>
No locals.
#7  0x00007f9056f36f56 in main (argc=4, argv=0x7fff2e52c2b8) at ../lib/ldb/tools/ldbsearch.c:332
        i = 0x0
        ldb = 0x7f9057cf84c0
        basedn = 0x0
        attrs = 0x0
        options = 0x7f9057cf7430
        ret = -1
        expression = 0x7f9056f37338 "(|(objectClass=*)(distinguishedName=*))"
        mem_ctx = 0x7f9057cef070

Thread 1 (Thread 0x7f9056ea7740 (LWP 7236)):
#0  0x00007f9056a0894a in __libc_waitpid (pid=7238, stat_loc=stat_loc@entry=0x7fff2e52b4a0, options=options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:31
        resultvar = 18446744073709551104
        oldtype = <optimized out>
        result = <optimized out>
#1  0x00007f905698e05e in do_system (line=0x7fff2e52b680 "/usr/local/src/samba/selftest/gdb_backtrace 7236") at ../sysdeps/posix/system.c:148
        __result = <optimized out>
        _buffer = {__routine = 0x7f905698e310 <cancel_handler>, __arg = 0x7fff2e52b4b0, __canceltype = 0, __prev = 0x0}
        _avail = 1
        status = <optimized out>
        save = <optimized out>
        pid = 7238
        sa = {__sigaction_handler = {sa_handler = 0x1, sa_sigaction = 0x1}, sa_mask = {__val = {65536, 0 <repeats 15 times>}}, sa_flags = 0, sa_restorer = 0x4}
        omask = {__val = {1024, 0, 140733970560560, 140257910809360, 140733970563760, 0, 0, 140257908837522, 140257910809360, 140257908913280, 0, 365099073858, 0, 206158430224, 140733970560576, 140733970560384}}
#2  0x00007f9056d5510b in smb_panic_default (why=0x7f9056d67455 "internal error") at ../lib/util/fault.c:134
        result = 32656
        pidstr = "7236\000\177", '\000' <repeats 13 times>
        cmdstring = "/usr/local/src/samba/selftest/gdb_backtrace 7236\000\267R.\377\177\000\000\300\266R.\377\177\000\000`\036\002X\220\177", '\000' <repeats 18 times>, "ru\326V\220\177\000\000`\206\320V\220\177\000\000\344a\231V\220\177\000\000\000\000\000\000\001\000\000\000\300\204\317W\220\177\000\000\000\000\000\000\000\000\000\000\200\250_Y\220\177\000\000\320:OX\220\177\000\000`\204\317W\220\177\000\000p\267R.\377\177\000\000\356\210\356V\220\177\000\000x\000\000\000\000\000\000\000 \205\026X\220\177\000\000\000\000\000\000\001\000\000"
        __FUNCTION__ = "smb_panic_default"
#3  0x00007f9056d55298 in smb_panic (why=0x7f9056d67455 "internal error") at ../lib/util/fault.c:162
No locals.
#4  0x00007f9056d54f5f in fault_report (sig=11) at ../lib/util/fault.c:77
        counter = 1
        __FUNCTION__ = "fault_report"
#5  0x00007f9056d54f74 in sig_fault (sig=11) at ../lib/util/fault.c:88
No locals.
#6  <signal handler called>
No locals.
#7  0x00007f9056f36f56 in main (argc=4, argv=0x7fff2e52c2b8) at ../lib/ldb/tools/ldbsearch.c:332
        i = 0x0
        ldb = 0x7f9057cf84c0
        basedn = 0x0
        attrs = 0x0
        options = 0x7f9057cf7430
        ret = -1
        expression = 0x7f9056f37338 "(|(objectClass=*)(distinguishedName=*))"
        mem_ctx = 0x7f9057cef070
resultvar = 18446744073709551104
oldtype = <optimized out>
result = <optimized out>
A debugging session is active.

	Inferior 1 [process 7236] will be detached.

Quit anyway? (y or n) [answered Y; input not from terminal]
smb_panic(): action returned status 0
PANIC: internal error
Aborted (core dumped)


Are you sure you run the join with the --option="panic action=<path_to_src>/selftest/gdb_backtrace %d" ?
Comment 18 nickc 2013-07-07 23:55:23 UTC
(In reply to comment #17)
> 
> Are you sure you run the join with the --option="panic
> action=<path_to_src>/selftest/gdb_backtrace %d" ?

The command I use is, 

sudo ./samba-tool domain join pronet.com.au RODC -U administrator@pronet.com.au --option="panicaction=/tmp/samba-4.0.6/selftest/gdb_backtrace %d"

or 

sudo ./samba-tool domain join pronet.com.au RODC -U administrator@pronet.com.au --option="panic action=/tmp/samba-4.0.6/selftest/gdb_backtrace %d"

However, when I try,

sudo ./samba-tool --option="panicaction=/tmp/samba-4.0.6/selftest/gdb_backtrace %d" domain join pronet.com.au RODC -U administrator@pronet.com.au

I get "samba-tool: error: no such option: --option"
Comment 19 Matthieu Patou 2013-07-08 03:12:44 UTC
(In reply to comment #18)
> (In reply to comment #17)
> > 
> > Are you sure you run the join with the --option="panic
> > action=<path_to_src>/selftest/gdb_backtrace %d" ?
> 
> The command I use is, 
> 
> sudo ./samba-tool domain join pronet.com.au RODC -U administrator@pronet.com.au
> --option="panicaction=/tmp/samba-4.0.6/selftest/gdb_backtrace %d"
> 
> or 
> 
> sudo ./samba-tool domain join pronet.com.au RODC -U administrator@pronet.com.au
> --option="panic action=/tmp/samba-4.0.6/selftest/gdb_backtrace %d"
> 
And with this you don't get a backtrace like the one I posted on this report ? 
have you checked that the file /tmp/samba-4.0.6/selftest/gdb_backtrace exists ? 


> However, when I try,
> 
> sudo ./samba-tool --option="panicaction=/tmp/samba-4.0.6/selftest/gdb_backtrace
> %d" domain join pronet.com.au RODC -U administrator@pronet.com.au
> 
> I get "samba-tool: error: no such option: --option"

That is expected
Comment 20 nickc 2013-07-08 03:38:15 UTC
(In reply to comment #19)
> (In reply to comment #18)
> > (In reply to comment #17)
> > > 
> > > Are you sure you run the join with the --option="panic
> > > action=<path_to_src>/selftest/gdb_backtrace %d" ?
> > 
> > The command I use is, 
> > 
> > sudo ./samba-tool domain join pronet.com.au RODC -U administrator@pronet.com.au
> > --option="panicaction=/tmp/samba-4.0.6/selftest/gdb_backtrace %d"
> > 
> > or 
> > 
> > sudo ./samba-tool domain join pronet.com.au RODC -U administrator@pronet.com.au
> > --option="panic action=/tmp/samba-4.0.6/selftest/gdb_backtrace %d"
> > 
> And with this you don't get a backtrace like the one I posted on this report ? 

If you are referring to the screen output, the answer is no? 

> have you checked that the file /tmp/samba-4.0.6/selftest/gdb_backtrace exists ? 
> 

Yes, the file exists.
Comment 21 Karolin Seeger 2013-12-10 15:54:44 UTC
Any news on this one?
Comment 22 John Kenyon 2014-02-22 07:51:02 UTC
Hi Matthieu, any further updates on this bug? I am experiencing the same issue trying to join samba to an existing windows 2008 domain with exchange 2007 schema updates. Let me know if you need any further testing completed.
Comment 23 Matthieu Patou 2014-02-24 03:06:31 UTC
In a nutshell the problem is that you have objects with DN or DN+Binary entries (linked attributes) that are referencing the object itself and that are still stored within the object. Because of this when we try to check the validity of the linked attribute it fails to find the object that is about to be added and complains.

The behavior exists because Windows does not upgrade existing linked attribute when the Forest Level is >= 2003, it just start to use the new storage way with new entries or when the entry are modified.
Comment 24 Andreas Schneider 2014-10-28 10:43:36 UTC
Ping Mat!
Comment 25 samba 2015-04-15 14:23:22 UTC
I've just run into this bug, trying to convince my company, that samba as a DC will be no problem at all ...

Of course, they use Exchange.

Samba Debian samba 4.1.17

Is there a fix for this?

If not, is there a Workaround??

And is a fix planned?

Can I do anything on the Windows side to circumvent the Problem?

Chris
Comment 26 mxdog 2015-04-16 03:10:19 UTC
When I originally reported this many moons ago the problem was exchange having been installed/removed from my 2008 r2  DS server. So on the windows side if you can get samba up and running before you install exchange I would bet you would be ok at least that approach worked for me. I've  since moved away from exchange and am on 2012r2 so I really can't say for the current state and am only posting to propose a possible work-around if it applies. 

(sorry no help on the actual bug)

mx
Comment 27 samba 2015-04-16 09:48:44 UTC
The question is: is actually anyone working on a fix?

For years there have been reports on this, but up to my version of samba (4.1.7), there does not seem to be a fix.

With -d 5 the log shows:

...
                            a:<GUID=0898c3dc-8f78-46cc-8e59-0dede5926582>;CN=o
 wa (Default Web Site),CN=HTTP,CN=Protocols,CN=R01S040,CN=Servers,CN=Exchange 
 Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Rostek und
  Pesch,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=rostek-pesch,DC=
 local
msExchOWATranscodingFlags: 1
msExchVersion: 4535486012416
msExchMailboxFolderSet: 2147483647
cn: owa (Default Web Site)
objectGUID: 0898c3dc-8f78-46cc-8e59-0dede5926582
whenChanged: 20090702103730.0Z
uSNCreated: 6128
uSNChanged: 6128


../source4/dsdb/samdb/ldb_modules/linked_attributes.c:165: Failed to find GUID for dn (null)
replmd_op_callback failure. Error is: Invalid DN syntax
Failed to apply records: Failed to find GUID for (null): Invalid DN syntax
Failed to commit objects: WERR_GENERAL_FAILURE
ERROR(<type 'exceptions.TypeError'>): uncaught exception - Failed to process chunk: NT_STATUS_UNSUCCESSFUL
...

which seems to be this (Windows 2008, Exchange) problem.

Chris
Comment 28 Matthieu Patou 2015-04-21 03:03:55 UTC
(In reply to samba from comment #27)
It's not really a exchange only problem.
It's just that exchange seems to use this (when you have linked attributes referencing itself).
Comment 29 Matthieu Patou 2015-05-20 09:50:04 UTC
For the record, 

Here the backlog I had when we force samba to pause and dump right away when the DN issue occured.

#0  0x00007fb7c9657b70 in __nanosleep_nocancel () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007fb7c9657a00 in sleep () from /lib64/libc.so.6
No symbol table info available.
#2  0x00007fb7a560741c in la_guid_from_dn (module=0x1d6adf0, parent=0x5afe5a0, dn=0x852a0a0, guid=0x852a2d4) at ../source4/dsdb/samdb/ldb_modules/linked_attributes.c:175
        ppid = 4733
        pid = 4742
        status = {v = 3221225524}
        ret = 34
        __FUNCTION__ = "la_guid_from_dn"
#3  0x00007fb7a560757e in la_store_op (ac=0x8529ff0, op=LA_OP_ADD, dn=0x8a477f0, name=0x5646100 "msExchOWATranscodingFileTypesBL") at ../source4/dsdb/samdb/ldb_modules/linked_attributes.c:212
        ldb = 0x1d70660
        os = 0x852a2c0
        op_dn = 0x852a0a0
        ret = 0
#4  0x00007fb7a5607b53 in linked_attributes_add (module=0x1d6adf0, req=0x5afe5a0) at ../source4/dsdb/samdb/ldb_modules/linked_attributes.c:334
        el = 0x5b007b0
        schema_attr = 0x54e8cd0
        ldb = 0x1d70660
        target_attr = 0x5645f20
        ac = 0x8529ff0
        attr_name = 0x5646100 "msExchOWATranscodingFileTypesBL"
        ctrl = 0x7a8ee30
        i = 26
        j = 0
        control = 0x0
        ret = 0
        __FUNCTION__ = "linked_attributes_add"
#5  0x00007fb7c1835055 in ldb_next_request (module=0x1d6adf0, request=0x5afe5a0) at ../lib/ldb/common/ldb_modules.c:527
        ret = 32767
#6  0x00007fb7a3bb6038 in replmd_replicated_apply_add (ar=0x7265780) at ../source4/dsdb/samdb/ldb_modules/repl_meta_data.c:3776
        ldb = 0x1d70660
        change_req = 0x5afe5a0
        ndr_err = NDR_ERR_SUCCESS
        msg = 0x92e7d10
        md = 0x62b6d20
        md_value = {data = 0x5b01010 "\001", length = 1600}
        i = 33
        ret = 0
        remote_isDeleted = false
        __FUNCTION__ = "replmd_replicated_apply_add"
#7  0x00007fb7a3bb653b in replmd_replicated_apply_search_for_parent_callback (req=0x5aff5f0, ares=0x5b00f90) at ../source4/dsdb/samdb/ldb_modules/repl_meta_data.c:3871
        ar = 0x7265780
        ret = 0
#8  0x00007fb7c1836119 in ldb_module_done (req=0x5aff5f0, ctrls=0x0, response=0x0, error=0) at ../lib/ldb/common/ldb_modules.c:807
        ares = 0x5b00f90
#9  0x00007fb7a6428d3c in extended_callback (req=0x5affbd0, ares=0x5afbfd0, handle_dereference=0) at ../source4/dsdb/samdb/ldb_modules/extended_dn_out.c:454
        ac = 0x5aff900
        control = 0x18f0aba
        dereference_control = 0x0
        ret = 0
        i = 95419680
        j = 0
        msg = 0x0
        p = 0x1d6a990
        ldb = 0x1d70660
        have_reveal_control = false
        checked_reveal_control = false
#10 0x00007fb7a64298d1 in extended_callback_ldb (req=0x5affbd0, ares=0x5afbfd0) at ../source4/dsdb/samdb/ldb_modules/extended_dn_out.c:685
No locals.
#11 0x00007fb7a724f6a3 in dsdb_next_callback (req=0x5affd20, ares=0x5afbfd0) at ../source4/dsdb/samdb/ldb_modules/util.c:824
        up_req = 0x5affbd0
#12 0x00007fb7c1836119 in ldb_module_done (req=0x5affd20, ctrls=0x0, response=0x0, error=0) at ../lib/ldb/common/ldb_modules.c:807
        ares = 0x5afbfd0
#13 0x00007fb7a43da82a in partition_req_callback (req=0x5b000a0, ares=0x5b01b60) at ../source4/dsdb/samdb/ldb_modules/partition.c:213
        ac = 0x5affe70
        module = 0x7fb7c2ed1fc6
        nreq = 0x7fffbb2cb1e0
        ret = 0
        partition_ctrl = 0x0
#14 0x00007fb7a1549d67 in ltdb_request_done (ctx=0x5b00270, error=0) at ../lib/ldb/ldb_tdb/ldb_tdb.c:1273
        ldb = 0x1d70660
        req = 0x5b000a0
        ares = 0x5b01b60
#15 0x00007fb7a154a053 in ltdb_callback (ev=0x1d73090, te=0x5b00310, t=..., private_data=0x5b00270) at ../lib/ldb/ldb_tdb/ldb_tdb.c:1383
        ctx = 0x5b00270
        ret = 0
#16 0x00007fb7c16267cd in tevent_common_loop_timer_delay (ev=0x1d73090) at ../lib/tevent/tevent_timed.c:341
        current_time = {tv_sec = 0, tv_usec = 0}
        te = 0x5b00310
#17 0x00007fb7c1628b09 in epoll_event_loop_once (ev=0x1d73090, location=0x7fb7c185d048 "../lib/ldb/common/ldb.c:617") at ../lib/tevent/tevent_epoll.c:916
        epoll_ev = 0x1d73310
        tval = {tv_sec = 140427200206763, tv_usec = 30868624}
        panic_triggered = false
#18 0x00007fb7c16258ab in std_event_loop_once (ev=0x1d73090, location=0x7fb7c185d048 "../lib/ldb/common/ldb.c:617") at ../lib/tevent/tevent_standard.c:112
        glue_ptr = 0x1d70490
        glue = 0x1d70490
        ret = 0
#19 0x00007fb7c161ff39 in _tevent_loop_once (ev=0x1d73090, location=0x7fb7c185d048 "../lib/ldb/common/ldb.c:617") at ../lib/tevent/tevent.c:530
        ret = 0
        nesting_stack_ptr = 0x0
#20 0x00007fb7c1853672 in ldb_wait (handle=0x7a8ebe0, type=LDB_WAIT_ALL) at ../lib/ldb/common/ldb.c:617
        ev = 0x1d73090
        ret = 0
#21 0x00007fb7c1855a1a in ldb_extended (ldb=0x1d70660, oid=0x7fb7b9e9b25e "1.3.6.1.4.1.7165.4.4.1", data=0x6898680, _res=0x7fffbb2cb4c8) at ../lib/ldb/common/ldb.c:1502
        req = 0x7a8ea50
        ret = 0
        res = 0x72654f0
#22 0x00007fb7b9e95a6f in dsdb_replicated_objects_commit (ldb=0x1d70660, working_schema=0x0, objects=0x6898680, notify_uSN=0x7fffbb2cb580) at ../source4/dsdb/repl/replicated_objects.c:764
        werr = {w = 2853741777}
        ext_res = 0x0
        cur_schema = 0x0
        new_schema = 0x0
        ret = 0
        seq_num1 = 0
        seq_num2 = 140427230395516
        used_global_schema = false
        tmp_ctx = 0x75d05a0
        __FUNCTION__ = "dsdb_replicated_objects_commit"
#23 0x00007fb7aa1687d8 in libnet_vampire_cb_store_chunk (private_data=0x1d37f10, c=0x1da9060) at ../source4/libnet/libnet_vampire.c:715
        s = 0x1d37f10
        status = {w = 0}
        schema = 0x1d61fa0
        mapping_ctr = 0x74fc080
        nc_object_count = 0
        object_count = 172
        first_object = 0x76500c0
        nc_linked_attributes_count = 0
        linked_attributes_count = 1
        linked_attributes = 0x847e600
        uptodateness_vector = 0x0
        objs = 0x6898680
        req_replica_flags = 2153777248
        s_dsa = 0x6a9f540
        tmp_dns_name = 0x672d2c0 "f3f0ea09-eea6-405e-b04e-48169922b4ef._msdcs.pronet.com.au"
        i = 3059092576
        seq_num = 4294967295
        is_exop = false
        __FUNCTION__ = "libnet_vampire_cb_store_chunk"
#24 0x00007fb7aa39f4f5 in py_net_replicate_chunk (self=0x7fb7ca79be90, args=0x1ade140, kwargs=0x1aa38b0) at ../source4/libnet/py_net.c:533
        kwnames = {0x7fb7aa3a03c7 "state", 0x7fb7aa39fb79 "level", 0x7fb7aa3a03cd "ctr", 0x7fb7aa3a03d1 "schema", 0x7fb7aa3a03d8 "req_level", 0x7fb7aa3a03e2 "req", 0x0}
        py_state = 0x7fb7ca79ba80
        py_ctr = 0x1ae42d0
        py_schema = 0x7fb7ca545730
        py_req = 0x7fb7ca720ef0
        s = 0x1da9050
        level = 6
        req_level = 8
        chunk_handler = 0x7fb7aa167e24 <libnet_vampire_cb_store_chunk>
        status = {v = 2}
#25 0x00007fb7ca2bc6f1 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#26 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#27 0x00007fb7ca2bbaa4 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#28 0x00007fb7ca2bcb8f in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#29 0x00007fb7ca2bcb8f in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#30 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#31 0x00007fb7ca2bbaa4 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#32 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#33 0x00007fb7ca250dad in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#34 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#35 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#36 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#37 0x00007fb7ca250cb0 in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#38 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#39 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#40 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#41 0x00007fb7ca250cb0 in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#42 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#43 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#44 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#45 0x00007fb7ca250cb0 in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#46 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#47 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#48 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#49 0x00007fb7ca2bd732 in PyEval_EvalCode () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#50 0x00007fb7ca2d7bac in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#51 0x00007fb7ca2d7c80 in PyRun_FileExFlags () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#52 0x00007fb7ca2d916c in PyRun_SimpleFileExFlags () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#53 0x00007fb7ca2e58a2 in Py_Main () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#54 0x00007fb7c95c9cdd in __libc_start_main () from /lib64/libc.so.6
No symbol table info available.
#55 0x0000000000400649 in _start ()
No symbol table info available.

Thread 1 (Thread 0x7fb7ca7a0700 (LWP 4733)):
#0  0x00007fb7c9657b70 in __nanosleep_nocancel () from /lib64/libc.so.6
No symbol table info available.
#1  0x00007fb7c9657a00 in sleep () from /lib64/libc.so.6
No symbol table info available.
#2  0x00007fb7a560741c in la_guid_from_dn (module=0x1d6adf0, parent=0x5afe5a0, dn=0x852a0a0, guid=0x852a2d4) at ../source4/dsdb/samdb/ldb_modules/linked_attributes.c:175
        ppid = 4733
        pid = 4742
        status = {v = 3221225524}
        ret = 34
        __FUNCTION__ = "la_guid_from_dn"
#3  0x00007fb7a560757e in la_store_op (ac=0x8529ff0, op=LA_OP_ADD, dn=0x8a477f0, name=0x5646100 "msExchOWATranscodingFileTypesBL") at ../source4/dsdb/samdb/ldb_modules/linked_attributes.c:212
        ldb = 0x1d70660
        os = 0x852a2c0
        op_dn = 0x852a0a0
        ret = 0
#4  0x00007fb7a5607b53 in linked_attributes_add (module=0x1d6adf0, req=0x5afe5a0) at ../source4/dsdb/samdb/ldb_modules/linked_attributes.c:334
        el = 0x5b007b0
        schema_attr = 0x54e8cd0
        ldb = 0x1d70660
        target_attr = 0x5645f20
        ac = 0x8529ff0
        attr_name = 0x5646100 "msExchOWATranscodingFileTypesBL"
        ctrl = 0x7a8ee30
        i = 26
        j = 0
        control = 0x0
        ret = 0
        __FUNCTION__ = "linked_attributes_add"
#5  0x00007fb7c1835055 in ldb_next_request (module=0x1d6adf0, request=0x5afe5a0) at ../lib/ldb/common/ldb_modules.c:527
        ret = 32767
#6  0x00007fb7a3bb6038 in replmd_replicated_apply_add (ar=0x7265780) at ../source4/dsdb/samdb/ldb_modules/repl_meta_data.c:3776
        ldb = 0x1d70660
        change_req = 0x5afe5a0
        ndr_err = NDR_ERR_SUCCESS
        msg = 0x92e7d10
        md = 0x62b6d20
        md_value = {data = 0x5b01010 "\001", length = 1600}
        i = 33
        ret = 0
        remote_isDeleted = false
        __FUNCTION__ = "replmd_replicated_apply_add"
#7  0x00007fb7a3bb653b in replmd_replicated_apply_search_for_parent_callback (req=0x5aff5f0, ares=0x5b00f90) at ../source4/dsdb/samdb/ldb_modules/repl_meta_data.c:3871
        ar = 0x7265780
        ret = 0
#8  0x00007fb7c1836119 in ldb_module_done (req=0x5aff5f0, ctrls=0x0, response=0x0, error=0) at ../lib/ldb/common/ldb_modules.c:807
        ares = 0x5b00f90
#9  0x00007fb7a6428d3c in extended_callback (req=0x5affbd0, ares=0x5afbfd0, handle_dereference=0) at ../source4/dsdb/samdb/ldb_modules/extended_dn_out.c:454
        ac = 0x5aff900
        control = 0x18f0aba
        dereference_control = 0x0
        ret = 0
        i = 95419680
        j = 0
        msg = 0x0
        p = 0x1d6a990
        ldb = 0x1d70660
        have_reveal_control = false
        checked_reveal_control = false
#10 0x00007fb7a64298d1 in extended_callback_ldb (req=0x5affbd0, ares=0x5afbfd0) at ../source4/dsdb/samdb/ldb_modules/extended_dn_out.c:685
No locals.
#11 0x00007fb7a724f6a3 in dsdb_next_callback (req=0x5affd20, ares=0x5afbfd0) at ../source4/dsdb/samdb/ldb_modules/util.c:824
        up_req = 0x5affbd0
#12 0x00007fb7c1836119 in ldb_module_done (req=0x5affd20, ctrls=0x0, response=0x0, error=0) at ../lib/ldb/common/ldb_modules.c:807
        ares = 0x5afbfd0
#13 0x00007fb7a43da82a in partition_req_callback (req=0x5b000a0, ares=0x5b01b60) at ../source4/dsdb/samdb/ldb_modules/partition.c:213
        ac = 0x5affe70
        module = 0x7fb7c2ed1fc6
        nreq = 0x7fffbb2cb1e0
        ret = 0
        partition_ctrl = 0x0
#14 0x00007fb7a1549d67 in ltdb_request_done (ctx=0x5b00270, error=0) at ../lib/ldb/ldb_tdb/ldb_tdb.c:1273
        ldb = 0x1d70660
        req = 0x5b000a0
        ares = 0x5b01b60
#15 0x00007fb7a154a053 in ltdb_callback (ev=0x1d73090, te=0x5b00310, t=..., private_data=0x5b00270) at ../lib/ldb/ldb_tdb/ldb_tdb.c:1383
        ctx = 0x5b00270
        ret = 0
#16 0x00007fb7c16267cd in tevent_common_loop_timer_delay (ev=0x1d73090) at ../lib/tevent/tevent_timed.c:341
        current_time = {tv_sec = 0, tv_usec = 0}
        te = 0x5b00310
#17 0x00007fb7c1628b09 in epoll_event_loop_once (ev=0x1d73090, location=0x7fb7c185d048 "../lib/ldb/common/ldb.c:617") at ../lib/tevent/tevent_epoll.c:916
        epoll_ev = 0x1d73310
        tval = {tv_sec = 140427200206763, tv_usec = 30868624}
        panic_triggered = false
#18 0x00007fb7c16258ab in std_event_loop_once (ev=0x1d73090, location=0x7fb7c185d048 "../lib/ldb/common/ldb.c:617") at ../lib/tevent/tevent_standard.c:112
        glue_ptr = 0x1d70490
        glue = 0x1d70490
        ret = 0
#19 0x00007fb7c161ff39 in _tevent_loop_once (ev=0x1d73090, location=0x7fb7c185d048 "../lib/ldb/common/ldb.c:617") at ../lib/tevent/tevent.c:530
        ret = 0
        nesting_stack_ptr = 0x0
#20 0x00007fb7c1853672 in ldb_wait (handle=0x7a8ebe0, type=LDB_WAIT_ALL) at ../lib/ldb/common/ldb.c:617
        ev = 0x1d73090
        ret = 0
#21 0x00007fb7c1855a1a in ldb_extended (ldb=0x1d70660, oid=0x7fb7b9e9b25e "1.3.6.1.4.1.7165.4.4.1", data=0x6898680, _res=0x7fffbb2cb4c8) at ../lib/ldb/common/ldb.c:1502
        req = 0x7a8ea50
        ret = 0
        res = 0x72654f0
#22 0x00007fb7b9e95a6f in dsdb_replicated_objects_commit (ldb=0x1d70660, working_schema=0x0, objects=0x6898680, notify_uSN=0x7fffbb2cb580) at ../source4/dsdb/repl/replicated_objects.c:764
        werr = {w = 2853741777}
        ext_res = 0x0
        cur_schema = 0x0
        new_schema = 0x0
        ret = 0
        seq_num1 = 0
        seq_num2 = 140427230395516
        used_global_schema = false
        tmp_ctx = 0x75d05a0
        __FUNCTION__ = "dsdb_replicated_objects_commit"
#23 0x00007fb7aa1687d8 in libnet_vampire_cb_store_chunk (private_data=0x1d37f10, c=0x1da9060) at ../source4/libnet/libnet_vampire.c:715
        s = 0x1d37f10
        status = {w = 0}
        schema = 0x1d61fa0
        mapping_ctr = 0x74fc080
        nc_object_count = 0
        object_count = 172
        first_object = 0x76500c0
        nc_linked_attributes_count = 0
        linked_attributes_count = 1
        linked_attributes = 0x847e600
        uptodateness_vector = 0x0
        objs = 0x6898680
        req_replica_flags = 2153777248
        s_dsa = 0x6a9f540
        tmp_dns_name = 0x672d2c0 "f3f0ea09-eea6-405e-b04e-48169922b4ef._msdcs.pronet.com.au"
        i = 3059092576
        seq_num = 4294967295
        is_exop = false
        __FUNCTION__ = "libnet_vampire_cb_store_chunk"
#24 0x00007fb7aa39f4f5 in py_net_replicate_chunk (self=0x7fb7ca79be90, args=0x1ade140, kwargs=0x1aa38b0) at ../source4/libnet/py_net.c:533
        kwnames = {0x7fb7aa3a03c7 "state", 0x7fb7aa39fb79 "level", 0x7fb7aa3a03cd "ctr", 0x7fb7aa3a03d1 "schema", 0x7fb7aa3a03d8 "req_level", 0x7fb7aa3a03e2 "req", 0x0}
        py_state = 0x7fb7ca79ba80
        py_ctr = 0x1ae42d0
        py_schema = 0x7fb7ca545730
        py_req = 0x7fb7ca720ef0
        s = 0x1da9050
        level = 6
        req_level = 8
        chunk_handler = 0x7fb7aa167e24 <libnet_vampire_cb_store_chunk>
        status = {v = 2}
#25 0x00007fb7ca2bc6f1 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#26 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#27 0x00007fb7ca2bbaa4 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#28 0x00007fb7ca2bcb8f in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#29 0x00007fb7ca2bcb8f in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#30 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#31 0x00007fb7ca2bbaa4 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#32 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#33 0x00007fb7ca250dad in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#34 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#35 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#36 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#37 0x00007fb7ca250cb0 in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#38 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#39 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#40 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#41 0x00007fb7ca250cb0 in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#42 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#43 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#44 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#45 0x00007fb7ca250cb0 in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#46 0x00007fb7ca229c63 in PyObject_Call () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#47 0x00007fb7ca2ba470 in PyEval_EvalFrameEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#48 0x00007fb7ca2bd657 in PyEval_EvalCodeEx () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#49 0x00007fb7ca2bd732 in PyEval_EvalCode () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#50 0x00007fb7ca2d7bac in ?? () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#51 0x00007fb7ca2d7c80 in PyRun_FileExFlags () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#52 0x00007fb7ca2d916c in PyRun_SimpleFileExFlags () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#53 0x00007fb7ca2e58a2 in Py_Main () from /usr/lib64/libpython2.6.so.1.0
No symbol table info available.
#54 0x00007fb7c95c9cdd in __libc_start_main () from /lib64/libc.so.6
No symbol table info available.
#55 0x0000000000400649 in _start ()
No symbol table info available.
No symbol table info available.
A debugging session is active.

	Inferior 1 [process 4733] will be detached.

Quit anyway? (y or n) [answered Y; input not from terminal]
Failed to apply records: Failed to find GUID for (null): Invalid DN syntax
Failed to commit objects: WERR_GENERAL_FAILURE
ERROR(<type 'exceptions.TypeError'>): uncaught exception - Failed to process chunk: NT_STATUS_UNSUCCESSFUL
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/__init__.py", line 175, in _run
    return self.run(*args, **kwargs)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/netcmd/domain.py", line 558, in run
    dns_backend=dns_backend)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/join.py", line 1071, in join_RODC
    ctx.do_join()
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/join.py", line 1009, in do_join
    ctx.join_replicate()
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/join.py", line 734, in join_replicate
    replica_flags=ctx.replica_flags)
  File "/usr/local/samba/lib64/python2.6/site-packages/samba/drs_utils.py", line 252, in replicate
    schema=schema, req_level=req_level, req=req)
Comment 30 Matthieu Patou 2015-05-20 15:22:46 UTC
Created attachment 11070 [details]
Proposed patch, fix my repro
Comment 31 Matthieu Patou 2015-05-20 15:24:12 UTC
Ok I have a patch. It seems to fix the issue, at least it fixes my reproduction test. Feedback would be appriciated
Comment 32 Stefan Metzmacher 2015-05-21 08:01:58 UTC
Comment on attachment 11070 [details]
Proposed patch, fix my repro

That patch looks very good, thanks!

Is there a chance that you add a simple reproducer to 
source4/dsdb/tests/python/ldap_syntaxes.py ?
Comment 33 samba 2015-05-27 11:08:24 UTC
Hi Matt,

thanks for the patch!
I applied it to debian version 2:4.1.17+dfsg-1~bpo70+1 (amd64)

The previous error does not show again.
However the replication still fails.
The last line before the error are:

msExchOWATranscodingMimeTypes: S:142:                                         
                                                                              
                        a:<GUID=0898c3dc-8f78-46cc-8e59-0dede5926582>;CN=owa (
 Default Web Site),CN=HTTP,CN=Protocols,CN=R01S040,CN=Servers,CN=Exchange Admi
 nistrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Rostek und Pes
 ch,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=rostek-pesch,DC=loca
 l
msExchOWATranscodingMimeTypes: S:146:                                         
                                                                              
                            a:<GUID=0898c3dc-8f78-46cc-8e59-0dede5926582>;CN=o
 wa (Default Web Site),CN=HTTP,CN=Protocols,CN=R01S040,CN=Servers,CN=Exchange 
 Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Rostek und
  Pesch,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=rostek-pesch,DC=
 local
msExchOWATranscodingFlags: 1
msExchVersion: 4535486012416
msExchMailboxFolderSet: 2147483647
cn: owa (Default Web Site)
objectGUID: 0898c3dc-8f78-46cc-8e59-0dede5926582
whenChanged: 20090702103730.0Z
uSNCreated: 6128
uSNChanged: 6128


replmd_op_callback failure. Error is: Attribute or value exists
Failed to apply records: attribute 'msExchOWATranscodingFileTypes': value #1 on 'CN=owa (Default Web Site),CN=HTTP,CN=Protocols,CN=R01S040,CN=Servers,CN=Exchange Administrative Group (FYDIBOHF23SPDLT),CN=Administrative Groups,CN=Rostek und Pesch,CN=Microsoft Exchange,CN=Services,CN=Configuration,DC=rostek-pesch,DC=local' provided more than once: Attribute or value exists
Failed to commit objects: WERR_GENERAL_FAILURE

Any ideas?
Chris
Comment 34 Matthieu Patou 2015-05-27 14:03:25 UTC
I think I have a patch for that somewhere.

From a very quick analysis it seems that we don't pay attention to the prefix before the DN to check if the  entry is different.

I need to reproduce this.
Also looking at the value it looks a bit strange to me, normally this attribute contains mimetypes but here your mime type is a lot of white spaces + a sound kind of strange to me.
Comment 35 Matthieu Patou 2015-05-27 14:04:03 UTC
(In reply to Stefan (metze) Metzmacher from comment #32)
I have in progress unit tests for that, I'll publish them (soon hopefully).
Comment 36 rylos 2015-10-26 14:15:13 UTC
I've  Debian 8.2 and Samba 4.3.1, Windows2008R2 Domain with Exchange 2007 and this bug is still present, any news on a fix?
Thank you
Comment 37 samba 2015-10-26 15:11:03 UTC
There is no news on this bug.

Matthieu is so packed with work, for many months he can't even find time to answer an email on the issue.
For us here, the bug is an absolute show-stopper to the idea to replace a windows active domain controller, because we can't move the ADC data.

Is there anybody else in the community with LDAP knowledge, who could take care of the bug?

Chris
Comment 38 Timo Nieminen 2016-01-10 14:43:45 UTC
I found a (destructive) workaround that worked for us. The only place that had problematic ldap entries was Exchange Web Access (OWA) policy. The policy stores accepted/banned filetypes in a way that samba can not currently handle while joining.

By using Remove-OwaMailboxPolicy in Exhange management shell, I dropped the problematic policies and was able to complete joining Samba as DC to the domain. (Was using Samba 4.3.3)

This was an option for us because OWA was in minimal use and there was just default rules, for anyone with complex OWA-settings, this probably wont be an option.
Comment 39 Clement Wong 2016-10-01 19:31:30 UTC
@stafan, any chance of merging https://bugzilla.samba.org/show_bug.cgi?id=9998#c30 ?
Comment 40 Stefan Metzmacher 2016-10-02 11:24:10 UTC
(In reply to Clement Wong from comment #39)

I'd prefer that we take Andrew's patch from
http://git.catalyst.net.nz/gw?p=samba.git;a=commitdiff;h=47b4b228bc67647c7612fba9e9a98b9f14b4eae4
which is basically the same as
https://git.samba.org/?p=abartlet/samba.git/.git;a=commitdiff;h=606d4fe20691c73f844a2c7696ea2743679d0c57

See https://bugzilla.samba.org/show_bug.cgi?id=11139

Andrew, what's the status of that patch?
Comment 41 Andrew Bartlett 2016-10-02 17:41:00 UTC
Assigning to Garming, as we have a client request for RODC support, and this falls into that area.