Skip to content

fix: added db retry mechanism to mcpgateway/db.py#226

Merged
crivetimihai merged 3 commits intoIBM:mainfrom
reevebarreto:fix/db-retry-in-db-py
Jul 3, 2025
Merged

fix: added db retry mechanism to mcpgateway/db.py#226
crivetimihai merged 3 commits intoIBM:mainfrom
reevebarreto:fix/db-retry-in-db-py

Conversation

@reevebarreto
Copy link
Copy Markdown
Collaborator

✨ Feature / Enhancement PR

🔗 Epic / Issue

Closes #179
[Feature Request]: Configurable Connection Retries for DB and Redis


🚀 Summary (1–2 sentences)

Adds a configurable database connection retry mechanism to mcpgateway/db.py. It ensures that the database initialisation waits and retries according to environment variables before failing, improving startup resilience in containerized deployments.


🧪 Checks

  • make lint passes
  • make test passes

📓 Notes (optional)

  • Implements retry logic in the database initialisation script (db.py) with configurable retry count and interval via environment variables.
  • Logs each retry attempt and aborts after exhausting retries with a clear error message.
  • Complements existing retry logic added in main.py.
  • Tested with a non-running DB to verify retry behaviour and failure exit.

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>
Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>
@crivetimihai
Copy link
Copy Markdown
Member

Passed:

  • make test
  • make flake8
  • make smoketest
  • make compose-down compose-rm compose-up

Looks good, merging.

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
@crivetimihai crivetimihai merged commit 664541c into IBM:main Jul 3, 2025
21 of 22 checks passed
vk-playground pushed a commit to vk-playground/mcp-context-forge that referenced this pull request Sep 14, 2025
* fix: added db retry mechanism to mcpgateway/db.py

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>

* cleaned code to a one liner

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>

* Flake8 fix

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

---------

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>
Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
vk-playground pushed a commit to vk-playground/mcp-context-forge that referenced this pull request Sep 14, 2025
* fix: added db retry mechanism to mcpgateway/db.py

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>

* cleaned code to a one liner

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>

* Flake8 fix

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

---------

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>
Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
vk-playground pushed a commit to vk-playground/mcp-context-forge that referenced this pull request Sep 16, 2025
* fix: added db retry mechanism to mcpgateway/db.py

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>

* cleaned code to a one liner

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>

* Flake8 fix

Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>

---------

Signed-off-by: reevebarreto <reevemarcbarreto@gmail.com>
Signed-off-by: Mihai Criveti <crivetimihai@gmail.com>
Co-authored-by: Mihai Criveti <crivetimihai@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[FEATURE][CONFIG]: Configurable connection retries for DB and Redis

2 participants