Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Question/Request: offline (custom) databases #42

Closed
rickhelmus opened this issue Jun 5, 2021 · 4 comments
Closed

Question/Request: offline (custom) databases #42

rickhelmus opened this issue Jun 5, 2021 · 4 comments
Labels

Comments

@rickhelmus
Copy link

Hi guys,

I was wondering if it is possible to use an offline database with SIRIUS/CSI:FingerID? I tried a test DB created with the custom-db tool, but it seems data is still fetched from the servers.

Background: I am running SIRIUS on CI for automated patRoon tests. It may happen that connection issues make tests fail or slow down considerably, and it doesn't 'feel' very nice either that CI is abusing the CSI servers once in a while... With MetFrag I got around this by using local CSV databases, so I was hoping to do something similar for SIRIUS.

Thanks,
Rick

@mfleisch
Copy link
Contributor

mfleisch commented Jun 5, 2021

Hey Rick,
the database is not the main issue here, since it is cached locally and if you would transfer the cache to your test instance, SIRIUS would not fetch the candidates from the Server again.

However, it still checks whether the db is valid. But, more important, the fingerprint predictions are done on the server side anyways.

One solution would be some kind of Mock/Test mode that uses precomputed results instead of querying the server.

One possibility could be starting SIRIUS with fully computed project-space without --recompute flag. this would execute all tools but skip the computation for each compound.

We just need to ensure that no "connection check" prevents the execution which should currently be the case I guess.

I will have a look if something like that is possible with a moderate amount of work.

Would that fit your needs?

@rickhelmus
Copy link
Author

Hi Markus,

I think this would be a good solution. Ideally the precomputed results would be created easily (eg to update to new SIRIUS versions), transferable between system environments (eg to CI) and work with batch queries. I think this approach would tick all those boxes.

Thanks,
Rick

@mfleisch
Copy link
Contributor

mfleisch commented Jul 6, 2021

With version 4.9.0 you should be able to run an offline test on a precomputed project-space. You need to use the hidden developer parameter --no-project-check to skip the check of the fingerprint definitions.

The workflow would be like this:

  1. create precomputed project
    sirius -i <testInput.ms> -o <precomputed-project> sirius fingerid canopus

  2. Test command
    sirius --no-project-check -o <precomputed-project> sirius fingerid canopus

The second command should run without connection to our servers.

@mfleisch
Copy link
Contributor

mfleisch commented Jul 6, 2021

fixed with version 4.9.0

Feel free to reopen if the issue remains unresolved.

@mfleisch mfleisch closed this as completed Jul 6, 2021
@mfleisch mfleisch added the fixed label Jul 6, 2021
rickhelmus added a commit to rickhelmus/patRoon that referenced this issue May 17, 2022
…rs (see sirius-ms/sirius#42).

* Added projectPath arguments to fix the output directory for SIRIUS.
* Added dryRun option to do a dry run with SIRIUS (after the project has been initialized)
* Make SIRIUS output names reproducible
* Utility function to update SIRIUS project reference directory for tests
rickhelmus added a commit to rickhelmus/patRoon that referenced this issue May 25, 2022
…rs (see sirius-ms/sirius#42).

* Added projectPath arguments to fix the output directory for SIRIUS.
* Added dryRun option to do a dry run with SIRIUS (after the project has been initialized)
* Make SIRIUS output names reproducible
* Utility function to update SIRIUS project reference directory for tests
mfleisch pushed a commit that referenced this issue Mar 8, 2024
Resolve "Transform GUI to Nightsky API"

Closes #81, #123, #87, #84, #83, #60, #44, #42, #27, #16, #13, and #11

See merge request bright-giant/sirius/sirius-frontend!26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants