DOI-USGS / ISIS3

Integrated Software for Imagers and Spectrometers v3. ISIS3 is a digital image processing software package to manipulate imagery collected by current and past NASA and International planetary missions.
https://isis.astrogeology.usgs.gov
Other
198 stars 167 forks source link

kernels.db file missing from ${ISISDATA}/viking2/kernels/pck/ #5280

Open dpmayerUSGS opened 1 year ago

dpmayerUSGS commented 1 year ago

ISIS version(s) affected: >6.0.0

Description

It appears that a kernels.db file is missing from the PCK subdirectory for Viking 2. This causes programs like spiceinit to error out. I don't know if this is a general issue for the ISIS data area or restricted to the local USGS Astrogeology data area.

Possible Solution

Generate and add a kernels.db files to ${ISISDATA}/viking2/kernels/pck/ . The kernels.db file should look very similar to the one for Viking 1 located in ${ISISDATA}/viking1/kernels/pck/

Additional context

When the ISIS data area was restructured a few months ago, a number of kernels.db files failed to get generated/copied into the local USGS Astrogeology data area. The issues I'm thinking of were reported internally rather than on GitHub.

Kelvinrr commented 1 year ago

I find this bizarre as spiceinit should be picking them up from the base area which has the PCK and the kerneldbs, as viking seems to be using generic kernels. I put the kernel.dbs into the viking2 PCK folder which should be available on the S3 buckets now, but I think this might be more of a workaround?

Maybe we can leave this open with a bigger question of: why isn't spiceinit using the base kerneldbs? As the viking kerneldbs are just pointing back to base PCKs.

KrisBecker commented 1 year ago

This is because if the mission PCK directory exists, it does not look in the base directory.

See KernelDb::loadSystemDb().

Kelvinrr commented 1 year ago

Then it seems we also need to add the viking 1+2 PCK dir to the ignore list in the script.

dpmayerUSGS commented 1 year ago

Then it seems we also need to add the viking 1+2 PCK dir to the ignore list in the script.

It may be broader than that. One of the things I noticed immediately after the restructuring is that most spacecraft now have their own PCK directory when previously they used the base PCK. At least for Mars orbiters, I don't think the models for Mars in the spacecraft-specific PCK dirs are different than the "base" model for Mars.

Someone probably needs to go mission-by-mission and see if including mission-specific PCKs is justified or not...

KrisBecker commented 1 year ago

Then it seems we also need to add the viking 1+2 PCK dir to the ignore list in the script.

I would encourage you to not exclude files from download to solve a problem like this - at least until documentation is written describing proper construction of kernel directory architectures for missions.

This seems more of a software bug that can be easily fixed to address this problem rather than changing/impacting kernel downloads (they are complicated enough already).

The method documentation seems to indicates it looks for kernel files in the mission PCK directory first and then in the base PCK directory. Its technically not doing this by just checking for the existence of the PCK directory in the mission kernel system. There is no fail-proof way to do this other than checking for the existence of kernel DB files (with assumptions) rather than kernels. That is not what is implemented here. Note it also affects the mission TSPK directories as well.

I suggest to look for kernel DB files in the mission PCK directory and if none found, load from the base PCK directory. Must also check for .conf files as well.

acpaquette commented 11 months ago

After merging #5335 I think this issue can be closed

github-actions[bot] commented 4 months ago

Thank you for your contribution!

Unfortunately, this issue hasn't received much attention lately, so it is labeled as 'stale.'

If no additional action is taken, this issue will be automatically closed in 180 days.

If you want to participate in our support prioritization meetings or be notified when support sprints are happening, you can sign up the support sprint notification emails here.

Read more about our support processs here