Jerry wrote:
FreeBSD 10.1-RELEASE
I reported this problem before. I am experiencing periodic backup failure with slapcat. I run it from CRON if that makes any difference.
This is the exact failure message:
5471c421 mdb_db_open: database "dc=seibercom,dc=net" cannot be opened: No such file or directory (2). Restore from backup! 5471c421 backend_startup_one (type=mdb, suffix="dc=seibercom,dc=net"): bi_db_open failed! (2) slap_startup failed LDIF Backup Failed Exit Code: 0
I ran the slapcat command under "truss" and this is the output:
stat("/var/db/openldap-data",{ mode=drwx------ ,inode=22311219,size=512,blksize=32768 }) = 0 (0x0) getpid() = 28705 (0x7021) __sysctl(0x7fffffffdc38,0x2,0x7fffffffdc34,0x7fffffffdc40,0x0,0x0) = 0 (0x0) open("/var/db/openldap-data/data.mdb",O_RDONLY,00) = 4 (0x4) open("/var/db/openldap-data/lock.mdb",O_RDWR|O_CREAT|O_CLOEXEC,0600) = 5 (0x5) fcntl(5,F_SETLK,0x7fffffffd9d0) ERR#35 'Resource temporarily unavailable' fcntl(5,F_SETLKW,0x7fffffffd9d0) = 0 (0x0) lseek(5,0x0,SEEK_END) = 8192 (0x2000) mmap(0x0,8192,PROT_READ|PROT_WRITE,MAP_SHARED,5,0x0) = 34367438848 (0x800758000) open("/tmp/SEMDMDBr?Nu;oi>KeQ",O_RDWR|O_EXLOCK|O_CLOEXEC,027) ERR#2 'No such file or directory'
On BSD, LMDB 0.9 uses POSIX named semaphores for concurrency control. Apparently on your BSD system the OS creates these things in /tmp. Perhaps you have a cron job deleting old files in /tmp - you should find out whatever is deleting these files and stop that.
Now, if I restart slapd, and I did check and it was running, everything will work fine, at least for awhile. I can supply the "truss" output of a successful run if desired.
No need to post it. Compare it yourself to the failure output.