Bamboo installation is stuck during startup when NFS mount has issues

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Fisheye および Crucible は除く

症状

Bamboo is stuck during the startup and wouldn't finish coming up. The server log doesn't give a hint on why it is not starting up.


環境

Any Operating system with network filesystem (NFS) mount points attached to the system.

診断

  • check if Security-Enhanced Linux is turned ON. 

    /usr/sbin/getenforce
    /usr/sbin/sestatus

    If enabled, you may have to disable it as detailed in this KB article - Bamboo hangs during the installation on Linux and uses all CPU - Disable SELinux

  • When the process gets stuck, generate a set of thread dumps (6 thread dumps taken 30 seconds apart) by following this article
  • Check if <bamboo-home> is mounted on NFS volume. If so, check if all the mount points in NFS are accessible and if you can run the below commands successfully:

    $ mount -l
    $ df -h

原因

  • A hanging NFS mount can cause the problem even if it isn't where Bamboo home is located. This is because Bamboo uses Lucene and this iterates over all the mount points, even when it is not a path utilized directly by the application.
  • Thus, by checking the output of mount -l we can check if there are any NFS mounts then verify if they're working.
  • Thread Dumps show setup stuck here across all dumps:

    "setupDefaultGeneralBackgroundThread" #48 daemon prio=5 os_prio=0 tid=0x00007f1f44004000 nid=0x1ab5 runnable [0x00007f1fac209000]
       java.lang.Thread.State: RUNNABLE
    	at sun.nio.fs.UnixNativeDispatcher.stat0(Native Method)
    	at sun.nio.fs.UnixNativeDispatcher.stat(UnixNativeDispatcher.java:286)
    	at sun.nio.fs.UnixFileAttributes.get(UnixFileAttributes.java:70)
    	at sun.nio.fs.UnixFileStore.devFor(UnixFileStore.java:55)
    	at sun.nio.fs.UnixFileStore.<init>(UnixFileStore.java:70)
    	at sun.nio.fs.LinuxFileStore.<init>(LinuxFileStore.java:48)
    	at sun.nio.fs.LinuxFileSystem.getFileStore(LinuxFileSystem.java:112)
    	at sun.nio.fs.UnixFileSystem$FileStoreIterator.readNext(UnixFileSystem.java:213)
    	at sun.nio.fs.UnixFileSystem$FileStoreIterator.hasNext(UnixFileSystem.java:224)
    	- locked <0x00000006dc61e538> (a sun.nio.fs.UnixFileSystem$FileStoreIterator)
    	at org.apache.lucene.util.IOUtils.getFileStore(IOUtils.java:584)
    	at org.apache.lucene.util.IOUtils.spinsLinux(IOUtils.java:528)
    	at org.apache.lucene.util.IOUtils.spins(IOUtils.java:517)
    	at org.apache.lucene.util.IOUtils.spins(IOUtils.java:492)
    	at org.apache.lucene.index.ConcurrentMergeScheduler.initDynamicDefaults(ConcurrentMergeScheduler.java:412)
    	- locked <0x00000006dc61e5f8> (a org.apache.lucene.index.ConcurrentMergeScheduler)
    	at org.apache.lucene.index.ConcurrentMergeScheduler.merge(ConcurrentMergeScheduler.java:501)
    	- locked <0x00000006dc61e5f8> (a org.apache.lucene.index.ConcurrentMergeScheduler)
    	at org.apache.lucene.index.IndexWriter.waitForMerges(IndexWriter.java:2557)
    	at org.apache.lucene.index.IndexWriter.shutdown(IndexWriter.java:1037)
    	at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:1079)
    	at com.atlassian.bamboo.index.bonnie.BonnieLuceneConnection.upgradeIndexIfNecessary(BonnieLuceneConnection.java:545)
    	at com.atlassian.bamboo.index.bonnie.BonnieLuceneConnection.ensureCorrectIndexFormat(BonnieLuceneConnection.java:520)
    	at com.atlassian.bamboo.index.bonnie.BonnieLuceneConnection.<init>(BonnieLuceneConnection.java:101)
    	at com.atlassian.bamboo.index.bonnie.BonnieLuceneConnection.<init>(BonnieLuceneConnection.java:115)
    	at com.atlassian.bamboo.index.bonnie.BonnieLuceneConnection.<init>(BonnieLuceneConnection.java:127)
    	at com.atlassian.bamboo.index.LuceneConnectionImpl.<init>(LuceneConnectionImpl.java:17)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
    	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
    	at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:172)

ソリューション

This confirms that Lucene thread is blocked as it is waiting for all the NFS mounts to be accessible. If one of the NFS mounts is hanging/unresponsive on this system,  please unmount them or make them properly available and then attempt the Bamboo installation process again.

最終更新日 2022 年 9 月 6 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.