elixir-cloud-aai / proTES

Proxy service for injecting middleware into GA4GH TES requests
Apache License 2.0
5 stars 6 forks source link

build: update FOCA #172

Open athith-g opened 3 months ago

athith-g commented 3 months ago

Addresses #171. Version 4.2 is the latest version of the image that runs without errors.

jvkersch commented 3 months ago

@athith-g What errors do you encounter when you try to update to the latest version of MongoDB? Version 4.2 is also quite old.

athith-g commented 3 months ago

@athith-g What errors do you encounter when you try to update to the latest version of MongoDB? Version 4.2 is also quite old.

MongoDB versions 4.4 - 7.0 cause the same error in the protes and protes-worker containers: pymongo.errors.OperationFailure: ns not found taskStore.tasks

protes-worker traceback:

Screenshot 2024-05-11 at 12 25 58 PM

protes traceback:

Screenshot 2024-05-11 at 12 27 19 PM
uniqueg commented 3 months ago

@athith-g: Did you try to upgrade pymongo? FOCA currently pins it to 3.10.1 but the latest version is 4.7.2. Unless .drop_indexes() was somehow deprecated in MongoDB, I don't think that this is an issue in FOCA or proTES itself, but rather an incompatibility between the used Mongo client and server versions. If a newer pymongo version works with the more recent MongoDB versino and doesn't cause any other issues, I think we can upgrade it in FOCA.

athith-g commented 3 months ago

@uniqueg I updated the pymongo version to 4.7.2 and the pymongo errors discussed previously were resolved. The integration tests fail because Collections.insert() is removed in pymongo 4.0+.

Should I make a PR on FOCA to update the pymongo version and then push the new changes (changing insert() to insert_one() and using mongoDB version 7.0) to this branch?

uniqueg commented 3 months ago

@uniqueg I updated the pymongo version to 4.7.2 and the pymongo errors discussed previously were resolved. The integration tests fail because Collections.insert() is removed in pymongo 4.0+.

Should I make a PR on FOCA to update the pymongo version and then push the new changes (changing insert() to insert_one() and using mongoDB version 7.0) to this branch?

Yes please 🙌

uniqueg commented 3 months ago

I guess we will need to fix FOCA first, then merge your PR on the FOCA repo, create a release and then I think we need to update the FOCA version in this repo (and during that PR upgrade the MongoDB version in the docker-compose.yml).

So I suppose this is blocked for now, but I have already renamed the PR.