TDB hash issues ? Re: upgradeprovision --full locking issue
Matthieu Patou
mat at samba.org
Wed Apr 18 17:10:21 MDT 2012
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
> 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.
>
>
>
--
Matthieu Patou
Samba Team
http://samba.org
More information about the samba-technical
mailing list