Skip to content

Troubleshooting

Matt Bianchi edited this page Jul 18, 2018 · 3 revisions

Using Flags

Flags that indicate string or int after them in the help, like --accession, expect a value to come after them. If you forget to give them a value, some weird things can happen because that flag will "eat" the next section of the command as its value since it doesn't know any better. So trying to start fusera like below will result in fusera trying to mount an accession named "-d" instead of running fusera with the debug flag set.
fusera mount -a -d -l s3.us-east-1 ~/fuse

Using Environment Variables

If you think fusera isn't reading an environment variable correctly, first evaluate your environment by executing the env command. This will print out all the "global" environment variables that are visible to programs you start from within that current shell. If your variable isn't in the list or doesn't contain the expected value, something went wrong when setting the environment variable. Also take special care to ensure your issue is not a slight typo.

Variable isn't showing up in env

The shell can be tricky to work with. In order for fusera to see the variables, one must use the export DBGAP_VARIABLE="value" method. If the export keyword is not used, the variable is "local" instead of "global" so while you might be able to see and print the variable yourself, it does not get included in the list printed by env and is not visible to fusera.

Variable doesn't contain the right value

There can be some various reasons why setting the variable to some value didn't work, but most have to do with how the shell parses text. A safe practice to follow is wrapping the value in double quotes (export DBGAP_VARIABLE="value") in order to tell the shell you want everything in the quotes to be set to the variable. This typically avoids the shell mistaking certain characters as something else other than their literal text value, so if you're not wrapping values in double quotes then try that first. Another thing that can trip up the shell is spaces in path names. It is best just to avoid naming files or directories with spaces, but if you insist then prefix the space with a \: export DBGAP_NGC="/home/ubuntu/path\ with\ spaces/ngc.ngc".

Connectivity Issues

If fusera is reporting that it is having issues connecting to the SDL API, first check that you have access to it by invoking:

curl -X POST "https://www.ncbi.nlm.nih.gov/Traces/sdl/1/retrieve"

The print out to the terminal should be:

{
    "status": 400,
    "message": "No accession to process"
}

If this command has issues, contact your network administrator to resolve network/proxy issues.

If this command works and fusera is still reporting the same error, review some of the other troubleshooting methods before reporting an issue.