Felipe Ribeiro de Oliveira
2024-Jun-25 15:14 UTC
[Samba] Error when raising Samba 4.19 Functional Level
Hi, I raised the functional level of my Samba 4.19 server with the commands below, the Schema update took a long time but ended successfully, however when raising the functional level with the second command the error below occurred and I was unable to complete the complete process. Can anyone tell me what could have happened or if they have experienced this? 1 - samba-tool domain schemaupgrade --schema=2019 2 - samba-tool domain functionalprep --function-level=2016 3 - samba-tool domain level raise --domain-level=2016 --forest-level=2016 Error: Exception: (1, 'descriptor_modify on CN=XXXX,CN=XXXX,DC=XX,DC=XXXX,DC=XX failed: (-30788) - MDB_TXN_FULL: Transaction has too many dirty pages - transaction too big at ../ ../lib/ldb/ldb_mdb/ldb_mdb.c:203') cancel called but no ldb transactions are active! ERROR(ldb): uncaught exception - descriptor_modify on CN=XXXX,CN=XXXX,DC=XX,DC=XXXX,DC=XX failed: (-30788) - MDB_TXN_FULL: Transaction has too many dirty pages - transaction too big at . ./../lib/ldb/ldb_mdb/ldb_mdb.c:203 File "/usr/lib64/python3.6/site-packages/sernet/samba/netcmd/__init__.py", line 279, in _run return self. run(*args, **kwargs) File "/usr/lib64/python3.6/site-packages/sernet/samba/netcmd/domain/functional_prep.py", line 137, in run samdb.transaction_cancel() *O DC And CN I put X just to not expose the company I work for. Thanks Felipe Ribeiro de Oliveira feliperibeiro.ti at gmail.com
Rowland Penny
2024-Jun-25 15:26 UTC
[Samba] Error when raising Samba 4.19 Functional Level
On Tue, 25 Jun 2024 12:14:42 -0300 Felipe Ribeiro de Oliveira via samba <samba at lists.samba.org> wrote:> Hi, I raised the functional level of my Samba 4.19 server with the > commands below, the Schema update took a long time but ended > successfully, however when raising the functional level with the > second command the error below occurred and I was unable to complete > the complete process. Can anyone tell me what could have happened or > if they have experienced this? > > 1 - samba-tool domain schemaupgrade --schema=2019 > 2 - samba-tool domain functionalprep --function-level=2016 > 3 - samba-tool domain level raise --domain-level=2016 > --forest-level=2016 > > Error: > > Exception: (1, 'descriptor_modify on > CN=XXXX,CN=XXXX,DC=XX,DC=XXXX,DC=XX failed: (-30788) - MDB_TXN_FULL: > Transaction has too many dirty pages - transaction too big at ../ > ../lib/ldb/ldb_mdb/ldb_mdb.c:203') cancel called but no ldb > transactions are active! ERROR(ldb): uncaught exception - > descriptor_modify on CN=XXXX,CN=XXXX,DC=XX,DC=XXXX,DC=XX failed: > (-30788) - MDB_TXN_FULL: Transaction has too many dirty pages - > transaction too big at . ./../lib/ldb/ldb_mdb/ldb_mdb.c:203 > File > "/usr/lib64/python3.6/site-packages/sernet/samba/netcmd/__init__.py", > line 279, in _run return self. run(*args, **kwargs) > File > "/usr/lib64/python3.6/site-packages/sernet/samba/netcmd/domain/functional_prep.py", > line 137, in run > samdb.transaction_cancel() > > *O DC And CN I put X just to not expose the company I work for. > > Thanks > > Felipe Ribeiro de Oliveira > > feliperibeiro.ti at gmail.comAs you have posted the same thing again, I will reply in the same way: I suggest you open a Samba bug report about this, your error appears to be coming from the lmdb code. Also, if you are going to sanitise something, please do it in a way that that makes it obvious what the object is, your way is meaningless, it could be a user, group, computer, anything. Rowland
Hi Felipe, Le 25/06/2024 ? 17:14, Felipe Ribeiro de Oliveira via samba a ?crit?:> Hi, I raised the functional level of my Samba 4.19 server with the commands > below, the Schema update took a long time but ended successfully, however > when raising the functional level with the second command the error below > occurred and I was unable to complete the complete process. Can anyone tell > me what could have happened or if they have experienced this? > > 1 - samba-tool domain schemaupgrade --schema=2019 > 2 - samba-tool domain functionalprep --function-level=2016 > 3 - samba-tool domain level raise --domain-level=2016 --forest-level=2016 > > Error: > > Exception: (1, 'descriptor_modify on CN=XXXX,CN=XXXX,DC=XX,DC=XXXX,DC=XX > failed: (-30788) - MDB_TXN_FULL: Transaction has too many dirty pages - > transaction too big at ../ ../lib/ldb/ldb_mdb/ldb_mdb.c:203') > cancel called but no ldb transactions are active! > ERROR(ldb): uncaught exception - descriptor_modify on > CN=XXXX,CN=XXXX,DC=XX,DC=XXXX,DC=XX failed: (-30788) - MDB_TXN_FULL: > Transaction has too many dirty pages - transaction too big at . > ./../lib/ldb/ldb_mdb/ldb_mdb.c:203 > File "/usr/lib64/python3.6/site-packages/sernet/samba/netcmd/__init__.py", > line 279, in _run > return self. run(*args, **kwargs) > File > "/usr/lib64/python3.6/site-packages/sernet/samba/netcmd/domain/functional_prep.py", > line 137, in run > samdb.transaction_cancel()we have had this issue at another client earlier and Andr?as here digged into this issue [1]. There is a compile time constant in LMDB lib that is too low for large samba Domain. I think you just have to upgrade LMDB. Looking at your python 3.6 I guess you are still on CentOS7, then you can get the patched lmdb here (reminder: you should only need the lmdb package for that specific bug): * http://samba.tranquil.it/centos7/samba-4.19.7/ * http://samba.tranquil.it/centos7/samba-4.19.7-srcrpm/ Cheers, Denis [1] https://lists.samba.org/archive/samba-technical/2024-March/138835.html> > *O DC And CN I put X just to not expose the company I work for. > > Thanks > > Felipe Ribeiro de Oliveira > > feliperibeiro.ti at gmail.com