Então, depois de procurar pela internet e não encontrar uma solução que funcionasse e o único método recomendado parecia ser db_recover -v -h /var/lib/ldap/
, o que não funcionou, mas notei que ele incrementou o ponto de verificação de recuperação.
[root@lddev-build-par01 ~]# db_recover -v -h /var/lib/ldap/
Finding last valid log LSN: file: 1 offset 1632
Recovery complete at Wed Jan 4 14:52:26 2017
Maximum transaction ID 0 Recovery checkpoint [1][1632]
[root@lddev-build-par01 ~]# db_recover -v -h /var/lib/ldap/
Finding last valid log LSN: file: 1 offset 1724
Recovery complete at Wed Jan 4 14:52:26 2017
Maximum transaction ID 0 Recovery checkpoint [1][1724]
Então, depois de ter certeza de que eu tinha um backup dos meus dados que não funcionavam, eu executei esse comando várias vezes até que o ponto de verificação de recuperação fosse maior do que o que o arquivo BDB achava que era. Eu realmente não esperava que funcionasse.
while true; do db_recover -v -h /var/lib/ldap/; done
Mas aconteceu: -)
Eu não gostaria de garantir que não houve perda de dados, mas como esse era um ambiente de desenvolvimento, não é o fim do mundo e o conjunto de testes logo encontrará algum problema. Espero que isso ajude alguém.