PromucFlow_constructor/app/server
sneha122 3c38ca950a
fix: [Perf Improvement] removed unnecessary individual DB calls to plugin and fetched al… (#33712)
## Description

This PR adds:
- Additional instrumentation around `datasources` section of
consolidated API

Datasources fetch process looks as below:
1. It first fetches all datasources belonging to a workspace
2. For each datasources, fetches its datasourceStorages
a. Calls populateHintMessages to populate messages property in
datasourceStorage
     b. Fetches plugin from DB
     c. Gets pluginExecutor from plugin
     d. calls getHintMessages on pluginExecutorMono
3. Marks recently used datasources (sorts all datasources based on
createdAt in desc order and marks top 3 as recent)

This PR adds improvements around point 2.b so that we fetch all plugins
at once in one DB call and then use that to process hint messages for
all datasourceStorages, this avoiding multiple calls to DB


Fixes #33711 
Fixes #33678
_or_  
Fixes `Issue URL`
> [!WARNING]  
> _If no issue exists, please create an issue first, and check with the
maintainers if the issue is valid._

## Automation

/ok-to-test tags="@tag.Datasource"

### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results  -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/9347912473>
> Commit: 15643310489a52ae4067bde8ce4d5b48fa73567f
> Cypress dashboard url: <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9347912473&attempt=1"
target="_blank">Click here!</a>

<!-- end of auto-generated comment: Cypress test results  -->








## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [ ] No

---------

Co-authored-by: “sneha122” <“sneha@appsmith.com”>
2024-06-03 18:03:30 +05:30
..
.run feat: Databricks plugin (#29746) 2023-12-26 10:04:09 +05:30
appsmith-git chore: Switched key factory for RSA to BC as well (#33605) 2024-05-22 15:12:34 +05:30
appsmith-interfaces fix: [Perf Improvement] removed unnecessary individual DB calls to plugin and fetched al… (#33712) 2024-06-03 18:03:30 +05:30
appsmith-plugins fix: encode queryParam value and fix parsing logic for queryParams (#33720) 2024-05-27 14:43:59 +00:00
appsmith-server fix: [Perf Improvement] removed unnecessary individual DB calls to plugin and fetched al… (#33712) 2024-06-03 18:03:30 +05:30
envs test: Enable server tests for the PRs with base PG branch (#33429) 2024-05-22 15:55:20 +05:30
mongo-seed
reactive-caching chore: Introduce changes to minimize git footprint (#32595) 2024-04-16 21:34:24 +05:30
scripts chore: Splitting JS Object body dump vs parsed JS Object update to remove race condition originated bad state (#33124) 2024-05-13 09:38:30 +05:30
.gitignore chore: Removed failed tests file from git (#29602) 2023-12-14 13:02:36 +05:30
build.sh test: Enable server tests for the PRs with base PG branch (#33429) 2024-05-22 15:55:20 +05:30
buildpack-run.sh
pom.xml chore: Introduce changes to minimize git footprint (#32595) 2024-04-16 21:34:24 +05:30
Procfile
README.md
system.properties

Appsmith Server

This is the server-side repository for the Appsmith framework.

For details on setting up your development machine, please refer to this Setup Guide.