Fisheye fails to start up with FileNotFoundException and permission denied errors

Platform Notice: Data Center Only - This article only applies to Atlassian products on the Data Center platform.

Note that this KB was created for the Data Center version of the product. Data Center KBs for non-Data-Center-specific features may also work for Server versions of the product, however they have not been tested. 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.

*Except Fisheye and Crucible

Summary

Fisheye fails to start up and the following message is logged in the Fisheye logs:

atlassian-fisheye-YYYY-MM-DD.log

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Caused by: com.cenqua.fisheye.rep.DbException: com.persistit.exception.PersistitIOException: java.io.FileNotFoundException: /fisheye/cache/pipeline/pipeline (Permission denied) at com.atlassian.fisheye.pipeline.PartitionedChangeSetPhaseQueues.<init>(PartitionedChangeSetPhaseQueues.java:206) [fisheye.jar:?] at com.atlassian.fisheye.pipeline.DefaultChangeSetPipeline.<init>(DefaultChangeSetPipeline.java:263) [fisheye.jar:?] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) [?:1.8.0_292] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) [?:1.8.0_292] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) [?:1.8.0_292] at java.lang.reflect.Constructor.newInstance(Constructor.java:423) [?:1.8.0_292] at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:148) [spring-beans-4.0.9.RELEASE.jar:4.0.9.RELEASE] ... 112 more Caused by: com.persistit.exception.PersistitIOException: java.io.FileNotFoundException: /fisheye/cache/pipeline/pipeline (Permission denied) at com.persistit.VolumeStorageV2.open(VolumeStorageV2.java:234) [akiban-persistit-3.2.7.jar:?] at com.persistit.Volume.open(Volume.java:485) [akiban-persistit-3.2.7.jar:?] at com.persistit.Persistit.initializeVolumes(Persistit.java:639) [akiban-persistit-3.2.7.jar:?] at com.persistit.Persistit.initialize(Persistit.java:439) [akiban-persistit-3.2.7.jar:?] at com.atlassian.fisheye.pipeline.PartitionedChangeSetPhaseQueues.<init>(PartitionedChangeSetPhaseQueues.java:204) [fisheye.jar:?] ... 118 more Caused by: java.io.FileNotFoundException: /fisheye/cache/pipeline/pipeline (Permission denied) at java.io.RandomAccessFile.open0(Native Method) [?:1.8.0_292] at java.io.RandomAccessFile.open(RandomAccessFile.java:316) [?:1.8.0_292] at java.io.RandomAccessFile.<init>(RandomAccessFile.java:243) [?:1.8.0_292] at com.persistit.MediatedFileChannel.openChannel(MediatedFileChannel.java:142) [akiban-persistit-3.2.7.jar:?] at com.persistit.MediatedFileChannel.<init>(MediatedFileChannel.java:87) [akiban-persistit-3.2.7.jar:?] at com.persistit.MediatedFileChannel.<init>(MediatedFileChannel.java:80) [akiban-persistit-3.2.7.jar:?] at com.persistit.VolumeStorageV2.open(VolumeStorageV2.java:194) [akiban-persistit-3.2.7.jar:?] ... 122 more

The path identified in the log file will be unique to your installation.

Diagnosis

  • Check permissions on the folders/ files reported in the logs (under the $FISHEYE_INST directory) using the ls command. For example:

1 ls -la $FISHEYE_INST/cache/pipeline
  • Check what is the user you're trying to use to start up Fisheye.

Cause

Cause 1

Lack of permissions in some folders/ files inside the $FISHEYE_INST directory for the user trying to run Fisheye.

Cause 2

Attempting to start Fisheye with the wrong user account in the system.

Solution

Solution 1

With the help of the ls command identify the incorrect permissions and use chown and chmod to either change ownership of the folders/ files or update permissions. For example, if you want to change ownership of all files and folders under the $FISHEYE_INST directory for a specific user you can run the following command:

1 chown -R user:group $FISHEYE_INST

Solution 2

This can sometimes happen when trying to start Fisheye with the wrong user account. Switch back to the account you normally use to start Fisheye and try again.

There's a chance that the startup will fail even after switching to the correct account due to Cause 1. If you attempt to start the application with the wrong user account and that account creates files under the $FISHEYE_INST directory you may have problems accessing those files when switching back to the correct user account. If that happens apply Solution 1 before trying to start the application again.

Updated on March 18, 2025

Still need help?

The Atlassian Community is here for you.