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

fix: improve assets discovery worker stability. #597

Merged
merged 2 commits into from
Aug 15, 2024

Conversation

b1ff
Copy link
Contributor

@b1ff b1ff commented Aug 14, 2024

It now does not allow to have parallel update process of the same assets.
It ensures timeouts for all the async processes to avoid long or never ending requests to db or HTTPs.
It ensures that even if one entity process is failed - others will be successfully updated.

It now does not allow to have parallel update process of the same assets.
It ensures timeouts for all the async processes to avoid long or never ending requests to db or HTTPs.
It ensures that even if one entity process is failed - others will be successfully updated.

private async iteration() {
return startBackgroundTransaction(this.tableName, AssetsDiscovery.constructor.name, async () => {
const now = Math.floor(Date.now() / 1000);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I still beleive that enire logic should be changed in order to take in a count
all the previous responses time/timeouts in updatedTime parameter.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Noted

Copy link

Coverage Report

Ilc/server

Commit SHA:b9117f1af173eeadb3d10be1f76e049048f2e439

Test coverage results 🧪

Code coverage diff between base branch:master and head branch: fix/assets-discovery-worker-reliability 
File details
Status File % Stmts % Branch % Funcs % Lines
total 90.05 84.34 88.27 89.96
/codebase/client.js 0 100 100 0
/codebase/client.plugins.manifest.js 0 100 100 0
/codebase/server.plugins.manifest.js 100 100 100 100
/codebase/common/CacheWrapper.js 100 96.42 100 100
/codebase/common/Environment.js 100 100 100 100
/codebase/common/SdkOptions.js 70 66.66 100 70
/codebase/common/UrlProcessor.js 100 100 100 100
/codebase/common/constants.js 0 100 100 0
/codebase/common/i18nCookie.js 100 100 100 100
/codebase/common/localStorage.js 92.59 100 100 92.59
/codebase/common/utils.js 75 46.66 76.92 71.87
/codebase/common/Slot/Slot.js 87.5 100 75 87.5
/codebase/common/Slot/SlotCollection.js 88.88 50 100 88.88
/codebase/common/Slot/SpaSlot.js 0 100 0 0
/codebase/common/Slot/SpaSlotCollection.js 0 0 0 0
/codebase/common/Slot/test/fixture.js 100 100 100 100
/codebase/common/guard/actionTypes.js 100 100 100 100
/codebase/common/guard/errors.js 100 100 100 100
/codebase/common/router/Router.js 98.3 93.54 100 98.27
/codebase/common/router/errors.js 100 100 100 100
/codebase/server/GuardManager.js 100 100 100 100
/codebase/server/app.js 96.77 84.61 100 96.61
/codebase/server/http.d.ts 0 0 0 0
/codebase/server/i18n.js 94 85.18 100 93.02
/codebase/server/index.js 0 100 100 0
/codebase/server/objectToBase64.js 100 100 100 100
/codebase/server/ping.js 66.66 100 33.33 75
/codebase/server/serveStatic.js 40 50 100 40
/codebase/server/server.js 0 0 0 0
/codebase/server/application/application.js 90 75 100 90
/codebase/server/context/context.js 100 100 100 100
/codebase/server/errorHandler/ErrorHandler.js 96.96 68.75 100 96.92
/codebase/server/errorHandler/factory.js 100 100 100 100
/codebase/server/logger/accessLogger.js 89.47 63.63 100 89.47
/codebase/server/logger/enhanceLogger.js 94.73 80 100 94.73
/codebase/server/plugins/PluginsLoader.js 76.92 50 50 76.92
/codebase/server/plugins/pluginManager.js 100 100 100 100
/codebase/server/plugins/reportingPlugin.js 100 75 100 100
/codebase/server/registry/Registry.js 96.94 88.75 100 96.77
/codebase/server/registry/TemplateParser.js 100 100 100 100
/codebase/server/registry/errors.ts 100 100 100 100
/codebase/server/registry/factory.js 100 100 100 100
/codebase/server/registry/isTemplateValid.js 100 100 100 100
/codebase/server/routes/renderTemplateHandlerFactory.ts 31.25 0 33.33 33.33
/codebase/server/routes/wildcardRequestHandlerFactory.ts 91.07 72.22 100 91.07
/codebase/server/services/CanonicalTagService.js 100 50 100 100
/codebase/server/services/CspBuilderService.js 100 92.3 100 100
/codebase/server/services/HrefLangService.js 92.85 70.58 100 92.85
/codebase/server/tailor/configs-injector.js 99.06 88.15 100 99.02
/codebase/server/tailor/error-handler.js 86.95 75 100 86.95
/codebase/server/tailor/errors.js 100 100 100 100
/codebase/server/tailor/factory.js 94.44 0 66.66 94.44
/codebase/server/tailor/fetch-template.js 100 90 100 100
/codebase/server/tailor/filter-headers.js 100 87.5 100 100
/codebase/server/tailor/fragment-hooks.js 94.11 96.15 100 94.11
/codebase/server/tailor/merge-configs.js 100 95.45 100 100
/codebase/server/tailor/parse-override-config.js 100 93.47 100 100
/codebase/server/tailor/process-fragment-response.js 100 94.73 100 100
/codebase/server/tailor/request-fragment.js 91.86 71.42 90 91.86
/codebase/server/tailor/server-router.js 98.59 97.05 100 98.57
/codebase/server/utils/helpers.ts 100 100 100 100
/codebase/server/utils/utils.js 100 100 100 100
/codebase/tests/helpers.js 75 100 78.57 75

Ilc/client

Commit SHA:b9117f1af173eeadb3d10be1f76e049048f2e439

Test coverage results 🧪

Code coverage diff between base branch:master and head branch: fix/assets-discovery-worker-reliability 
File details
Status File % Stmts % Branch % Funcs % Lines
total 91.18 81.8 87.41 91.35
/codebase/client/AsyncBootUp.js 100 75 100 100
/codebase/client/BundleLoader.js 91.83 97.05 78.57 91.66
/codebase/client/ClientRouter.js 95.23 90.52 95.65 95.03
/codebase/client/CssTrackedApp.js 95 85 92.3 96.42
/codebase/client/GuardManager.js 96.15 77.77 100 96.15
/codebase/client/ParcelApi.js 97.05 87.5 100 96.96
/codebase/client/WrapApp.js 97.18 76.47 93.75 98.52
/codebase/client/composeAppSlotPairsToRegister.js 100 100 100 100
/codebase/client/dispatchSynchronizedEvent.js 96.96 100 100 96.55
/codebase/client/i18n.js 90.9 80 90.9 90.47
/codebase/client/utils.js 88 71.42 90 91.66
/codebase/client/ErrorHandlerManager/ErrorHandlerManager.js 100 90 100 100
/codebase/client/TransitionManager/TransitionBlocker.js 93.93 87.5 100 93.93
/codebase/client/TransitionManager/TransitionBlockerList.js 84.21 50 84.61 80
/codebase/client/TransitionManager/TransitionManager.js 87.94 75.92 85.71 87.85
/codebase/client/TransitionManager/GlobalSpinner/GlobalSpinner.js 100 100 100 100
/codebase/client/TransitionManager/ScrollController/ScrollController.js 95.83 100 100 95.83
/codebase/client/TransitionManager/SlotRenderObserver/SlotRenderObserver.js 85.18 79.16 100 84.61
/codebase/client/TransitionManager/errors/CriticalSlotTransitionError.js 100 100 100 100
/codebase/client/TransitionManager/errors/SlotTransitionTimeoutError.js 100 100 100 100
/codebase/client/configuration/IlcConfigRoot.js 84.61 50 92.3 84.61
/codebase/client/configuration/SystemJSImportMap.js 86.66 75 100 86.66
/codebase/client/configuration/getIlcConfigRoot.js 100 100 100 100
/codebase/client/constants/ilcEvents.js 100 100 100 100
/codebase/client/constants/singleSpaEvents.js 100 100 100 100
/codebase/client/errors/BaseError.js 100 80 100 100
/codebase/client/errors/CorsError.js 100 100 100 100
/codebase/client/errors/CriticalFragmentError.js 100 100 100 100
/codebase/client/errors/CriticalInternalError.js 100 100 100 100
/codebase/client/errors/CriticalRuntimeError.js 100 100 100 100
/codebase/client/errors/FetchTemplateError.js 100 100 100 100
/codebase/client/errors/FragmentError.js 100 100 100 100
/codebase/client/errors/InternalError.js 100 100 100 100
/codebase/client/errors/NavigationError.js 100 100 100 100
/codebase/client/errors/RuntimeError.js 100 100 100 100
/codebase/client/errors/UnhandledError.js 100 100 100 100
/codebase/client/errors/index.js 100 100 100 100
/codebase/client/navigationEvents/index.js 100 100 100 100
/codebase/client/navigationEvents/setupEvents.js 87.8 83.33 94.11 87.5
/codebase/common/CacheWrapper.js 96.72 95.83 100 96.55
/codebase/common/Environment.js 100 100 100 100
/codebase/common/SdkOptions.js 12.5 0 0 12.5
/codebase/common/UrlProcessor.js 100 100 100 100
/codebase/common/constants.js 100 100 100 100
/codebase/common/i18nCookie.js 100 100 100 100
/codebase/common/localStorage.js 48.14 0 11.11 48.14
/codebase/common/utils.js 50 20 46.15 50
/codebase/common/Slot/Slot.js 83.33 100 75 83.33
/codebase/common/Slot/SlotCollection.js 87.5 50 100 87.5
/codebase/common/Slot/SpaSlot.js 92.3 100 83.33 92.3
/codebase/common/Slot/SpaSlotCollection.js 88.88 100 66.66 94.11
/codebase/common/Slot/test/fixture.js 100 100 100 100
/codebase/common/guard/actionTypes.js 100 100 100 100
/codebase/common/guard/errors.js 100 100 100 100
/codebase/common/router/Router.js 98.27 93.54 100 98.27
/codebase/common/router/errors.js 100 100 100 100

Registry

Commit SHA:b9117f1af173eeadb3d10be1f76e049048f2e439

Test coverage results 🧪

Code coverage diff between base branch:master and head branch: fix/assets-discovery-worker-reliability 
File details
Status File % Stmts % Branch % Funcs % Lines
🟢 total 82.35 (1.02) 64.19 (0.56) 71.4 (1.59) 82.6 (1.06)
/codebase/newrelic.js 100 50 100 100
/codebase/server.plugins.manifest.ts 100 100 100 100
/codebase/client/babel.config.js 0 100 100 0
/codebase/client/webpack.config.js 0 0 100 0
/codebase/client/src/authProvider.js 0 0 0 0
/codebase/client/src/constants.js 0 100 100 0
/codebase/client/src/dataProvider.js 0 0 0 0
/codebase/client/src/httpClient.js 0 0 0 0
/codebase/client/src/validators.js 0 0 0 0
/codebase/client/src/Localization/en.js 0 0 0 0
/codebase/client/src/Localization/index.js 0 0 0 0
/codebase/client/src/appRoutes/dataTransform.js 0 0 0 0
/codebase/client/src/appRoutes/index.js 0 0 0 0
/codebase/client/src/apps/dataTransform.js 0 0 0 0
/codebase/client/src/apps/index.js 0 0 0 0
/codebase/client/src/authEntities/dataTransform.js 0 0 0 0
/codebase/client/src/authEntities/index.js 0 0 0 0
/codebase/client/src/components/index.js 0 0 0 0
/codebase/client/src/routerDomains/dataTransform.js 0 0 0 0
/codebase/client/src/routerDomains/index.js 0 0 0 0
/codebase/client/src/settings/dataTransform.js 0 0 0 0
/codebase/client/src/settings/index.js 0 0 0 0
/codebase/client/src/settings/hooks/useQueryParams.js 0 0 0 0
/codebase/client/src/settings/hooks/useSettingsEditController.js 0 0 0 0
/codebase/client/src/sharedLibs/dataTransform.js 0 0 0 0
/codebase/client/src/sharedLibs/index.js 0 0 0 0
/codebase/client/src/sharedProps/dataTransform.js 0 0 0 0
/codebase/client/src/sharedProps/index.js 0 0 0 0
/codebase/client/src/templates/dataTransform.js 0 100 0 0
/codebase/client/src/templates/index.js 0 0 0 0
/codebase/client/src/utils/json.js 0 0 0 0
/codebase/client/src/versioning/dataTransform.js 0 0 0 0
/codebase/client/src/versioning/index.js 0 0 0 0
/codebase/lde/oauth-server.ts 0 100 0 0
/codebase/server/app.ts 100 60 100 100
/codebase/server/index.ts 0 100 0 0
/codebase/server/runnerAssetsDiscovery.ts 0 0 0 0
/codebase/server/server.ts 0 0 0 0
/codebase/server/appRoutes/interfaces/index.ts 96.42 87.5 100 96.42
/codebase/server/appRoutes/routes/createAppRoute.ts 97.22 100 100 97.22
/codebase/server/appRoutes/routes/deleteAppRoute.ts 100 100 100 100
/codebase/server/appRoutes/routes/getAppRoute.ts 100 100 100 100
/codebase/server/appRoutes/routes/getAppRoutes.ts 91.66 70 100 91.66
/codebase/server/appRoutes/routes/index.ts 100 100 100 100
/codebase/server/appRoutes/routes/routesRepository.ts 100 100 100 100
/codebase/server/appRoutes/routes/updateAppRoute.ts 100 100 100 100
/codebase/server/appRoutes/services/prepareAppRoute.ts 100 71.42 100 100
/codebase/server/appRoutes/services/transformSpecialRoutes.ts 100 100 100 100
/codebase/server/apps/interfaces/index.ts 87.5 83.33 66.66 87.5
/codebase/server/apps/routes/createApp.ts 100 100 100 100
/codebase/server/apps/routes/deleteApp.ts 100 100 100 100
/codebase/server/apps/routes/getApp.ts 100 100 100 100
/codebase/server/apps/routes/getApps.ts 81.81 50 100 81.81
/codebase/server/apps/routes/index.ts 100 100 100 100
/codebase/server/apps/routes/updateApp.ts 96.29 87.5 100 96.29
/codebase/server/auth/index.ts 97.56 50 100 97.56
/codebase/server/auth/handlers/availableMethodsHandler.ts 33.33 0 50 33.33
/codebase/server/auth/handlers/localLoginHandler.ts 100 100 100 100
/codebase/server/auth/handlers/logoutHandler.ts 75 50 100 81.81
/codebase/server/auth/handlers/openIdAuthCallbackHandler.ts 88.88 66.66 100 88.88
/codebase/server/auth/middleware/bearerAuthenticationMiddleware.ts 100 100 100 100
/codebase/server/auth/middleware/initializeOpenIdMiddleware.ts 92.85 66.66 100 92.85
/codebase/server/auth/middleware/openIdAuthMiddleware.ts 0 0 0 0
/codebase/server/auth/middleware/rolesMiddleware.ts 100 87.5 100 100
/codebase/server/auth/middleware/validateSessionMiddleware.ts 100 100 100 100
/codebase/server/auth/services/AuthService.ts 100 100 100 100
/codebase/server/auth/services/OpenIdService.ts 100 100 100 100
/codebase/server/auth/strategies/bearer.ts 86.66 83.33 100 86.66
/codebase/server/auth/strategies/local.ts 80 50 100 80
/codebase/server/auth/strategies/oidc.ts 96.07 85 100 95.91
/codebase/server/authEntities/interfaces.ts 100 100 100 100
/codebase/server/authEntities/routes/create.ts 100 50 100 100
/codebase/server/authEntities/routes/deleteRoute.ts 100 100 100 100
/codebase/server/authEntities/routes/get.ts 100 100 100 100
/codebase/server/authEntities/routes/getAll.ts 100 100 100 100
/codebase/server/authEntities/routes/index.ts 100 100 100 100
/codebase/server/authEntities/routes/update.ts 100 75 100 100
/codebase/server/common/services/json.ts 81.81 82.75 91.66 80
/codebase/server/common/services/preProcessResponse.ts 85.71 100 0 85.71
/codebase/server/common/services/validateRequest.ts 92 83.33 100 91.66
✨ 🆕 /codebase/server/common/services/assets/AssetsDiscovery.ts 90.56 62.5 92.85 90.56
/codebase/server/common/services/assets/AssetsDiscoveryProcessor.ts 70.58 50 75 70.58
🟢 /codebase/server/common/services/assets/AssetsDiscoveryWhiteLists.ts 100 (100) 100 (0) 100 (0) 100 (100)
/codebase/server/common/services/assets/AssetsManifestReader.ts 100 100 100 100
/codebase/server/common/services/assets/AssetsValidator.ts 100 100 100 100
/codebase/server/common/services/assets/assetsManifestProcessor.ts 100 100 100 100
/codebase/server/common/services/assets/errors/AssetsManifestError.ts 100 100 100 100
/codebase/server/common/services/entries/ApplicationEntry.ts 93.47 78.57 100 93.47
/codebase/server/common/services/entries/Entry.ts 0 0 0 0
/codebase/server/common/services/entries/EntryFactory.ts 95 87.5 100 95
/codebase/server/common/services/entries/SharedLibEntry.ts 97.14 87.5 100 97.14
/codebase/server/common/services/entries/error/EntryError.ts 100 100 100 100
/codebase/server/common/services/entries/error/IncorrectEntryError.ts 100 100 100 100
/codebase/server/common/services/entries/error/NotFoundApplicationError.ts 100 100 100 100
/codebase/server/common/services/entries/error/NotFoundFqrnError.ts 100 100 100 100
/codebase/server/common/services/entries/error/NotFoundSharedLibraryError.ts 100 100 100 100
/codebase/server/common/services/entries/error/ValidationFqrnError.ts 100 100 100 100
/codebase/server/db/cascadeTruncate.ts 71.42 50 100 71.42
/codebase/server/db/index.ts 100 83.33 100 100
/codebase/server/db/logger.ts 63.63 50 50 60
/codebase/server/db/range.ts 100 100 100 100
/codebase/server/db/structure.ts 100 100 100 100
/codebase/server/db/syncSequence.ts 100 100 100 100
/codebase/server/db/versioning.ts 93.33 50 100 93.33
/codebase/server/entries/entries.ts 87.09 60 100 87.09
/codebase/server/errorHandler/httpErrors.ts 100 100 100 100
/codebase/server/errorHandler/index.ts 100 100 100 100
/codebase/server/errorHandler/noticeError.ts 100 0 100 100
/codebase/server/middleware/context.ts 100 75 100 100
/codebase/server/middleware/userContext.ts 100 100 100 100
/codebase/server/migrations/20191016185102_apps.ts 100 100 66.66 100
/codebase/server/migrations/20191017131220_templates.ts 100 100 66.66 100
/codebase/server/migrations/20191017131749_routes.ts 100 100 66.66 100
/codebase/server/migrations/20191017144455_route_slots.ts 100 100 66.66 100
/codebase/server/migrations/20200113141956_apps.ts 66.66 100 50 66.66
/codebase/server/migrations/20200113142437_route_slots.ts 66.66 100 50 66.66
/codebase/server/migrations/20200120162838_apps_config_selector.ts 66.66 100 50 66.66
/codebase/server/migrations/20200121110723_shared_props.ts 83.33 100 66.66 83.33
/codebase/server/migrations/20200409184919_auth_entitites.ts 100 100 66.66 100
/codebase/server/migrations/20200409190157_auth_entitites_default.ts 100 100 50 100
/codebase/server/migrations/20200410180130_sessions.ts 88.88 50 66.66 88.88
/codebase/server/migrations/20200518134531_apps_initProps_removal.ts 66.66 100 50 66.66
/codebase/server/migrations/20200729141256_settings.ts 100 100 66.66 100
/codebase/server/migrations/20201012152003_settings_meta.ts 58.33 100 50 58.33
/codebase/server/migrations/20201013140633_settings_default.ts 90.9 50 75 90.9
/codebase/server/migrations/20201027180112_settings_globalSpinner.ts 80 100 50 80
/codebase/server/migrations/20201028142200_settings_i18n.ts 80 100 50 80
/codebase/server/migrations/20201029122727_settings_AuthOpenIdUniqueIdentifierClaimName.ts 80 100 50 80
/codebase/server/migrations/20201105155522_versioning.ts 90.9 100 66.66 90.9
/codebase/server/migrations/20201130141801_i18n_enabled_by_default.ts 80 100 50 80
/codebase/server/migrations/20201228201314_route_meta.ts 66.66 100 50 66.66
/codebase/server/migrations/20210125185210_app_wrapper_kind.ts 66.66 25 75 66.66
/codebase/server/migrations/20210125185211_apps_wrappedWith.ts 66.66 100 50 66.66
/codebase/server/migrations/20210219174348_settings_overrideConfigTrustedOrigins.ts 80 100 50 80
/codebase/server/migrations/20210226191151_apps_ssrProps.ts 66.66 100 50 66.66
/codebase/server/migrations/20210226191205_shared_props_ssrProps.ts 66.66 100 50 66.66
/codebase/server/migrations/20210405164831_router_domains.ts 85.71 100 66.66 85.71
/codebase/server/migrations/20210405182655_routes_domainId.ts 63.46 37.5 59.09 63.46
/codebase/server/migrations/20210426163602_routes_orderPosIsNullable.ts 66 37.5 54.16 66
/codebase/server/migrations/20210430154258_routes_uniqfromSpecialRoleToRoute.ts 62.5 100 50 62.5
/codebase/server/migrations/20210430154639_routes_moveSpecialRolesToRoute.ts 35.29 0 37.5 35.29
/codebase/server/migrations/20210430155514_routes_removeColumnSpecialRole.ts 66.66 100 50 66.66
/codebase/server/migrations/20210505151225_routes_domainIdIdxble.ts 46.15 33.33 33.33 46.15
/codebase/server/migrations/20210505181754_routes_orderPos_unique_per_domain.ts 62.5 100 50 62.5
/codebase/server/migrations/20210505182004_routes_route_unique_per_domain.ts 62.5 100 50 62.5
/codebase/server/migrations/20210505182425_old_tbls_cleanup.ts 80 25 50 80
/codebase/server/migrations/20210521125202_routes_drop_unique_route.ts 66.66 100 50 66.66
/codebase/server/migrations/20210607160910_apps_discoveryMetadata.ts 66.66 100 50 66.66
/codebase/server/migrations/20210607161242_apps_adminNotes.ts 66.66 100 50 66.66
/codebase/server/migrations/20210625150840_roles_userToReadonly.ts 50 25 50 50
/codebase/server/migrations/20210701183133_auth_entity_readonly.ts 80 100 50 80
/codebase/server/migrations/20210826144904_shared_libs.ts 88.88 100 66.66 88.88
/codebase/server/migrations/20220121115756_settings_onPropsUpdate.ts 80 100 50 80
/codebase/server/migrations/20220315155008_increase-template-size.ts 66.66 100 50 66.66
/codebase/server/migrations/20220316133143_versioning-text-update.ts 62.5 100 50 62.5
/codebase/server/migrations/20220323123155_add-locale-to-template.ts 88.88 100 66.66 88.88
/codebase/server/migrations/20220520083801_apps_enforceDomain.ts 66.66 100 50 66.66
/codebase/server/migrations/20220815164948_l20nManifest.ts 66.66 100 50 66.66
/codebase/server/migrations/20220819204836_rename-use-l10n.ts 66.66 100 50 66.66
/codebase/server/migrations/20220928161155_shared-lib-add-localization.ts 66.66 100 50 66.66
/codebase/server/migrations/20221118164122_add_csp_settings.ts 80 100 50 80
/codebase/server/migrations/20221123163817_csp-available-host-for-local.ts 80 100 50 80
/codebase/server/migrations/20221201191407_csp_enable_scrict_mode.ts 100 100 50 100
/codebase/server/migrations/20230303174003_settings-add-primary-key.ts 66.66 100 50 66.66
/codebase/server/migrations/20230303175443_settings-domain-value-table.ts 90 100 66.66 90
/codebase/server/migrations/20230703130802_remove-spa-bundle-constraint.ts 66.66 100 50 66.66
/codebase/server/migrations/20231003103643_routes_meta.ts 44.44 25 25 44.44
/codebase/server/migrations/20240315141721_pg_versioning_idx.ts 57.14 25 50 57.14
/codebase/server/public/interfaces.ts 0 0 0 0
/codebase/server/public/routes/appDiscovery.ts 100 100 100 100
/codebase/server/public/routes/index.ts 100 100 100 100
/codebase/server/routerDomains/interfaces/index.ts 90.9 75 100 90.9
/codebase/server/routerDomains/routes/createRouterDomains.ts 100 100 100 100
/codebase/server/routerDomains/routes/deleteRouterDomains.ts 94.11 100 100 94.11
/codebase/server/routerDomains/routes/getAllRouterDomains.ts 100 100 100 100
/codebase/server/routerDomains/routes/getRouterDomains.ts 100 100 100 100
/codebase/server/routerDomains/routes/index.ts 100 100 100 100
/codebase/server/routerDomains/routes/updateRouterDomains.ts 100 100 100 100
/codebase/server/routes/config.ts 98.48 57.89 92.3 98.36
/codebase/server/routes/routes.ts 100 100 100 100
/codebase/server/seeds/00_cleanup.ts 81.81 50 100 81.81
/codebase/server/seeds/01_apps.ts 100 100 100 100
/codebase/server/seeds/02_templates.ts 100 100 100 100
/codebase/server/seeds/03_routerDomains.ts 100 100 100 100
/codebase/server/seeds/04_routes.ts 100 100 100 100
/codebase/server/seeds/05_route_slots.ts 100 100 100 100
/codebase/server/seeds/06_settings.ts 90.9 50 100 90.9
/codebase/server/seeds/07_rootPwd.ts 83.33 50 100 83.33
/codebase/server/settings/interfaces/cspSchema.ts 100 100 100 100
/codebase/server/settings/interfaces/index.ts 100 100 100 100
/codebase/server/settings/routes/createSetting.ts 100 100 100 100
/codebase/server/settings/routes/deleteDomainSetting.ts 100 100 100 100
/codebase/server/settings/routes/getSetting.ts 80 50 100 80
/codebase/server/settings/routes/getSettings.ts 100 77.77 100 100
/codebase/server/settings/routes/index.ts 100 100 100 100
/codebase/server/settings/routes/updateSetting.ts 83.33 50 100 83.33
/codebase/server/settings/services/SettingsService.ts 79.24 72.97 84.61 86.31
/codebase/server/settings/services/preProcessResponse.ts 92.85 100 50 92.85
/codebase/server/sharedLibs/interfaces/index.ts 100 100 100 100
/codebase/server/sharedLibs/routes/createSharedLib.ts 95 75 100 95
/codebase/server/sharedLibs/routes/deleteSharedLib.ts 100 100 100 100
/codebase/server/sharedLibs/routes/getSharedLib.ts 100 100 100 100
/codebase/server/sharedLibs/routes/getSharedLibs.ts 100 100 100 100
/codebase/server/sharedLibs/routes/index.ts 100 100 100 100
/codebase/server/sharedLibs/routes/updateSharedLib.ts 92.59 75 100 92.59
/codebase/server/sharedProps/interfaces/index.ts 100 100 100 100
/codebase/server/sharedProps/routes/createSharedProps.ts 100 100 100 100
/codebase/server/sharedProps/routes/deleteSharedProps.ts 100 100 100 100
/codebase/server/sharedProps/routes/getAllSharedProps.ts 100 100 100 100
/codebase/server/sharedProps/routes/getSharedProps.ts 100 100 100 100
/codebase/server/sharedProps/routes/index.ts 100 100 100 100
/codebase/server/sharedProps/routes/updateSharedProps.ts 100 100 100 100
/codebase/server/templates/errors.ts 100 100 100 100
/codebase/server/templates/interfaces/index.ts 0 0 0 0
/codebase/server/templates/routes/createTemplate.ts 96 100 100 96
/codebase/server/templates/routes/deleteTemplate.ts 100 100 100 100
/codebase/server/templates/routes/getRenderedTemplate.ts 95.83 90 100 95.83
/codebase/server/templates/routes/getTemplate.ts 100 100 100 100
/codebase/server/templates/routes/getTemplates.ts 100 100 100 100
/codebase/server/templates/routes/index.ts 100 100 100 100
/codebase/server/templates/routes/updateTemplate.ts 95.65 83.33 100 95.65
/codebase/server/templates/routes/validation.ts 100 100 100 100
/codebase/server/templates/services/parseLinkHeader.ts 100 100 100 100
/codebase/server/templates/services/renderTemplate.ts 97.33 93.33 100 97.1
/codebase/server/templates/services/templatesRepository.ts 100 100 100 100
/codebase/server/templates/services/resources/Attributes.ts 100 100 100 100
/codebase/server/templates/services/resources/Resource.ts 100 100 100 100
/codebase/server/templates/services/resources/ResourceLinkParser.ts 100 100 100 100
/codebase/server/templates/services/resources/ResourcePreload.ts 100 100 100 100
/codebase/server/templates/services/resources/ResourceScript.ts 100 100 100 100
/codebase/server/templates/services/resources/ResourceStylesheet.ts 100 100 100 100
/codebase/server/templates/services/resources/buildAttributes.ts 100 100 100 100
/codebase/server/templates/services/resources/filterObject.ts 100 100 100 100
/codebase/server/util/TemplateParser.ts 100 100 100 100
/codebase/server/util/TypedMap.ts 100 100 100 100
✨ 🆕 /codebase/server/util/axiosErrorTransformer.ts 100 22.22 100 100
/codebase/server/util/db.ts 100 66.66 100 100
/codebase/server/util/express-promise.ts 80 81.81 100 80
/codebase/server/util/helpers.ts 93.75 88.88 100 92.85
/codebase/server/util/hmac.ts 100 100 100 100
/codebase/server/util/isTemplateValid.ts 87.5 75 100 87.5
/codebase/server/util/logger.ts 73.68 87.5 40 72.97
/codebase/server/util/ping.ts 50 100 0 50
/codebase/server/util/pluginManager.ts 88.88 75 100 88.88
/codebase/server/versioning/config.ts 100 100 100 100
/codebase/server/versioning/errors.ts 100 100 100 100
/codebase/server/versioning/interfaces.ts 100 100 100 100
/codebase/server/versioning/routes/getVersions.ts 86.66 66.66 100 85.71
/codebase/server/versioning/routes/index.ts 100 100 100 100
/codebase/server/versioning/routes/revertVersion.ts 53.33 0 100 53.33
/codebase/server/versioning/services/Versioning.ts 76.47 74 84.61 78.04
/codebase/tests/common.ts 91.66 50 100 88.88
/codebase/tests/data/auth/keys.ts 100 100 100 100
/codebase/tests/data/auth/rsa.ts 100 100 100 100
/codebase/tests/data/auth/token-response.ts 100 100 100 100
/codebase/tests/utils/console.ts 100 100 100 100
✨ 🆕 /codebase/tests/utils/wait.ts 100 100 100 100
/codebase/tests/utils/withSetting.ts 100 100 100 100
/codebase/typings/User.ts 0 0 0 0
/codebase/typings/index.d.ts 0 0 0 0
/codebase/typings/knex/index.d.ts 0 0 0 0

() =>
this.iteration().catch((err) => {
const runLoop = () => {
this.timerId = setTimeout(async () => {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is the idea behind adding recursion instead of setInterval ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

setInterval can run processes in paralell, because if process takes more time than interval - interval won't wait completion before next interval is started, that is why it can lead to sum resources for all parallel processes

@b1ff b1ff merged commit d322a8b into master Aug 15, 2024
15 checks passed
@b1ff b1ff deleted the fix/assets-discovery-worker-reliability branch August 15, 2024 11:29
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.

4 participants