[Date Prev][Date Next] [Chronological] [Thread] [Top]

AW: SUMMARY: Follow up: 2.1.5, solaris 8, fails to start



Hallo again Howard,

It looks like it is NFS problem. We have found that 

1) As soon as you try to create db file on NFS filesystem mmap indeed fails. Here is output of truss:

bdb_db_open: 
626:    write(2, " b d b _ d b _ o p e n :".., 14)      = 14
bdb_db_open: dbenv_open(/home/ratte/openldap-data)
626:    write(2, " b d b _ d b _ o p e n :".., 51)      = 51
626:    stat("/home/ratte/openldap-data/DB_CONFIG", 0xFFBEF578) Err#2 ENOENT
626:    open("/home/ratte/openldap-data/DB_CONFIG", O_RDONLY) Err#2 ENOENT
626:    stat("/var/tmp", 0xFFBEF588)                    = 0
626:    stat("/home/ratte/openldap-data/__db.001", 0xFFBEF5D0) = 0
626:    open("/home/ratte/openldap-data/__db.001", O_RDWR|O_CREAT|O_EXCL, 0600) Err#17 EEXIST
626:    open("/home/ratte/openldap-data/__db.001", O_RDWR) = 8
626:    fcntl(8, F_SETFD, 0x00000001)                   = 0
626:    ioctl(8, 0x2000664C, 0x00000001)                = 0
626:    fstat(8, 0xFFBEF648)                            = 0
626:    close(8)                                        = 0
626:    open("/home/ratte/openldap-data/__db.001", O_RDWR|O_CREAT, 0600) = 8
626:    fcntl(8, F_SETFD, 0x00000001)                   = 0
626:    ioctl(8, 0x2000664C, 0x00000001)                = 0
626:    mmap(0x00000000, 8192, PROT_READ|PROT_WRITE, MAP_SHARED, 8, 0) Err#11 EAGAIN
bdb(): mmap: Resource temporarily unavailable
626:    write(2, " b d b ( ) :   m m a p :".., 46)      = 46

In case of not NFS mounted filesystem everything works well.

2) Here what sun mentioned about NFS:

The user is attempting to use the mmap call on a file mounted from NFS.
The mmap call fails with the EAGAIN error return. 

Sun does not currently support the mmap system call on files that
reside on NFS filesystem if they are locked, even if they are locked 
by the current process.  The existence of a lock implies that data race
conditions are a concern. Since the Solaris[TM] VM system cannot guarantee
cache coherency across NFS, Solaris does not allow the mmap call on 
locked NFS files.            

3) Strange enough there were no such problems with solaris 6, but anyway .... 

Best regards, vadim tarassov.


-----Ursprüngliche Nachricht-----
Von: vadim tarassov [mailto:vadim.tarassov@swissonline.ch]
Gesendet: Mittwoch, 18. Dezember 2002 22:23
An: Howard Chu
Cc: 'Tarassov Vadim'; 'openLDAP (E-mail)'
Betreff: Re: SUMMARY: Follow up: 2.1.5, solaris 8, fails to start


Hallo Howard,

After I wrote this message I made "make install". I configured openldap 
with --prefix=/usr/local/openldap, and I was able to start slapd from 
there! Now situation is following: "make test" always fails the way I 
wrote below (I can not start slapd), but nevertheless I can run slapd 
after I "make install" from /usr/local/openldap/libexec/. I don't know 
at the moment what is really the problem, but it (i) may be error in 
makefile or in test scripts, (ii) the fact that I have compiled 
everything in my "home" which is NFS mounted and "make test" there too.

Thanx a lot for reply, vadim tarassov.

Howard Chu wrote:

>You have an error message from mmap in this log, which indicates that your
>system is out of memory. If you don't believe this is correct, then there's
>something wrong with your BDB installation.
>
>  -- Howard Chu
>  Chief Architect, Symas Corp.       Director, Highland Sun
>  http://www.symas.com               http://highlandsun.com/hyc
>  Symas: Premier OpenSource Development and Support
>
>  
>
>>-----Original Message-----
>>From: owner-openldap-software@OpenLDAP.org
>>[mailto:owner-openldap-software@OpenLDAP.org]On Behalf Of Tarassov Vadim
>>    
>>
>
>  
>
>>Hallo Andrew, everybody,
>>
>>I've seen several people had this problem on solaris 8,
>>unfortunately I could not find explanation for it in the
>>list. Now I think I run in the similar trouble. I compiled
>>openldap 2.1.8 with berkeley db 4.1.24 on solaris 8. My first
>>test test000-rootdse fails with this message:
>>
>>slapd startup: initiated.
>>bdb_db_open: o=OpenLDAP Project,l=Internet
>>bdb_db_open: dbenv_open(./test-db)
>>bdb(o=OpenLDAP Project,l=Internet): mmap: Resource
>>temporarily unavailable
>>bdb_db_open: dbenv_open failed: Resource temporarily unavailable (11)
>>backend_startup: bi_db_open(0) failed! (11)
>>slapd shutdown: initiated
>>====> bdb_cache_release_all
>>slapd shutdown: freeing system resources.
>>bdb(o=OpenLDAP Project,l=Internet): txn_checkpoint interface
>>requires an environment configured for the transaction subsystem
>>bdb_db_destroy: txn_checkpoint failed: Invalid argument (22)
>>====> bdb_cache_release_all
>>slapd stopped.
>>connections_destroy: nothing to destroy.
>>
>>Do you know what went wrong?
>>
>>Thanx a lot, vadim tarassov.
>>
>>
>>-----Ursprüngliche Nachricht-----
>>Von: Andrew Diederich [mailto:andrew@NETdelivery.com]
>>Gesendet: Montag, 30. September 2002 20:46
>>An: openLDAP (E-mail)
>>Betreff: SUMMARY: Follow up: 2.1.5, solaris 8, fails to start
>>
>>
>>adding --enable-ldbm made the error after test 15 go away.
>>
>>I did find out what this line meant:
>>bdb(dc=netdelivery): /var/openldap-data/__db.001: No such
>>file or directory
>>
>>Turns out I mispelled /var/openldap-data.  *whack* *whack*  I
>>can't believe
>>I've been looking at these errors for a week and didn't pick
>>up on that.
>>With tab-completion in bash I just never typed the whole
>>directory name.
>>
>>I'm not going to go back and try again with gcc-3.2, though.
>>I still don't
>>know why I had tests mysteriously fail, and that bothers me.
>>
>>Anyway, thanks for all the help.  I'm going back to my hole
>>now, chagrined.
>>
>>--
>>Andrew Diederich
>>
>>-----Original Message-----
>>From: Andrew Diederich [mailto:andrew@NETdelivery.com]
>>Sent: Monday, September 30, 2002 11:57
>>To: openLDAP (E-mail)
>>Subject: RE: Follow up: 2.1.5, solaris 8, fails to start
>>
>>
>>I've gone back to vanilla testing.  I removed SMCgcc 3.2,
>>installed 2.95.3,
>>rebooted solaris.  Used the env variables I described before, and
>>./configure;make;make test.  Went all through the tests, sill got the
>>strange errors after test 15.  (I think it may be something
>>with the test,
>>not my stuff.)
>>
>>Next I did a 'sudo make install', which went pretty well
>>except for slurpd:
>>  Entering subdirectory slurpd
>>../../build/shtool mkdir -p /usr/local/libexec
>>shtool:install:Error: unknown option: `d'
>>shtool:install:Hint:  run `shtool install -h' or `man shtool'
>>for details
>>*** Error code 1 (ignored)
>>../../build/shtool install -c -m 755 -s slurpd
>>/usr/local/libexec/slurpd
>>
>>shtool is just in openldap-2.1.5/build/shtool.
>>
>>Unfortunately, I'm getting the same errors in the ldap logs
>>when I 'sudo
>>/usr/local/libexec/slapd'
>>
>>Sep 30 11:46:39 lindstrom slapd[27772]: [ID 246621
>>local4.debug] bdb_open:
>>Sleepycat Software: Berkeley DB 4.0.14: (November 18, 2001)
>>Sep 30 11:46:39 lindstrom slapd[27772]: [ID 178880 local4.debug]
>>bdb_db_init: Initializing BDB database
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 446079 local4.debug]
>>bdb(dc=netdelivery): /var/openldap-data/__db.001: No such
>>file or directory
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 886196 local4.debug]
>>bdb_db_open: dbenv_open failed: No such file or directory (2)
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 289525 local4.debug]
>>backend_startup: bi_db_open(0) failed! (2)
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 446079 local4.debug]
>>bdb(dc=netdelivery): txn_checkpoint interface requires an environment
>>configured for the transaction subsystem
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 887577 local4.debug]
>>bdb_db_destroy: txn_checkpoint failed: Invalid argument (22)
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 486161 local4.debug] slapd
>>stopped.
>>Sep 30 11:46:39 lindstrom slapd[27773]: [ID 432338 local4.debug]
>>connections_destroy: nothing to destroy.
>>
>>So I'm pretty much back at square 1.  I can go and re-compile
>>everything
>>starting with Berekely db, with gcc 2.95.3.  I think it's pretty odd I
>>always get the same error about txn_checkpoint, though.  I
>>even just went
>>and ran the Berkeley tests for just txn, and they came through okay.
>>
>>Hmm, I re-ran make test for openldap (make test bdb) to see
>>what the end
>>error was, and it seems to want --enable-ldbm, which of course Igor
>>suggested earlier.  I'll remake it, and see if that helps.
>>
>>    
>>
>>>>>>>Test succeeded
>>>>>>>./scripts/test015-xsearch completed OK.
>>>>>>>waiting 10 seconds for things to exit
>>>>>>>              
>>>>>>>
>>ln: cannot create ./data: File exists
>>*** Error code 2 (ignored)
>>ln: cannot create ./schema: File exists
>>*** Error code 2 (ignored)
>>ln: cannot create ucdata/liblunicode: File exists
>>*** Error code 2 (ignored)
>>run configure with --enable-ldbm
>>make: Fatal error: Don't know how to make target `bdb'
>>
>>
>>    
>>
>
>
>  
>