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

[server] MultipleObjectsReturned at /timeside/api/processors/aubio_pitch/ #179

Open
gnuletik opened this issue Apr 10, 2020 · 2 comments
Open
Assignees
Labels
Milestone

Comments

@gnuletik
Copy link
Collaborator

gnuletik commented Apr 10, 2020

https://sandbox.wasabi.telemeta.org/timeside/api/processors/aubio_pitch/

get() returned more than one Processor -- it returned 2!
@gnuletik gnuletik added the bug label Apr 10, 2020
@Tointoin Tointoin added this to the 1.0 milestone Apr 17, 2020
@Tointoin
Copy link
Collaborator

Tointoin commented Apr 20, 2020

Hi @gnuletik and @yomguy. This bug has been caused by version change of Aubio pitch in this commit.

I indeed set aubio_pitch version to 0.4.7 when I added version field on models.Processor without being sure of the write one to give (depend on witch aubio algo/decoding version we use, right?)

@yomguy has corrected it to 0.4.6 in aubio_pitch.pyplugin, thanks for that.

However, from the point of view of sandbox: a new plugins is now available with same processor id (i.e. pid) but a different version.

I deleted the former aubio_pitch 0.4.7 processor in sandbox's DB as it does not refer to a real plugin anymore so it temporary fixes the bug.

@yomguy, what is the best short term and the best preferable long term solutions to manage processors unicity regarding there pid and version:

  • does 2 processor with same pid but different version are allowed to live together? (if yes, a reliable plugin file name should be specified E.g: aubio_pitch_0.4.6.py)
  • should models.Processor pid and version be unique_together and at then all Processors.objects.get(pid=...) should be added a version (or replace them with a Processors.get_last_version(pid=...) with a version format spec)
  • about Processors URL as discuss in this issue: should they include version:
    E.g.: /timeside/api/processors/aubio_pitch/0.4.6/
  • while app is run, all plugins that does not have a processor with same pid and version will be created. Should any current processor that does not refer anymore to an available plugin be deleted?

@Tointoin
Copy link
Collaborator

see #183 for Processor version specification.

@yomguy yomguy modified the milestones: 1.0, 1.3 Apr 19, 2023
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

3 participants