Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
chore: Add empty policyMap when policies are empty or null to fix NPE (…
…#36374) ## Description We have quite a lot of objects in the DB for which we expect the policies should be present but that's not the case. This is causing issues when we migrated to using `policyMap` where we didn't create empty map if the policies object is empty expecting all such entries are anyway not accessible to the user. We can query mongodb to find such entries: ``` db .collectionName .find({ policies: [], deletedAt: {$exists: false} }) ``` We expect collections like plugins, customJSlibs etc to have empty values for policies and hence policyMap was not migrated for this, but we are seeing the same pattern for other collections as well like newAction, workspace etc. which is why we are seeing NPEs. With this PR we intend to remove this NPE by adding a empty map to policyMap field. With prod dump this is taking 340sec so we need to plan accordingly. /test Sanity ### 🔍 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/10903942123> > Commit: c1573a6 > <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=10903942123&attempt=1" target="_blank">Cypress dashboard</a>. > Tags: `@tag.Sanity` > Spec: > <hr>Tue, 17 Sep 2024 13:41:53 UTC <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [x] No <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Implemented a database migration to ensure all relevant documents have a defined policy map, improving data consistency. - **Bug Fixes** - Addressed issues where documents had null or missing policy maps by updating them to an empty policy map. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
- Loading branch information