TDB hash issues ? Re: upgradeprovision --full locking issue

a.key a.key at jadu.net
Wed Apr 25 03:28:12 MDT 2012


On 19/04/12 00:10, Matthieu Patou wrote:
> Hello,
> On 04/18/2012 04:06 PM, a.key wrote:
>> Hi.
>> We've been running samba4 based AD since around alpha11/12
>> continuously upgrading with upgradeprovision. our AD is based on two
>> samba4 DCs installed on fairly up to date Debian Squeeze.
>>
>> Quite recently we discovered that we are no longer able to create
>> Group Policies as users from domain admin group so we thought that we
>> may require upgradeprovision.
>> The domain and forest are on 2008R2 level.
>>
>> When trying upgradeprovision --full at the end we get this:
>>
>> ltdb: tdb(/usr/local/samba/private/sam.ldb): Locking error:
>> tdb_allrecord_upgrade failed: count 0 too high
>> ltdb: tdb(/usr/local/samba/private/sam.ldb): Locking error:
>> tdb1_transaction_prepare_commit: failed to upgrade hash locks
> Looks like a tdb issue when trying to do some commit.
> Maybe some TDB guru

So there's nobody that could help us here ?
Pretty please ;).

Regards Arek.

>
>> ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/CN=SCHEMA,CN=CONFIGURATION,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction
>> ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/CN=CONFIGURATION,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction
>> ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/DC=DOMAINDNSZONES,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction
>> ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/DC=FORESTDNSZONES,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction
>> ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction
>> partition del transaction mismatch
>>
>>
>>
>> I thought that strace against upgradeprovision will reveal more but
>> nothing that I could use to fix:
>>
>> ---SNIP---
>> fcntl64(5, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6244) = 0
>> fcntl64(5, F_SETLKW64, {type=F_WRLCK, whence=SEEK_SET, start=0,
>> len=1}, 0xbfff6234) = 0
>> mmap2(NULL, 2469888, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS,
>> -1, 0) = 0xb0399000
>> fdatasync(5) = 0
>> msync(0xb5483000, 2466532, MS_SYNC) = 0
>> munmap(0xb0399000, 2469888) = 0
>> fdatasync(5) = 0
>> msync(0xb5483000, 24, MS_SYNC) = 0
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 106ltdb:
>> tdb(/usr/local/samba/private/sam.ldb): Locking error:
>> tdb_allrecord_upgrade failed: count 0 too high) = 106
>> write(2, "\n", 1
>> ) = 1
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 121ltdb:
>> tdb(/usr/local/samba/private/sam.ldb): Locking error:
>> tdb1_transaction_prepare_commit: failed to upgrade hash locks) = 121
>> write(2, "\n", 1
>> ) = 1
>> fcntl64(11, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6264) = 0
>> fcntl64(11, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6264) = 0
>> fdatasync(8) = 0
>> msync(0xb29a6000, 24, MS_SYNC) = 0
>> fcntl64(8, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6234) = 0
>> fcntl64(8, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6234) = 0
>> fcntl64(8, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=0,
>> len=1}, 0xbfff6234) = 0
>> fdatasync(6) = 0
>> msync(0xb484c000, 24, MS_SYNC) = 0
>> fcntl64(6, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6234) = 0
>> fcntl64(6, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6234) = 0
>> fcntl64(6, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=0,
>> len=1}, 0xbfff6234) = 0
>> fdatasync(9) = 0
>> msync(0xb1b7d000, 24, MS_SYNC) = 0
>> fcntl64(9, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6234) = 0
>> fcntl64(9, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6234) = 0
>> fcntl64(9, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=0,
>> len=1}, 0xbfff6234) = 0
>> fdatasync(10) = 0
>> msync(0xb17f3000, 24, MS_SYNC) = 0
>> fcntl64(10, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6234) = 0
>> fcntl64(10, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6234) = 0
>> fcntl64(10, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=0,
>> len=1}, 0xbfff6234) = 0
>> brk(0xcfc9000) = 0xcfc9000
>> fdatasync(5) = 0
>> msync(0xb5483000, 24, MS_SYNC) = 0
>> fcntl64(5, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=168,
>> len=0}, 0xbfff6234) = 0
>> fcntl64(5, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6234) = 0
>> fcntl64(5, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=0,
>> len=1}, 0xbfff6234) = 0
>> fcntl64(4, F_SETLKW64, {type=F_UNLCK, whence=SEEK_SET, start=8,
>> len=1}, 0xbfff6234) = 0
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 157ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/CN=SCHEMA,CN=CONFIGURATION,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction) = 157
>> write(2, "\n", 1
>> ) = 1
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 147ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/CN=CONFIGURATION,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction) = 147
>> write(2, "\n", 1
>> ) = 1
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 148ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/DC=DOMAINDNSZONES,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction) = 148
>> write(2, "\n", 1
>> ) = 1
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 148ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/DC=FORESTDNSZONES,DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction) = 148
>> write(2, "\n", 1
>> ) = 1
>> write(2, "ltdb: tdb(/usr/local/samba/priva"..., 130ltdb:
>> tdb(/usr/local/samba/private/sam.ldb.d/DC=HQ,DC=JADU,DC=NET.ldb):
>> Invalid parameter: tdb1_transaction_cancel: no transaction) = 130
>> write(2, "\n", 1
>> ) = 1
>> fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 2), ...}) = 0
>> mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
>> 0) = 0xb05f3000
>> _llseek(2, 0, 0xbfff6010, SEEK_CUR) = -1 ESPIPE (Illegal seek)
>> write(2, "partition del transaction mismat"..., 35partition del
>> transaction mismatch
>> ) = 35
>> munmap(0xb05f3000, 4096) = 0
>> close(-1) = -1 EBADF (Bad file descriptor)
>>
>> ---SNIP---
>>
>>
>> I would be grateful for help.
>> Regards Arek.
>>
>>
>>
>
>




More information about the samba-technical mailing list