@ytsaurus/ui 1.13.0 → 1.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cjs/shared/yt-types.d.ts +6 -0
- package/build/cjs/ui/common/yt-api-init.js +3 -1
- package/build/cjs/ui/common/yt-api-init.js.map +1 -1
- package/build/cjs/ui/constants/scheduling/index.d.ts +6 -7
- package/build/cjs/ui/constants/scheduling/index.js +7 -8
- package/build/cjs/ui/constants/scheduling/index.js.map +1 -1
- package/build/cjs/ui/pages/components/tabs/node/NodePage.js +1 -4
- package/build/cjs/ui/pages/components/tabs/node/NodePage.js.map +1 -1
- package/build/cjs/ui/pages/components/tabs/nodes/NodeCard/NodeCard.js +12 -16
- package/build/cjs/ui/pages/components/tabs/nodes/NodeCard/NodeCard.js.map +1 -1
- package/build/cjs/ui/pages/operations/OperationDetail/tabs/details/Runtime/Runtime.js +2 -5
- package/build/cjs/ui/pages/operations/OperationDetail/tabs/details/Runtime/Runtime.js.map +1 -1
- package/build/cjs/ui/pages/operations/OperationsList/OperationsListToolbar/OperationsListToolbar.js +1 -5
- package/build/cjs/ui/pages/operations/OperationsList/OperationsListToolbar/OperationsListToolbar.js.map +1 -1
- package/build/cjs/ui/pages/operations/selectors.d.ts +8 -7
- package/build/cjs/ui/pages/query-tracker/module/queries_list/selectors.d.ts +32 -28
- package/build/cjs/ui/pages/query-tracker/module/query/selectors.d.ts +8 -7
- package/build/cjs/ui/pages/query-tracker/module/settings/selector.d.ts +8 -7
- package/build/cjs/ui/pages/scheduling/Alerts.js +1 -1
- package/build/cjs/ui/pages/scheduling/Alerts.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/Content.js +2 -2
- package/build/cjs/ui/pages/scheduling/Content/Content.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/{SchedulingOperationsUpdater.d.ts → SchedulingExpandedPoolsUpdater.d.ts} +2 -2
- package/build/cjs/ui/pages/scheduling/Content/{SchedulingOperationsUpdater.js → SchedulingExpandedPoolsUpdater.js} +7 -8
- package/build/cjs/ui/pages/scheduling/Content/SchedulingExpandedPoolsUpdater.js.map +1 -0
- package/build/cjs/ui/pages/scheduling/Content/SchedulingResources.js +4 -3
- package/build/cjs/ui/pages/scheduling/Content/SchedulingResources.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/controls/ShareUsageBar.js +1 -1
- package/build/cjs/ui/pages/scheduling/Content/controls/ShareUsageBar.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/tabs/Details/Details.js +13 -8
- package/build/cjs/ui/pages/scheduling/Content/tabs/Details/Details.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/tabs/Overview/Overview.d.ts +12 -10
- package/build/cjs/ui/pages/scheduling/Content/tabs/Overview/Overview.js +30 -21
- package/build/cjs/ui/pages/scheduling/Content/tabs/Overview/Overview.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/tabs/SchedulingOperationsError/SchedulingOperationsError.js +2 -2
- package/build/cjs/ui/pages/scheduling/Content/tabs/SchedulingOperationsError/SchedulingOperationsError.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Content/tabs/ScherdulingOperataionsLoader/SchedulingOperationsLoader.js +2 -2
- package/build/cjs/ui/pages/scheduling/Content/tabs/ScherdulingOperataionsLoader/SchedulingOperationsLoader.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/PoolQoutaEditor/PoolQuotaEditor.d.ts +0 -1
- package/build/cjs/ui/pages/scheduling/PoolQoutaEditor/PoolQuotaEditor.js +1 -3
- package/build/cjs/ui/pages/scheduling/PoolQoutaEditor/PoolQuotaEditor.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.d.ts +24 -0
- package/build/cjs/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.js +8 -19
- package/build/cjs/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Scheduling/Scheduling.js +29 -48
- package/build/cjs/ui/pages/scheduling/Scheduling/Scheduling.js.map +1 -1
- package/build/cjs/ui/pages/scheduling/Scheduling/SchedulingTopRowContent.js +8 -4
- package/build/cjs/ui/pages/scheduling/Scheduling/SchedulingTopRowContent.js.map +1 -1
- package/build/cjs/ui/rum/constants.d.ts +5 -1
- package/build/cjs/ui/rum/constants.js +5 -2
- package/build/cjs/ui/rum/constants.js.map +1 -1
- package/build/cjs/ui/rum/rum-counter.js +1 -1
- package/build/cjs/ui/rum/rum-counter.js.map +1 -1
- package/build/cjs/ui/rum/rum-wrap-api.d.ts +95 -53
- package/build/cjs/ui/rum/rum-wrap-api.js +59 -56
- package/build/cjs/ui/rum/rum-wrap-api.js.map +1 -1
- package/build/cjs/ui/store/actions/components/node/node.js +6 -29
- package/build/cjs/ui/store/actions/components/node/node.js.map +1 -1
- package/build/cjs/ui/store/actions/operations/detail.js +1 -1
- package/build/cjs/ui/store/actions/operations/detail.js.map +1 -1
- package/build/cjs/ui/store/actions/scheduling/create-pool-dialog.js +3 -3
- package/build/cjs/ui/store/actions/scheduling/create-pool-dialog.js.map +1 -1
- package/build/cjs/ui/store/actions/scheduling/expanded-pools.d.ts +15 -0
- package/build/cjs/ui/store/actions/scheduling/expanded-pools.js +377 -0
- package/build/cjs/ui/store/actions/scheduling/expanded-pools.js.map +1 -0
- package/build/cjs/ui/store/actions/scheduling/scheduling-ts.d.ts +15 -1
- package/build/cjs/ui/store/actions/scheduling/scheduling-ts.js +226 -10
- package/build/cjs/ui/store/actions/scheduling/scheduling-ts.js.map +1 -1
- package/build/cjs/ui/store/actions/scheduling/scheduling.d.ts +1 -32
- package/build/cjs/ui/store/actions/scheduling/scheduling.js +12 -250
- package/build/cjs/ui/store/actions/scheduling/scheduling.js.map +1 -1
- package/build/cjs/ui/store/actions/system/masters.d.ts +7 -5
- package/build/cjs/ui/store/actions/system/masters.js +305 -235
- package/build/cjs/ui/store/actions/system/masters.js.map +1 -1
- package/build/cjs/ui/store/reducers/components/node/node.d.ts +0 -2
- package/build/cjs/ui/store/reducers/components/node/node.js +2 -5
- package/build/cjs/ui/store/reducers/components/node/node.js.map +1 -1
- package/build/cjs/ui/store/reducers/index.d.ts +9 -7
- package/build/cjs/ui/store/reducers/index.js +3 -4
- package/build/cjs/ui/store/reducers/index.js.map +1 -1
- package/build/cjs/ui/store/reducers/scheduling/expanded-pools.d.ts +28 -0
- package/build/cjs/ui/store/reducers/scheduling/{scheduling-operations.js → expanded-pools.js} +10 -8
- package/build/cjs/ui/store/reducers/scheduling/expanded-pools.js.map +1 -0
- package/build/cjs/ui/store/reducers/scheduling/index.d.ts +5 -93
- package/build/cjs/ui/store/reducers/scheduling/index.js +10 -136
- package/build/cjs/ui/store/reducers/scheduling/index.js.map +1 -1
- package/build/cjs/ui/store/reducers/scheduling/scheduling.d.ts +100 -0
- package/build/cjs/ui/store/reducers/scheduling/scheduling.js +139 -0
- package/build/cjs/ui/store/reducers/scheduling/scheduling.js.map +1 -0
- package/build/cjs/ui/store/reducers/scheduling/url-mapping.d.ts +13 -2
- package/build/cjs/ui/store/reducers/scheduling/url-mapping.js +31 -26
- package/build/cjs/ui/store/reducers/scheduling/url-mapping.js.map +1 -1
- package/build/cjs/ui/store/reducers/system/masters.d.ts +2 -2
- package/build/cjs/ui/store/reducers/system/masters.js.map +1 -1
- package/build/cjs/ui/store/selectors/accounts/account-usage.d.ts +64 -56
- package/build/cjs/ui/store/selectors/accounts/accounts-ts.d.ts +64 -56
- package/build/cjs/ui/store/selectors/chaos_cell_bundles/index.d.ts +88 -77
- package/build/cjs/ui/store/selectors/chyt/index.d.ts +56 -49
- package/build/cjs/ui/store/selectors/components/node/memory.d.ts +56 -49
- package/build/cjs/ui/store/selectors/components/node-maintenance-modal.d.ts +1712 -13
- package/build/cjs/ui/store/selectors/components/nodes/node-card.d.ts +8 -7
- package/build/cjs/ui/store/selectors/components/nodes/nodes/data.d.ts +16 -14
- package/build/cjs/ui/store/selectors/components/nodes/nodes/predicates.d.ts +48 -42
- package/build/cjs/ui/store/selectors/components/versions/versions_v2-ts.d.ts +859 -9
- package/build/cjs/ui/store/selectors/components/versions/versions_v2.d.ts +40 -35
- package/build/cjs/ui/store/selectors/global/index.d.ts +116 -102
- package/build/cjs/ui/store/selectors/global/index.js +2 -3
- package/build/cjs/ui/store/selectors/global/index.js.map +1 -1
- package/build/cjs/ui/store/selectors/global/supported-features.d.ts +48 -42
- package/build/cjs/ui/store/selectors/modals/errors.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/content/document.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/content/replicated-table.d.ts +24 -21
- package/build/cjs/ui/store/selectors/navigation/content/table-mount-config.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/content/table-ts.d.ts +32 -28
- package/build/cjs/ui/store/selectors/navigation/content/table.d.ts +56 -49
- package/build/cjs/ui/store/selectors/navigation/modals/attributes-editor.d.ts +24 -21
- package/build/cjs/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/navigation.d.ts +16 -14
- package/build/cjs/ui/store/selectors/navigation/tabs/access-log.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/tabs/annotation.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/tabs/consumer.d.ts +8 -7
- package/build/cjs/ui/store/selectors/navigation/tabs/locks.d.ts +16 -14
- package/build/cjs/ui/store/selectors/navigation/tabs/queue.d.ts +16 -14
- package/build/cjs/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +8 -7
- package/build/cjs/ui/store/selectors/operations/index.d.ts +96 -84
- package/build/cjs/ui/store/selectors/operations/jobs-monitor.d.ts +32 -28
- package/build/cjs/ui/store/selectors/operations/operation.d.ts +939 -79
- package/build/cjs/ui/store/selectors/operations/operation.js +2 -17
- package/build/cjs/ui/store/selectors/operations/operation.js.map +1 -1
- package/build/cjs/ui/store/selectors/operations/operations-list.d.ts +24 -21
- package/build/cjs/ui/store/selectors/operations/statistics-v2.d.ts +64 -56
- package/build/cjs/ui/store/selectors/scheduling/attributes-to-filter.d.ts +876 -0
- package/build/cjs/ui/store/selectors/scheduling/attributes-to-filter.js +75 -0
- package/build/cjs/ui/store/selectors/scheduling/attributes-to-filter.js.map +1 -0
- package/build/cjs/ui/store/selectors/scheduling/create-pool-dialog.d.ts +8 -7
- package/build/cjs/ui/store/selectors/scheduling/create-pool-dialog.js +3 -3
- package/build/cjs/ui/store/selectors/scheduling/create-pool-dialog.js.map +1 -1
- package/build/cjs/ui/store/selectors/scheduling/{scheduling-operations.d.ts → expanded-pools.d.ts} +14 -14
- package/build/cjs/ui/store/selectors/scheduling/expanded-pools.js +35 -0
- package/build/cjs/ui/store/selectors/scheduling/expanded-pools.js.map +1 -0
- package/build/cjs/ui/store/selectors/scheduling/index.d.ts +8 -7
- package/build/cjs/ui/store/selectors/scheduling/index.js +3 -3
- package/build/cjs/ui/store/selectors/scheduling/index.js.map +1 -1
- package/build/cjs/ui/store/selectors/scheduling/monitor.js +1 -1
- package/build/cjs/ui/store/selectors/scheduling/monitor.js.map +1 -1
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.d.ts +2552 -3
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.js +10 -18
- package/build/cjs/ui/store/selectors/scheduling/scheduling-pools.js.map +1 -1
- package/build/cjs/ui/store/selectors/scheduling/scheduling-ts.d.ts +4291 -45
- package/build/cjs/ui/store/selectors/scheduling/scheduling.d.ts +13739 -149
- package/build/cjs/ui/store/selectors/scheduling/scheduling.js +35 -30
- package/build/cjs/ui/store/selectors/scheduling/scheduling.js.map +1 -1
- package/build/cjs/ui/store/selectors/system/masters.d.ts +1 -1
- package/build/cjs/ui/store/selectors/system/masters.js.map +1 -1
- package/build/cjs/ui/store/selectors/tablet_cell_bundles/index.d.ts +120 -105
- package/build/cjs/ui/store/selectors/thor/support.d.ts +4294 -86
- package/build/cjs/ui/store/selectors/thor/support.js +76 -138
- package/build/cjs/ui/store/selectors/thor/support.js.map +1 -1
- package/build/cjs/ui/store/selectors/thor/support.spec.js +163 -68
- package/build/cjs/ui/store/selectors/thor/support.spec.js.map +1 -1
- package/build/cjs/ui/store/window-store.js +2 -2
- package/build/cjs/ui/store/window-store.js.map +1 -1
- package/build/cjs/ui/utils/batch.d.ts +54 -0
- package/build/cjs/ui/utils/batch.js +27 -0
- package/build/cjs/ui/utils/batch.js.map +1 -0
- package/build/cjs/ui/utils/scheduling/pool-child.d.ts +1 -1
- package/build/cjs/ui/utils/scheduling/pool-child.js +20 -9
- package/build/cjs/ui/utils/scheduling/pool-child.js.map +1 -1
- package/build/cjs/ui/utils/scheduling/scheduling.d.ts +2 -6
- package/build/cjs/ui/utils/scheduling/scheduling.js +3 -3
- package/build/cjs/ui/utils/scheduling/scheduling.js.map +1 -1
- package/build/cjs/ui/utils/utils.d.ts +3 -2
- package/build/cjs/ui/utils/utils.js +17 -9
- package/build/cjs/ui/utils/utils.js.map +1 -1
- package/build/esm/shared/yt-types.d.ts +6 -0
- package/build/esm/ui/common/yt-api-init.js +4 -2
- package/build/esm/ui/common/yt-api-init.js.map +1 -1
- package/build/esm/ui/constants/scheduling/index.d.ts +6 -7
- package/build/esm/ui/constants/scheduling/index.js +6 -7
- package/build/esm/ui/constants/scheduling/index.js.map +1 -1
- package/build/esm/ui/pages/components/tabs/node/NodePage.js +1 -4
- package/build/esm/ui/pages/components/tabs/node/NodePage.js.map +1 -1
- package/build/esm/ui/pages/components/tabs/nodes/NodeCard/NodeCard.js +12 -16
- package/build/esm/ui/pages/components/tabs/nodes/NodeCard/NodeCard.js.map +1 -1
- package/build/esm/ui/pages/operations/OperationDetail/tabs/details/Runtime/Runtime.js +3 -6
- package/build/esm/ui/pages/operations/OperationDetail/tabs/details/Runtime/Runtime.js.map +1 -1
- package/build/esm/ui/pages/operations/OperationsList/OperationsListToolbar/OperationsListToolbar.js +1 -5
- package/build/esm/ui/pages/operations/OperationsList/OperationsListToolbar/OperationsListToolbar.js.map +1 -1
- package/build/esm/ui/pages/operations/selectors.d.ts +8 -7
- package/build/esm/ui/pages/query-tracker/module/queries_list/selectors.d.ts +32 -28
- package/build/esm/ui/pages/query-tracker/module/query/selectors.d.ts +8 -7
- package/build/esm/ui/pages/query-tracker/module/settings/selector.d.ts +8 -7
- package/build/esm/ui/pages/scheduling/Alerts.js +1 -1
- package/build/esm/ui/pages/scheduling/Alerts.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/Content.js +2 -2
- package/build/esm/ui/pages/scheduling/Content/Content.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/{SchedulingOperationsUpdater.d.ts → SchedulingExpandedPoolsUpdater.d.ts} +2 -2
- package/build/esm/ui/pages/scheduling/Content/SchedulingExpandedPoolsUpdater.js +15 -0
- package/build/esm/ui/pages/scheduling/Content/SchedulingExpandedPoolsUpdater.js.map +1 -0
- package/build/esm/ui/pages/scheduling/Content/SchedulingResources.js +4 -3
- package/build/esm/ui/pages/scheduling/Content/SchedulingResources.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/controls/ShareUsageBar.js +1 -1
- package/build/esm/ui/pages/scheduling/Content/controls/ShareUsageBar.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/tabs/Details/Details.js +14 -9
- package/build/esm/ui/pages/scheduling/Content/tabs/Details/Details.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/tabs/Overview/Overview.d.ts +12 -10
- package/build/esm/ui/pages/scheduling/Content/tabs/Overview/Overview.js +27 -18
- package/build/esm/ui/pages/scheduling/Content/tabs/Overview/Overview.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/tabs/SchedulingOperationsError/SchedulingOperationsError.js +1 -1
- package/build/esm/ui/pages/scheduling/Content/tabs/SchedulingOperationsError/SchedulingOperationsError.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Content/tabs/ScherdulingOperataionsLoader/SchedulingOperationsLoader.js +1 -1
- package/build/esm/ui/pages/scheduling/Content/tabs/ScherdulingOperataionsLoader/SchedulingOperationsLoader.js.map +1 -1
- package/build/esm/ui/pages/scheduling/PoolQoutaEditor/PoolQuotaEditor.d.ts +0 -1
- package/build/esm/ui/pages/scheduling/PoolQoutaEditor/PoolQuotaEditor.js +1 -3
- package/build/esm/ui/pages/scheduling/PoolQoutaEditor/PoolQuotaEditor.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.d.ts +24 -0
- package/build/esm/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.js +8 -19
- package/build/esm/ui/pages/scheduling/Scheduling/PoolEditorDialog/PoolEditorDialog.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Scheduling/Scheduling.js +26 -45
- package/build/esm/ui/pages/scheduling/Scheduling/Scheduling.js.map +1 -1
- package/build/esm/ui/pages/scheduling/Scheduling/SchedulingTopRowContent.js +6 -2
- package/build/esm/ui/pages/scheduling/Scheduling/SchedulingTopRowContent.js.map +1 -1
- package/build/esm/ui/rum/constants.d.ts +5 -1
- package/build/esm/ui/rum/constants.js +5 -2
- package/build/esm/ui/rum/constants.js.map +1 -1
- package/build/esm/ui/rum/rum-counter.js +1 -1
- package/build/esm/ui/rum/rum-counter.js.map +1 -1
- package/build/esm/ui/rum/rum-wrap-api.d.ts +95 -53
- package/build/esm/ui/rum/rum-wrap-api.js +58 -55
- package/build/esm/ui/rum/rum-wrap-api.js.map +1 -1
- package/build/esm/ui/store/actions/components/node/node.js +6 -28
- package/build/esm/ui/store/actions/components/node/node.js.map +1 -1
- package/build/esm/ui/store/actions/operations/detail.js +1 -1
- package/build/esm/ui/store/actions/operations/detail.js.map +1 -1
- package/build/esm/ui/store/actions/scheduling/create-pool-dialog.js +2 -2
- package/build/esm/ui/store/actions/scheduling/create-pool-dialog.js.map +1 -1
- package/build/esm/ui/store/actions/scheduling/expanded-pools.d.ts +15 -0
- package/build/esm/ui/store/actions/scheduling/expanded-pools.js +363 -0
- package/build/esm/ui/store/actions/scheduling/expanded-pools.js.map +1 -0
- package/build/esm/ui/store/actions/scheduling/scheduling-ts.d.ts +15 -1
- package/build/esm/ui/store/actions/scheduling/scheduling-ts.js +221 -13
- package/build/esm/ui/store/actions/scheduling/scheduling-ts.js.map +1 -1
- package/build/esm/ui/store/actions/scheduling/scheduling.d.ts +1 -32
- package/build/esm/ui/store/actions/scheduling/scheduling.js +16 -247
- package/build/esm/ui/store/actions/scheduling/scheduling.js.map +1 -1
- package/build/esm/ui/store/actions/system/masters.d.ts +7 -5
- package/build/esm/ui/store/actions/system/masters.js +303 -233
- package/build/esm/ui/store/actions/system/masters.js.map +1 -1
- package/build/esm/ui/store/reducers/components/node/node.d.ts +0 -2
- package/build/esm/ui/store/reducers/components/node/node.js +2 -5
- package/build/esm/ui/store/reducers/components/node/node.js.map +1 -1
- package/build/esm/ui/store/reducers/index.d.ts +9 -7
- package/build/esm/ui/store/reducers/index.js +3 -4
- package/build/esm/ui/store/reducers/index.js.map +1 -1
- package/build/esm/ui/store/reducers/scheduling/expanded-pools.d.ts +28 -0
- package/build/esm/ui/store/reducers/scheduling/{scheduling-operations.js → expanded-pools.js} +11 -9
- package/build/esm/ui/store/reducers/scheduling/expanded-pools.js.map +1 -0
- package/build/esm/ui/store/reducers/scheduling/index.d.ts +5 -93
- package/build/esm/ui/store/reducers/scheduling/index.js +9 -135
- package/build/esm/ui/store/reducers/scheduling/index.js.map +1 -1
- package/build/esm/ui/store/reducers/scheduling/scheduling.d.ts +100 -0
- package/build/esm/ui/store/reducers/scheduling/scheduling.js +132 -0
- package/build/esm/ui/store/reducers/scheduling/scheduling.js.map +1 -0
- package/build/esm/ui/store/reducers/scheduling/url-mapping.d.ts +13 -2
- package/build/esm/ui/store/reducers/scheduling/url-mapping.js +19 -14
- package/build/esm/ui/store/reducers/scheduling/url-mapping.js.map +1 -1
- package/build/esm/ui/store/reducers/system/masters.d.ts +2 -2
- package/build/esm/ui/store/reducers/system/masters.js.map +1 -1
- package/build/esm/ui/store/selectors/accounts/account-usage.d.ts +64 -56
- package/build/esm/ui/store/selectors/accounts/accounts-ts.d.ts +64 -56
- package/build/esm/ui/store/selectors/chaos_cell_bundles/index.d.ts +88 -77
- package/build/esm/ui/store/selectors/chyt/index.d.ts +56 -49
- package/build/esm/ui/store/selectors/components/node/memory.d.ts +56 -49
- package/build/esm/ui/store/selectors/components/node-maintenance-modal.d.ts +1712 -13
- package/build/esm/ui/store/selectors/components/nodes/node-card.d.ts +8 -7
- package/build/esm/ui/store/selectors/components/nodes/nodes/data.d.ts +16 -14
- package/build/esm/ui/store/selectors/components/nodes/nodes/predicates.d.ts +48 -42
- package/build/esm/ui/store/selectors/components/versions/versions_v2-ts.d.ts +859 -9
- package/build/esm/ui/store/selectors/components/versions/versions_v2.d.ts +40 -35
- package/build/esm/ui/store/selectors/global/index.d.ts +116 -102
- package/build/esm/ui/store/selectors/global/index.js +2 -3
- package/build/esm/ui/store/selectors/global/index.js.map +1 -1
- package/build/esm/ui/store/selectors/global/supported-features.d.ts +48 -42
- package/build/esm/ui/store/selectors/modals/errors.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/content/document.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/content/replicated-table.d.ts +24 -21
- package/build/esm/ui/store/selectors/navigation/content/table-mount-config.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/content/table-ts.d.ts +32 -28
- package/build/esm/ui/store/selectors/navigation/content/table.d.ts +56 -49
- package/build/esm/ui/store/selectors/navigation/modals/attributes-editor.d.ts +24 -21
- package/build/esm/ui/store/selectors/navigation/modals/remote-copy-modal.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/navigation.d.ts +16 -14
- package/build/esm/ui/store/selectors/navigation/tabs/access-log.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/tabs/annotation.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/tabs/consumer.d.ts +8 -7
- package/build/esm/ui/store/selectors/navigation/tabs/locks.d.ts +16 -14
- package/build/esm/ui/store/selectors/navigation/tabs/queue.d.ts +16 -14
- package/build/esm/ui/store/selectors/navigation/tabs/tablet-errors.d.ts +8 -7
- package/build/esm/ui/store/selectors/operations/index.d.ts +96 -84
- package/build/esm/ui/store/selectors/operations/jobs-monitor.d.ts +32 -28
- package/build/esm/ui/store/selectors/operations/operation.d.ts +939 -79
- package/build/esm/ui/store/selectors/operations/operation.js +2 -17
- package/build/esm/ui/store/selectors/operations/operation.js.map +1 -1
- package/build/esm/ui/store/selectors/operations/operations-list.d.ts +24 -21
- package/build/esm/ui/store/selectors/operations/statistics-v2.d.ts +64 -56
- package/build/esm/ui/store/selectors/scheduling/attributes-to-filter.d.ts +876 -0
- package/build/esm/ui/store/selectors/scheduling/attributes-to-filter.js +68 -0
- package/build/esm/ui/store/selectors/scheduling/attributes-to-filter.js.map +1 -0
- package/build/esm/ui/store/selectors/scheduling/create-pool-dialog.d.ts +8 -7
- package/build/esm/ui/store/selectors/scheduling/create-pool-dialog.js +3 -3
- package/build/esm/ui/store/selectors/scheduling/create-pool-dialog.js.map +1 -1
- package/build/esm/ui/store/selectors/scheduling/{scheduling-operations.d.ts → expanded-pools.d.ts} +14 -14
- package/build/esm/ui/store/selectors/scheduling/{scheduling-operations.js → expanded-pools.js} +13 -10
- package/build/esm/ui/store/selectors/scheduling/expanded-pools.js.map +1 -0
- package/build/esm/ui/store/selectors/scheduling/index.d.ts +8 -7
- package/build/esm/ui/store/selectors/scheduling/index.js +3 -3
- package/build/esm/ui/store/selectors/scheduling/index.js.map +1 -1
- package/build/esm/ui/store/selectors/scheduling/monitor.js +1 -1
- package/build/esm/ui/store/selectors/scheduling/monitor.js.map +1 -1
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.d.ts +2552 -3
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.js +11 -19
- package/build/esm/ui/store/selectors/scheduling/scheduling-pools.js.map +1 -1
- package/build/esm/ui/store/selectors/scheduling/scheduling-ts.d.ts +4291 -45
- package/build/esm/ui/store/selectors/scheduling/scheduling.d.ts +13739 -149
- package/build/esm/ui/store/selectors/scheduling/scheduling.js +34 -29
- package/build/esm/ui/store/selectors/scheduling/scheduling.js.map +1 -1
- package/build/esm/ui/store/selectors/system/masters.d.ts +1 -1
- package/build/esm/ui/store/selectors/system/masters.js.map +1 -1
- package/build/esm/ui/store/selectors/tablet_cell_bundles/index.d.ts +120 -105
- package/build/esm/ui/store/selectors/thor/support.d.ts +4294 -86
- package/build/esm/ui/store/selectors/thor/support.js +73 -134
- package/build/esm/ui/store/selectors/thor/support.js.map +1 -1
- package/build/esm/ui/store/selectors/thor/support.spec.js +164 -69
- package/build/esm/ui/store/selectors/thor/support.spec.js.map +1 -1
- package/build/esm/ui/store/window-store.js +1 -1
- package/build/esm/ui/store/window-store.js.map +1 -1
- package/build/esm/ui/utils/batch.d.ts +54 -0
- package/build/esm/ui/utils/batch.js +19 -0
- package/build/esm/ui/utils/batch.js.map +1 -0
- package/build/esm/ui/utils/scheduling/pool-child.d.ts +1 -1
- package/build/esm/ui/utils/scheduling/pool-child.js +20 -9
- package/build/esm/ui/utils/scheduling/pool-child.js.map +1 -1
- package/build/esm/ui/utils/scheduling/scheduling.d.ts +2 -6
- package/build/esm/ui/utils/scheduling/scheduling.js +3 -3
- package/build/esm/ui/utils/scheduling/scheduling.js.map +1 -1
- package/build/esm/ui/utils/utils.d.ts +3 -2
- package/build/esm/ui/utils/utils.js +17 -9
- package/build/esm/ui/utils/utils.js.map +1 -1
- package/dist/public/build/assets-manifest.json +7 -7
- package/dist/public/build/js/main.64fccb27.js +3 -0
- package/dist/public/build/js/{main.9d592639.js.map → main.64fccb27.js.map} +1 -1
- package/dist/public/build/js/{runtime.9491563b.js → runtime.fd8cf219.js} +2 -2
- package/dist/public/build/js/{runtime.9491563b.js.map → runtime.fd8cf219.js.map} +1 -1
- package/dist/public/build/manifest.json +4 -4
- package/package.json +2 -2
- package/build/cjs/ui/pages/scheduling/Content/SchedulingOperationsUpdater.js.map +0 -1
- package/build/cjs/ui/store/actions/scheduling/scheduling-operations.d.ts +0 -15
- package/build/cjs/ui/store/actions/scheduling/scheduling-operations.js +0 -280
- package/build/cjs/ui/store/actions/scheduling/scheduling-operations.js.map +0 -1
- package/build/cjs/ui/store/reducers/scheduling/scheduling-operations.d.ts +0 -19
- package/build/cjs/ui/store/reducers/scheduling/scheduling-operations.js.map +0 -1
- package/build/cjs/ui/store/selectors/scheduling/scheduling-operations.js +0 -32
- package/build/cjs/ui/store/selectors/scheduling/scheduling-operations.js.map +0 -1
- package/build/esm/ui/pages/scheduling/Content/SchedulingOperationsUpdater.js +0 -16
- package/build/esm/ui/pages/scheduling/Content/SchedulingOperationsUpdater.js.map +0 -1
- package/build/esm/ui/store/actions/scheduling/scheduling-operations.d.ts +0 -15
- package/build/esm/ui/store/actions/scheduling/scheduling-operations.js +0 -267
- package/build/esm/ui/store/actions/scheduling/scheduling-operations.js.map +0 -1
- package/build/esm/ui/store/reducers/scheduling/scheduling-operations.d.ts +0 -19
- package/build/esm/ui/store/reducers/scheduling/scheduling-operations.js.map +0 -1
- package/build/esm/ui/store/selectors/scheduling/scheduling-operations.js.map +0 -1
- package/dist/public/build/js/main.9d592639.js +0 -3
- /package/dist/public/build/js/{main.9d592639.js.LICENSE.txt → main.64fccb27.js.LICENSE.txt} +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["yt","ypath","GET_OPERATION","LOAD_RESOURCE_USAGE","DetailedOperationSelector","checkUserTransaction","prepareAttributes","showErrorPopup","isOperationId","TYPED_OUTPUT_FORMAT","Toaster","CancelHelper","YTApiId","ytApiV3","ytApiV3Id","getJobsMonitoringDescriptors","toaster","operationDetailsRequests","getIsEphemeral","_ref","_ref2","_slicedToArray","operationAttributes","userTransactionAlive","treesInfo","get","trees","_keys","poolPaths","_values","_mapValues","infoPerTree","tree","concat","getValue","requests","_map","path","command","parameters","orchidAttributes","executeBatch","operationIsEphemeral","then","data","_ref3","error","output","getNumberDeprecated","code","codes","NODE_DOES_NOT_EXIST","res","_reduce","poolInfo","index","pool","isEphemeral","getBoolean","_defineProperty","Promise","all","loadIntermediateResourceUsage","operation","callback","dispatch","outputTransaction","type","REQUEST","operationIntermediateResourceUsage","resources","SUCCESS","FAILURE","CANCELLED","getOperation","id","getState","isAlias","params","Object","assign","include_scheduler","output_format","operation_alias","operation_id","_ref4","_ref5","preparedAttributes","dispatchOperationSuccess","inIntermediateState","_getState","operations","isFirstLoading","detail","loaded","add","name","autoHiding","title","content","message","actions","label","onClick","details"],"sources":["detail.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport _ from 'lodash';\nimport ypath from '../../../common/thor/ypath';\n\nimport {GET_OPERATION, LOAD_RESOURCE_USAGE} from '../../../constants/operations/detail';\nimport {DetailedOperationSelector} from '../../../pages/operations/selectors';\nimport {checkUserTransaction} from '../../../utils/operations/detail';\nimport {prepareAttributes} from '../../../utils';\nimport {showErrorPopup} from '../../../utils/utils';\nimport {isOperationId} from '../../../utils/operations/list';\nimport {TYPED_OUTPUT_FORMAT} from '../../../constants/index';\nimport {Toaster} from '@gravity-ui/uikit';\nimport CancelHelper from '../../../utils/cancel-helper';\nimport {YTApiId, ytApiV3, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {getJobsMonitoringDescriptors} from '../../../store/actions/operations/jobs-monitor';\n\nconst toaster = new Toaster();\nconst operationDetailsRequests = new CancelHelper();\n\nfunction getIsEphemeral([operationAttributes, userTransactionAlive]) {\n const treesInfo = ypath.get(\n operationAttributes,\n '/runtime_parameters/scheduling_options_per_pool_tree',\n );\n const trees = _.keys(treesInfo);\n const poolPaths = _.values(\n _.mapValues(\n treesInfo,\n (infoPerTree, tree) =>\n `${tree}/fair_share_info/pools/${ypath.getValue(\n infoPerTree,\n '/pool',\n )}/is_ephemeral`,\n ),\n );\n const requests = _.map(poolPaths, (path) => {\n return {\n command: 'get',\n parameters: {\n path: '//sys/scheduler/orchid/scheduler/scheduling_info_per_pool_tree/' + path,\n },\n };\n });\n const orchidAttributes = ytApiV3Id\n .executeBatch(YTApiId.operationIsEphemeral, {requests})\n .then((data) => {\n return _.map(data, ({error, output}) => {\n if (error) {\n if (ypath.getNumberDeprecated(error.code) === yt.codes.NODE_DOES_NOT_EXIST) {\n return true;\n }\n return false;\n }\n return output;\n });\n })\n .then((res) => {\n return _.reduce(\n res,\n (res, poolInfo, index) => {\n const tree = trees[index];\n const pool = ypath.getValue(treesInfo[tree], '/pool');\n const isEphemeral = ypath.getBoolean(poolInfo);\n\n res[tree] = {\n [pool]: {isEphemeral},\n };\n\n return res;\n },\n {},\n );\n });\n\n return Promise.all([operationAttributes, userTransactionAlive, orchidAttributes]);\n}\n\nfunction loadIntermediateResourceUsage(operation, callback) {\n return (dispatch) => {\n const outputTransaction = ypath.get(operation, '/@output_transaction_id');\n\n if (outputTransaction && outputTransaction !== '0-0-0-0') {\n dispatch({type: LOAD_RESOURCE_USAGE.REQUEST});\n\n return ytApiV3Id\n .get(YTApiId.operationIntermediateResourceUsage, {\n path: '#' + outputTransaction + '/@resource_usage',\n })\n .then((resources) => {\n callback();\n dispatch({\n type: LOAD_RESOURCE_USAGE.SUCCESS,\n data: {resources},\n });\n })\n .catch(() => {\n callback();\n dispatch({type: LOAD_RESOURCE_USAGE.FAILURE});\n });\n } else {\n callback();\n dispatch({type: LOAD_RESOURCE_USAGE.CANCELLED});\n }\n };\n}\n\nexport function getOperation(id) {\n return (dispatch, getState) => {\n const isAlias = !isOperationId(id);\n\n const params = Object.assign(\n {\n include_scheduler: true,\n output_format: TYPED_OUTPUT_FORMAT,\n },\n isAlias ? {operation_alias: id} : {operation_id: id},\n );\n\n dispatch({type: GET_OPERATION.REQUEST, data: {isAlias, id}});\n\n return ytApiV3\n .getOperation(params, operationDetailsRequests)\n .then(checkUserTransaction)\n .then(getIsEphemeral)\n .then(([operationAttributes, userTransactionAlive, orchidAttributes]) => {\n const preparedAttributes = prepareAttributes(operationAttributes);\n const operation = new DetailedOperationSelector(\n preparedAttributes,\n operationAttributes,\n orchidAttributes,\n );\n\n const dispatchOperationSuccess = () => {\n dispatch({\n type: GET_OPERATION.SUCCESS,\n data: {operation, userTransactionAlive},\n });\n };\n\n if (operation.inIntermediateState()) {\n dispatch(loadIntermediateResourceUsage(operation, dispatchOperationSuccess));\n } else {\n dispatchOperationSuccess();\n }\n\n dispatch(getJobsMonitoringDescriptors(id));\n })\n .catch((error) => {\n const {operations} = getState();\n const isFirstLoading = !operations.detail.loaded;\n\n if (error.code !== yt.codes.CANCELLED) {\n if (!isFirstLoading) {\n toaster.add({\n name: 'get operation',\n autoHiding: false,\n type: 'error',\n title: 'Failed to load operation',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n }\n\n dispatch({\n type: GET_OPERATION.FAILURE,\n data: {\n message: `Error occured when loading operation \"${id}\"`,\n details: error,\n },\n });\n }\n });\n };\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["yt","ypath","GET_OPERATION","LOAD_RESOURCE_USAGE","DetailedOperationSelector","checkUserTransaction","prepareAttributes","showErrorPopup","isOperationId","TYPED_OUTPUT_FORMAT","Toaster","CancelHelper","YTApiId","ytApiV3","ytApiV3Id","getJobsMonitoringDescriptors","toaster","operationDetailsRequests","getIsEphemeral","_ref","_ref2","_slicedToArray","operationAttributes","userTransactionAlive","treesInfo","get","trees","_keys","poolPaths","_values","_mapValues","infoPerTree","tree","concat","getValue","requests","_map","path","command","parameters","orchidAttributes","executeBatch","operationIsEphemeral","then","data","_ref3","error","output","getNumberDeprecated","code","codes","NODE_DOES_NOT_EXIST","res","_reduce","poolInfo","index","pool","isEphemeral","getBoolean","_defineProperty","Promise","all","loadIntermediateResourceUsage","operation","callback","dispatch","outputTransaction","type","REQUEST","operationIntermediateResourceUsage","resources","SUCCESS","FAILURE","CANCELLED","getOperation","id","getState","isAlias","params","Object","assign","include_scheduler","output_format","operation_alias","operation_id","_ref4","_ref5","preparedAttributes","dispatchOperationSuccess","inIntermediateState","_getState","operations","isFirstLoading","detail","loaded","add","name","autoHiding","title","content","message","actions","label","onClick","details"],"sources":["detail.js"],"sourcesContent":["import yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport _ from 'lodash';\nimport ypath from '../../../common/thor/ypath';\n\nimport {GET_OPERATION, LOAD_RESOURCE_USAGE} from '../../../constants/operations/detail';\nimport {DetailedOperationSelector} from '../../../pages/operations/selectors';\nimport {checkUserTransaction} from '../../../utils/operations/detail';\nimport {prepareAttributes} from '../../../utils';\nimport {showErrorPopup} from '../../../utils/utils';\nimport {isOperationId} from '../../../utils/operations/list';\nimport {TYPED_OUTPUT_FORMAT} from '../../../constants/index';\nimport {Toaster} from '@gravity-ui/uikit';\nimport CancelHelper from '../../../utils/cancel-helper';\nimport {YTApiId, ytApiV3, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {getJobsMonitoringDescriptors} from '../../../store/actions/operations/jobs-monitor';\n\nconst toaster = new Toaster();\nconst operationDetailsRequests = new CancelHelper();\n\nfunction getIsEphemeral([operationAttributes, userTransactionAlive]) {\n const treesInfo = ypath.get(\n operationAttributes,\n '/runtime_parameters/scheduling_options_per_pool_tree',\n );\n const trees = _.keys(treesInfo);\n const poolPaths = _.values(\n _.mapValues(\n treesInfo,\n (infoPerTree, tree) =>\n `${tree}/fair_share_info/pools/${ypath.getValue(\n infoPerTree,\n '/pool',\n )}/is_ephemeral`,\n ),\n );\n const requests = _.map(poolPaths, (path) => {\n return {\n command: 'get',\n parameters: {\n path: '//sys/scheduler/orchid/scheduler/pool_trees/' + path,\n },\n };\n });\n const orchidAttributes = ytApiV3Id\n .executeBatch(YTApiId.operationIsEphemeral, {requests})\n .then((data) => {\n return _.map(data, ({error, output}) => {\n if (error) {\n if (ypath.getNumberDeprecated(error.code) === yt.codes.NODE_DOES_NOT_EXIST) {\n return true;\n }\n return false;\n }\n return output;\n });\n })\n .then((res) => {\n return _.reduce(\n res,\n (res, poolInfo, index) => {\n const tree = trees[index];\n const pool = ypath.getValue(treesInfo[tree], '/pool');\n const isEphemeral = ypath.getBoolean(poolInfo);\n\n res[tree] = {\n [pool]: {isEphemeral},\n };\n\n return res;\n },\n {},\n );\n });\n\n return Promise.all([operationAttributes, userTransactionAlive, orchidAttributes]);\n}\n\nfunction loadIntermediateResourceUsage(operation, callback) {\n return (dispatch) => {\n const outputTransaction = ypath.get(operation, '/@output_transaction_id');\n\n if (outputTransaction && outputTransaction !== '0-0-0-0') {\n dispatch({type: LOAD_RESOURCE_USAGE.REQUEST});\n\n return ytApiV3Id\n .get(YTApiId.operationIntermediateResourceUsage, {\n path: '#' + outputTransaction + '/@resource_usage',\n })\n .then((resources) => {\n callback();\n dispatch({\n type: LOAD_RESOURCE_USAGE.SUCCESS,\n data: {resources},\n });\n })\n .catch(() => {\n callback();\n dispatch({type: LOAD_RESOURCE_USAGE.FAILURE});\n });\n } else {\n callback();\n dispatch({type: LOAD_RESOURCE_USAGE.CANCELLED});\n }\n };\n}\n\nexport function getOperation(id) {\n return (dispatch, getState) => {\n const isAlias = !isOperationId(id);\n\n const params = Object.assign(\n {\n include_scheduler: true,\n output_format: TYPED_OUTPUT_FORMAT,\n },\n isAlias ? {operation_alias: id} : {operation_id: id},\n );\n\n dispatch({type: GET_OPERATION.REQUEST, data: {isAlias, id}});\n\n return ytApiV3\n .getOperation(params, operationDetailsRequests)\n .then(checkUserTransaction)\n .then(getIsEphemeral)\n .then(([operationAttributes, userTransactionAlive, orchidAttributes]) => {\n const preparedAttributes = prepareAttributes(operationAttributes);\n const operation = new DetailedOperationSelector(\n preparedAttributes,\n operationAttributes,\n orchidAttributes,\n );\n\n const dispatchOperationSuccess = () => {\n dispatch({\n type: GET_OPERATION.SUCCESS,\n data: {operation, userTransactionAlive},\n });\n };\n\n if (operation.inIntermediateState()) {\n dispatch(loadIntermediateResourceUsage(operation, dispatchOperationSuccess));\n } else {\n dispatchOperationSuccess();\n }\n\n dispatch(getJobsMonitoringDescriptors(id));\n })\n .catch((error) => {\n const {operations} = getState();\n const isFirstLoading = !operations.detail.loaded;\n\n if (error.code !== yt.codes.CANCELLED) {\n if (!isFirstLoading) {\n toaster.add({\n name: 'get operation',\n autoHiding: false,\n type: 'error',\n title: 'Failed to load operation',\n content: error.message,\n actions: [\n {\n label: ' view',\n onClick: () => showErrorPopup(error),\n },\n ],\n });\n }\n\n dispatch({\n type: GET_OPERATION.FAILURE,\n data: {\n message: `Error occured when loading operation \"${id}\"`,\n details: error,\n },\n });\n }\n });\n };\n}\n"],"mappings":"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"}
|
@@ -4,7 +4,7 @@ import { CREATE_POOL_DIALOG_TREE_CREATE_FAILURE, CREATE_POOL_DIALOG_TREE_ITEMS_S
|
|
4
4
|
import yt from '@ytsaurus/javascript-wrapper/lib/yt';
|
5
5
|
import { prepareAbcService } from '../../../utils/scheduling';
|
6
6
|
import { wrapApiPromiseByToaster } from '../../../utils/utils';
|
7
|
-
import { loadSchedulingData } from './scheduling';
|
7
|
+
import { loadSchedulingData } from './scheduling-ts';
|
8
8
|
import { getCluster } from '../../selectors/global';
|
9
9
|
import { updateAcl } from '../../../utils/acl/acl-api';
|
10
10
|
import { IdmObjectType } from '../../../constants/acl';
|
@@ -95,7 +95,7 @@ function waitWhilePoolIsReady(_ref) {
|
|
95
95
|
return new Promise(function (resolve, reject) {
|
96
96
|
setTimeout(function () {
|
97
97
|
yt.v3.exists({
|
98
|
-
path: "//sys/scheduler/orchid/scheduler/
|
98
|
+
path: "//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/fair_share_info/pools/").concat(name)
|
99
99
|
}).then(function (res) {
|
100
100
|
if (res) {
|
101
101
|
return resolve(true);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["React","CREATE_POOL_DIALOG_TREE_CREATE_FAILURE","CREATE_POOL_DIALOG_TREE_ITEMS_SUCCESS","yt","prepareAbcService","wrapApiPromiseByToaster","loadSchedulingData","getCluster","updateAcl","IdmObjectType","Link","YTApiId","ytApiV3Id","createAdminReqTicketUrl","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","fetchCreatePoolDialogTreeItems","currentTree","dispatch","get","getPoolTrees","path","concat","then","treeItems","type","data","createPool","values","getState","abcService","cluster","v3","create","attributes","Object","assign","name","parent_name","parent","pool_tree","tree","value","abc","toasterName","successContent","errorContent","timeout","idmKind","POOL","poolTree","responsible","waitWhilePoolIsReady","error","code","codes","CANCELLED","Promise","reject","_createAdminReqTicket","createUrl","url","queue","CHECK_REDINESS_TIMEOUT","MAX_POOL_REDINESS_TIMEOUT","TIMEOUT_ERROR","message","children","_ref","startedAt","arguments","length","undefined","startedTime","Date","now","diff","resolve","setTimeout","exists","res"],"sources":["create-pool-dialog.tsx"],"sourcesContent":["import React from 'react';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../reducers';\nimport {\n CreatePoolDialogAction,\n CreatePoolDialogState,\n} from '../../reducers/scheduling/create-pool-dialog';\nimport {\n CREATE_POOL_DIALOG_TREE_CREATE_FAILURE,\n CREATE_POOL_DIALOG_TREE_ITEMS_SUCCESS,\n} from '../../../constants/scheduling';\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport {prepareAbcService} from '../../../utils/scheduling';\nimport {wrapApiPromiseByToaster} from '../../../utils/utils';\nimport {loadSchedulingData} from './scheduling';\nimport {FIX_MY_TYPE} from '../../../types';\nimport {getCluster} from '../../selectors/global';\nimport {updateAcl} from '../../../utils/acl/acl-api';\nimport {IdmObjectType} from '../../../constants/acl';\nimport Link from '../../../components/Link/Link';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {createAdminReqTicketUrl} from '../../../config';\n\ntype CreatePoolDialogThunkAction<R = any> = ThunkAction<\n R,\n RootState,\n unknown,\n CreatePoolDialogAction\n>;\n\nexport function fetchCreatePoolDialogTreeItems(currentTree: string): CreatePoolDialogThunkAction {\n return (dispatch) => {\n return ytApiV3Id\n .get(YTApiId.getPoolTrees, {path: `//sys/pool_trees/${currentTree}`})\n .then((treeItems: CreatePoolDialogState['treeItems']) => {\n dispatch({\n type: CREATE_POOL_DIALOG_TREE_ITEMS_SUCCESS,\n data: {currentTree, treeItems},\n });\n });\n };\n}\n\nexport function createPool(values: FIX_MY_TYPE): CreatePoolDialogThunkAction {\n return (dispatch, getState) => {\n const {abcService} = values;\n const cluster = getCluster(getState()) as string;\n\n return wrapApiPromiseByToaster(\n yt.v3.create({\n type: 'scheduler_pool',\n attributes: Object.assign(\n {\n name: values.name,\n parent_name: values.parent,\n pool_tree: values.tree,\n },\n !abcService || !abcService.value\n ? {}\n : {\n abc: prepareAbcService(abcService),\n },\n ),\n }),\n {\n toasterName: `create_${values.name}`,\n successContent: `Successfully created ${values.name}. Please wait.`,\n errorContent: `'${values.name}' pool creation failed`,\n timeout: 10000,\n },\n )\n .then(() => {\n updateAcl(cluster, values.name, {\n idmKind: IdmObjectType.POOL,\n poolTree: values.tree,\n responsible: values.responsible,\n });\n\n return waitWhilePoolIsReady(values).then(() => {\n dispatch(loadSchedulingData());\n });\n })\n .catch((error) => {\n if (error?.code === yt.codes.CANCELLED) {\n return;\n }\n\n dispatch({\n type: CREATE_POOL_DIALOG_TREE_CREATE_FAILURE,\n data: error,\n });\n\n return Promise.reject(error);\n });\n };\n}\n\nconst {url: createUrl, queue} = createAdminReqTicketUrl();\n\nconst CHECK_REDINESS_TIMEOUT = 1500;\nconst MAX_POOL_REDINESS_TIMEOUT = 10 * 1000; // the value is provided by @renadeen\nconst TIMEOUT_ERROR = {\n message: (\n <div>\n The pool was not appeared in orchidea in 10 seconds.\n {createUrl ? (\n <>\n Please fill a ticket for <Link url={createUrl}>{queue}</Link>\n </>\n ) : (\n \"Please report it to the cluster's support team.\"\n )}\n .\n </div>\n ),\n};\n\nfunction waitWhilePoolIsReady({name, tree}: {name: string; tree: string}, startedAt = 0) {\n const startedTime = startedAt || Date.now();\n const diff = Date.now() - startedTime;\n if (diff > MAX_POOL_REDINESS_TIMEOUT) {\n return Promise.resolve();\n }\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n yt.v3\n .exists({\n path: `//sys/scheduler/orchid/scheduler/scheduling_info_per_pool_tree/${tree}/fair_share_info/pools/${name}`,\n })\n .then((res: boolean) => {\n if (res) {\n return resolve(true);\n } else {\n return resolve(waitWhilePoolIsReady({name, tree}, startedTime));\n }\n })\n .catch((error: unknown) => {\n if (error !== TIMEOUT_ERROR) {\n return resolve(waitWhilePoolIsReady({name, tree}, startedTime));\n }\n\n return reject(error);\n });\n }, CHECK_REDINESS_TIMEOUT);\n });\n}\n"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["React","CREATE_POOL_DIALOG_TREE_CREATE_FAILURE","CREATE_POOL_DIALOG_TREE_ITEMS_SUCCESS","yt","prepareAbcService","wrapApiPromiseByToaster","loadSchedulingData","getCluster","updateAcl","IdmObjectType","Link","YTApiId","ytApiV3Id","createAdminReqTicketUrl","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","fetchCreatePoolDialogTreeItems","currentTree","dispatch","get","getPoolTrees","path","concat","then","treeItems","type","data","createPool","values","getState","abcService","cluster","v3","create","attributes","Object","assign","name","parent_name","parent","pool_tree","tree","value","abc","toasterName","successContent","errorContent","timeout","idmKind","POOL","poolTree","responsible","waitWhilePoolIsReady","error","code","codes","CANCELLED","Promise","reject","_createAdminReqTicket","createUrl","url","queue","CHECK_REDINESS_TIMEOUT","MAX_POOL_REDINESS_TIMEOUT","TIMEOUT_ERROR","message","children","_ref","startedAt","arguments","length","undefined","startedTime","Date","now","diff","resolve","setTimeout","exists","res"],"sources":["create-pool-dialog.tsx"],"sourcesContent":["import React from 'react';\nimport {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../reducers';\nimport {\n CreatePoolDialogAction,\n CreatePoolDialogState,\n} from '../../reducers/scheduling/create-pool-dialog';\nimport {\n CREATE_POOL_DIALOG_TREE_CREATE_FAILURE,\n CREATE_POOL_DIALOG_TREE_ITEMS_SUCCESS,\n} from '../../../constants/scheduling';\n// @ts-ignore\nimport yt from '@ytsaurus/javascript-wrapper/lib/yt';\nimport {prepareAbcService} from '../../../utils/scheduling';\nimport {wrapApiPromiseByToaster} from '../../../utils/utils';\nimport {loadSchedulingData} from './scheduling-ts';\nimport {FIX_MY_TYPE} from '../../../types';\nimport {getCluster} from '../../selectors/global';\nimport {updateAcl} from '../../../utils/acl/acl-api';\nimport {IdmObjectType} from '../../../constants/acl';\nimport Link from '../../../components/Link/Link';\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {createAdminReqTicketUrl} from '../../../config';\n\ntype CreatePoolDialogThunkAction<R = any> = ThunkAction<\n R,\n RootState,\n unknown,\n CreatePoolDialogAction\n>;\n\nexport function fetchCreatePoolDialogTreeItems(currentTree: string): CreatePoolDialogThunkAction {\n return (dispatch) => {\n return ytApiV3Id\n .get(YTApiId.getPoolTrees, {path: `//sys/pool_trees/${currentTree}`})\n .then((treeItems: CreatePoolDialogState['treeItems']) => {\n dispatch({\n type: CREATE_POOL_DIALOG_TREE_ITEMS_SUCCESS,\n data: {currentTree, treeItems},\n });\n });\n };\n}\n\nexport function createPool(values: FIX_MY_TYPE): CreatePoolDialogThunkAction {\n return (dispatch, getState) => {\n const {abcService} = values;\n const cluster = getCluster(getState()) as string;\n\n return wrapApiPromiseByToaster(\n yt.v3.create({\n type: 'scheduler_pool',\n attributes: Object.assign(\n {\n name: values.name,\n parent_name: values.parent,\n pool_tree: values.tree,\n },\n !abcService || !abcService.value\n ? {}\n : {\n abc: prepareAbcService(abcService),\n },\n ),\n }),\n {\n toasterName: `create_${values.name}`,\n successContent: `Successfully created ${values.name}. Please wait.`,\n errorContent: `'${values.name}' pool creation failed`,\n timeout: 10000,\n },\n )\n .then(() => {\n updateAcl(cluster, values.name, {\n idmKind: IdmObjectType.POOL,\n poolTree: values.tree,\n responsible: values.responsible,\n });\n\n return waitWhilePoolIsReady(values).then(() => {\n dispatch(loadSchedulingData());\n });\n })\n .catch((error) => {\n if (error?.code === yt.codes.CANCELLED) {\n return;\n }\n\n dispatch({\n type: CREATE_POOL_DIALOG_TREE_CREATE_FAILURE,\n data: error,\n });\n\n return Promise.reject(error);\n });\n };\n}\n\nconst {url: createUrl, queue} = createAdminReqTicketUrl();\n\nconst CHECK_REDINESS_TIMEOUT = 1500;\nconst MAX_POOL_REDINESS_TIMEOUT = 10 * 1000; // the value is provided by @renadeen\nconst TIMEOUT_ERROR = {\n message: (\n <div>\n The pool was not appeared in orchidea in 10 seconds.\n {createUrl ? (\n <>\n Please fill a ticket for <Link url={createUrl}>{queue}</Link>\n </>\n ) : (\n \"Please report it to the cluster's support team.\"\n )}\n .\n </div>\n ),\n};\n\nfunction waitWhilePoolIsReady({name, tree}: {name: string; tree: string}, startedAt = 0) {\n const startedTime = startedAt || Date.now();\n const diff = Date.now() - startedTime;\n if (diff > MAX_POOL_REDINESS_TIMEOUT) {\n return Promise.resolve();\n }\n\n return new Promise((resolve, reject) => {\n setTimeout(() => {\n yt.v3\n .exists({\n path: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/pools/${name}`,\n })\n .then((res: boolean) => {\n if (res) {\n return resolve(true);\n } else {\n return resolve(waitWhilePoolIsReady({name, tree}, startedTime));\n }\n })\n .catch((error: unknown) => {\n if (error !== TIMEOUT_ERROR) {\n return resolve(waitWhilePoolIsReady({name, tree}, startedTime));\n }\n\n return reject(error);\n });\n }, CHECK_REDINESS_TIMEOUT);\n });\n}\n"],"mappings":"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"}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { ThunkAction } from 'redux-thunk';
|
2
|
+
import { RootState } from '../../reducers';
|
3
|
+
import { ExpandedPoolsAction } from '../../reducers/scheduling/expanded-pools';
|
4
|
+
import { SchedulingAction } from '../../../store/reducers/scheduling/scheduling';
|
5
|
+
type ExpandedPoolsThunkAction = ThunkAction<any, RootState, any, ExpandedPoolsAction | SchedulingAction>;
|
6
|
+
export declare function loadExpandedPools(tree: string): ExpandedPoolsThunkAction;
|
7
|
+
export declare function setExpandedPool(poolName: string, expanded: boolean): ExpandedPoolsThunkAction;
|
8
|
+
export declare function resetExpandedPools(tree: string): ExpandedPoolsThunkAction;
|
9
|
+
export declare function getSchedulingOperationsCount(): ThunkAction<number, RootState, any, any>;
|
10
|
+
export declare function getPoolPathsByName(poolName: string): ThunkAction<{
|
11
|
+
fullPath: string;
|
12
|
+
orchidPath: string;
|
13
|
+
}, RootState, unknown, any>;
|
14
|
+
export declare function setLoadAllOperations(loadAll: boolean): ExpandedPoolsThunkAction;
|
15
|
+
export {};
|
@@ -0,0 +1,363 @@
|
|
1
|
+
import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
|
2
|
+
import _toPropertyKey from "@babel/runtime/helpers/toPropertyKey";
|
3
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
4
|
+
import _objectSpread from "@babel/runtime/helpers/objectSpread2";
|
5
|
+
import _reduce from "lodash/reduce";
|
6
|
+
import _toConsumableArray from "@babel/runtime/helpers/toConsumableArray";
|
7
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
8
|
+
import _createClass from "@babel/runtime/helpers/createClass";
|
9
|
+
import _classCallCheck from "@babel/runtime/helpers/classCallCheck";
|
10
|
+
import _inherits from "@babel/runtime/helpers/inherits";
|
11
|
+
import _createSuper from "@babel/runtime/helpers/createSuper";
|
12
|
+
import _wrapNativeSuper from "@babel/runtime/helpers/wrapNativeSuper";
|
13
|
+
import { Toaster } from '@gravity-ui/uikit';
|
14
|
+
import { YTApiId, ytApiV3Id } from '../../../rum/rum-wrap-api';
|
15
|
+
import { splitBatchResults } from '../../../utils/utils';
|
16
|
+
import { makeGet, makeList } from '../../../utils/batch';
|
17
|
+
import { CHANGE_POOL, ROOT_POOL_NAME, SCHEDULING_EXPANDED_POOLS_FAILURE, SCHEDULING_EXPANDED_POOLS_PARTITION, SCHEDULING_EXPANDED_POOLS_REQUEST, SCHEDULING_EXPANDED_POOLS_SUCCESS } from '../../../constants/scheduling';
|
18
|
+
import { calculatePoolPath, getPool, getPools, getTree } from '../../selectors/scheduling/scheduling';
|
19
|
+
import { getExpandedPoolsLoadAll, getSchedulingOperationsExpandedPools } from '../../selectors/scheduling/expanded-pools';
|
20
|
+
import { EMPTY_OBJECT } from '../../../constants/empty';
|
21
|
+
import { getSchedulingPoolsMapByName } from '../../selectors/scheduling/scheduling-pools';
|
22
|
+
import { isSupportedSchedulingChildrenByPool } from '../../../store/selectors/thor/support';
|
23
|
+
import CancelHelper, { isCancelled } from '../../../utils/cancel-helper';
|
24
|
+
import { flattenAttributes } from '../../../utils/scheduling/scheduling';
|
25
|
+
var cancelHelper = new CancelHelper();
|
26
|
+
var POOL_FIELDS_TO_LOAD = ['accumulated_resource_ratio_volume', 'accumulated_resource_volume', 'demand_ratio', 'detailed_fair_share', 'dominant_resource', 'estimated_burst_usage_duration_sec', 'fair_share_ratio', 'fifo_index', 'integral_guarantee_type', 'is_ephemeral', 'max_operation_count', 'max_running_operation_count', 'max_share_ratio', 'min_share_ratio', 'mode', 'operation_count', 'parent', 'pool_operation_count', 'child_pool_count', 'resource_demand', 'resource_limits', 'resource_usage', 'promised_fair_share_resources', 'running_operation_count', 'specified_burst_guarantee_resources', 'specified_resource_flow', 'starvation_status', 'starving', 'strong_guarantee_resources', 'usage_ratio', 'weight', 'abc'];
|
27
|
+
var POOL_TREE_GET_ATTRS = ['integral_guarantees', 'weight', 'max_operation_count', 'max_running_operation_count', 'strong_guarantee_resources', 'resource_limits', 'forbid_immediate_operations', 'create_ephemeral_subpools', 'fifo_sort_parameters', 'config', 'folder_id'];
|
28
|
+
var EmptyFullPath = /*#__PURE__*/function (_Error) {
|
29
|
+
_inherits(EmptyFullPath, _Error);
|
30
|
+
var _super = _createSuper(EmptyFullPath);
|
31
|
+
function EmptyFullPath() {
|
32
|
+
_classCallCheck(this, EmptyFullPath);
|
33
|
+
return _super.apply(this, arguments);
|
34
|
+
}
|
35
|
+
return _createClass(EmptyFullPath);
|
36
|
+
}( /*#__PURE__*/_wrapNativeSuper(Error));
|
37
|
+
export function loadExpandedPools(tree) {
|
38
|
+
return function (dispatch, getState) {
|
39
|
+
var pool = getPool(getState());
|
40
|
+
if (!tree) {
|
41
|
+
return undefined;
|
42
|
+
}
|
43
|
+
if (pool === ROOT_POOL_NAME) {
|
44
|
+
return dispatch(loadExpandedOperationsAndPools(tree));
|
45
|
+
} else {
|
46
|
+
return ytApiV3Id.executeBatch(YTApiId.schedulingPoolFullPath, {
|
47
|
+
requests: [{
|
48
|
+
command: 'get',
|
49
|
+
parameters: {
|
50
|
+
path: "//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/pools/").concat(pool),
|
51
|
+
fields: ['is_ephemeral', 'full_path']
|
52
|
+
}
|
53
|
+
}]
|
54
|
+
}).then(function (_ref) {
|
55
|
+
var _ref2 = _slicedToArray(_ref, 1),
|
56
|
+
output = _ref2[0].output;
|
57
|
+
var _ref3 = output !== null && output !== void 0 ? output : {},
|
58
|
+
full_path = _ref3.full_path,
|
59
|
+
is_ephemeral = _ref3.is_ephemeral;
|
60
|
+
if (!full_path) {
|
61
|
+
throw new EmptyFullPath();
|
62
|
+
} else {
|
63
|
+
dispatch(addFullPathToExpandedPoolsNoLoad(tree, full_path, is_ephemeral));
|
64
|
+
dispatch(loadExpandedOperationsAndPools(tree));
|
65
|
+
}
|
66
|
+
})["catch"](function (e) {
|
67
|
+
if (e instanceof EmptyFullPath) {
|
68
|
+
dispatch({
|
69
|
+
type: CHANGE_POOL,
|
70
|
+
data: {
|
71
|
+
pool: ROOT_POOL_NAME
|
72
|
+
}
|
73
|
+
});
|
74
|
+
/**
|
75
|
+
* We don't need to call `dispatch(loadExpandedOperationsAndPools(tree))` after `CHANGE_POOL`.
|
76
|
+
* The call will be triggered by SchedulingExpandedPoolsUpdater.
|
77
|
+
*/
|
78
|
+
// dispatch(loadExpandedOperationsAndPools(tree));
|
79
|
+
} else {
|
80
|
+
new Toaster().add({
|
81
|
+
name: 'schedulingPoolFullPath',
|
82
|
+
type: 'error',
|
83
|
+
title: ''
|
84
|
+
});
|
85
|
+
}
|
86
|
+
});
|
87
|
+
}
|
88
|
+
};
|
89
|
+
}
|
90
|
+
function loadExpandedOperationsAndPools(tree) {
|
91
|
+
return function (dispatch, getState) {
|
92
|
+
var _getSchedulingOperati;
|
93
|
+
var state = getState();
|
94
|
+
var loadAll = getExpandedPoolsLoadAll(state);
|
95
|
+
var expandedPools = loadAll ? new Map() : (_getSchedulingOperati = getSchedulingOperationsExpandedPools(state)[tree]) !== null && _getSchedulingOperati !== void 0 ? _getSchedulingOperati : new Map();
|
96
|
+
var expandedPoolNames = _toConsumableArray(expandedPools.keys());
|
97
|
+
var operationsExpandedPools = _toConsumableArray(expandedPoolNames);
|
98
|
+
var operationsRequests = [];
|
99
|
+
if (loadAll) {
|
100
|
+
operationsRequests.push(makeGet("//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/fair_share_info/operations")));
|
101
|
+
} else {
|
102
|
+
var prefix = "//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/operations_by_pool");
|
103
|
+
operationsExpandedPools.forEach(function (item) {
|
104
|
+
operationsRequests.push(makeGet("".concat(prefix, "/").concat(item)));
|
105
|
+
});
|
106
|
+
}
|
107
|
+
var loadAllPools = loadAll || !isSupportedSchedulingChildrenByPool(state);
|
108
|
+
var poolsRequests = [];
|
109
|
+
var poolsChildrenRequests = [];
|
110
|
+
var poolsCypressDataRequests = [];
|
111
|
+
var poolsExpandedPools = -1 !== expandedPoolNames.indexOf(ROOT_POOL_NAME) ? expandedPoolNames : [ROOT_POOL_NAME].concat(_toConsumableArray(expandedPoolNames));
|
112
|
+
if (loadAllPools) {
|
113
|
+
poolsRequests.push(makeGet("//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/pools"), {
|
114
|
+
fields: POOL_FIELDS_TO_LOAD
|
115
|
+
}));
|
116
|
+
poolsCypressDataRequests.push(makeGet("//sys/pool_trees/".concat(tree), {
|
117
|
+
attributes: POOL_TREE_GET_ATTRS
|
118
|
+
}));
|
119
|
+
} else {
|
120
|
+
poolsExpandedPools.forEach(function (pool) {
|
121
|
+
var _expandedPools$get;
|
122
|
+
poolsRequests.push(makeGet("//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/pools/").concat(pool), {
|
123
|
+
fields: POOL_FIELDS_TO_LOAD
|
124
|
+
}));
|
125
|
+
poolsChildrenRequests.push(makeGet("//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/child_pools_by_pool/").concat(pool), {
|
126
|
+
fields: POOL_FIELDS_TO_LOAD
|
127
|
+
}));
|
128
|
+
var _ref4 = (_expandedPools$get = expandedPools.get(pool)) !== null && _expandedPools$get !== void 0 ? _expandedPools$get : {},
|
129
|
+
parentPoolPath = _ref4.parentPoolPath,
|
130
|
+
isEphemeral = _ref4.isEphemeral;
|
131
|
+
var cypressDataPath = parentPoolPath ? "//sys/pool_trees/".concat(tree, "/").concat(parentPoolPath, "/").concat(pool) : "//sys/pool_trees/".concat(tree, "/").concat(pool);
|
132
|
+
if (pool === ROOT_POOL_NAME || !isEphemeral) {
|
133
|
+
poolsCypressDataRequests.push(makeList(pool === ROOT_POOL_NAME ? "//sys/pool_trees/".concat(tree) : cypressDataPath, {
|
134
|
+
attributes: POOL_TREE_GET_ATTRS
|
135
|
+
}));
|
136
|
+
}
|
137
|
+
});
|
138
|
+
}
|
139
|
+
cancelHelper.removeAllRequests();
|
140
|
+
dispatch({
|
141
|
+
type: SCHEDULING_EXPANDED_POOLS_REQUEST
|
142
|
+
});
|
143
|
+
return Promise.all([operationsRequests.length ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadOperationsPerPool, {
|
144
|
+
parameters: {
|
145
|
+
requests: operationsRequests
|
146
|
+
},
|
147
|
+
cancellation: cancelHelper.saveCancelToken
|
148
|
+
}) : Promise.resolve([]), loadAllPools ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsAll, {
|
149
|
+
parameters: {
|
150
|
+
requests: poolsRequests
|
151
|
+
},
|
152
|
+
cancellation: cancelHelper.saveCancelToken
|
153
|
+
}) : ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsPerPool, {
|
154
|
+
parameters: {
|
155
|
+
requests: poolsRequests
|
156
|
+
},
|
157
|
+
cancellation: cancelHelper.saveCancelToken
|
158
|
+
}), loadAllPools ? Promise.resolve([]) : ytApiV3Id.executeBatch(YTApiId.schedulingLoadChildrenPerPool, {
|
159
|
+
parameters: {
|
160
|
+
requests: poolsChildrenRequests
|
161
|
+
},
|
162
|
+
cancellation: cancelHelper.saveCancelToken
|
163
|
+
}), !poolsCypressDataRequests.length ? Promise.resolve([]) : ytApiV3Id.executeBatch(YTApiId.schedulingLoadCypressDataPerPool, {
|
164
|
+
parameters: {
|
165
|
+
requests: poolsCypressDataRequests
|
166
|
+
},
|
167
|
+
cancellation: cancelHelper.saveCancelToken
|
168
|
+
})]).then(function (_ref5) {
|
169
|
+
var _error$inner_errors;
|
170
|
+
var _ref6 = _slicedToArray(_ref5, 4),
|
171
|
+
operationsResults = _ref6[0],
|
172
|
+
poolsResults = _ref6[1],
|
173
|
+
poolsChildrenResults = _ref6[2],
|
174
|
+
poolsCypressData = _ref6[3];
|
175
|
+
var error = {
|
176
|
+
message: 'Failed to load expanded pools'
|
177
|
+
};
|
178
|
+
var _splitBatchResults = splitBatchResults(operationsResults, error),
|
179
|
+
operations = _splitBatchResults.results;
|
180
|
+
var rawOperations = _reduce(operations, function (acc, data) {
|
181
|
+
return Object.assign(acc, data);
|
182
|
+
}, {});
|
183
|
+
var rawPools = {};
|
184
|
+
var cypressData = {};
|
185
|
+
if (loadAllPools) {
|
186
|
+
var _splitBatchResults2 = splitBatchResults(poolsResults, error),
|
187
|
+
pools = _splitBatchResults2.results;
|
188
|
+
var _ref7 = pools !== null && pools !== void 0 ? pools : [],
|
189
|
+
_ref8 = _slicedToArray(_ref7, 1),
|
190
|
+
_ref8$ = _ref8[0],
|
191
|
+
value = _ref8$ === void 0 ? {} : _ref8$;
|
192
|
+
Object.assign(rawPools, value);
|
193
|
+
var _splitBatchResults3 = splitBatchResults(poolsCypressData, error),
|
194
|
+
_splitBatchResults3$r = _slicedToArray(_splitBatchResults3.results, 1),
|
195
|
+
data = _splitBatchResults3$r[0];
|
196
|
+
Object.assign(cypressData, flattenAttributes(data));
|
197
|
+
} else {
|
198
|
+
var _splitBatchResults4 = splitBatchResults(poolsResults, error),
|
199
|
+
_pools = _splitBatchResults4.results,
|
200
|
+
resultIndices = _splitBatchResults4.resultIndices;
|
201
|
+
_pools.forEach(function (poolInfo, index) {
|
202
|
+
var name = poolsExpandedPools[resultIndices[index]];
|
203
|
+
rawPools[name] = poolInfo;
|
204
|
+
});
|
205
|
+
var _splitBatchResults5 = splitBatchResults(poolsChildrenResults, error),
|
206
|
+
poolChildren = _splitBatchResults5.results;
|
207
|
+
poolChildren.forEach(function (children) {
|
208
|
+
Object.assign(rawPools, children);
|
209
|
+
});
|
210
|
+
var _splitBatchResults6 = splitBatchResults(poolsCypressData, error),
|
211
|
+
cypressDataChildrenPerPool = _splitBatchResults6.results;
|
212
|
+
cypressDataChildrenPerPool.forEach(function (poolChildrenCypressData) {
|
213
|
+
poolChildrenCypressData.forEach(function (item) {
|
214
|
+
cypressData[item.$value] = item;
|
215
|
+
});
|
216
|
+
});
|
217
|
+
}
|
218
|
+
dispatch({
|
219
|
+
type: SCHEDULING_EXPANDED_POOLS_SUCCESS,
|
220
|
+
data: {
|
221
|
+
expandedPoolsTree: tree,
|
222
|
+
rawOperations: Object.keys(rawOperations).length ? rawOperations : EMPTY_OBJECT,
|
223
|
+
rawPools: Object.keys(rawPools).length ? rawPools : EMPTY_OBJECT,
|
224
|
+
flattenCypressData: Object.keys(cypressData).length ? cypressData : EMPTY_OBJECT
|
225
|
+
}
|
226
|
+
});
|
227
|
+
if ((_error$inner_errors = error.inner_errors) !== null && _error$inner_errors !== void 0 && _error$inner_errors.length) {
|
228
|
+
throw error;
|
229
|
+
}
|
230
|
+
})["catch"](function (error) {
|
231
|
+
if (!isCancelled(error)) {
|
232
|
+
dispatch({
|
233
|
+
type: SCHEDULING_EXPANDED_POOLS_FAILURE,
|
234
|
+
data: {
|
235
|
+
error: error
|
236
|
+
}
|
237
|
+
});
|
238
|
+
}
|
239
|
+
});
|
240
|
+
};
|
241
|
+
}
|
242
|
+
export function setExpandedPool(poolName, expanded) {
|
243
|
+
return function (dispatch, getState) {
|
244
|
+
var state = getState();
|
245
|
+
var tree = getTree(getState());
|
246
|
+
var expandedPools = getSchedulingOperationsExpandedPools(state);
|
247
|
+
var poolsByName = getSchedulingPoolsMapByName(state);
|
248
|
+
var treeExpandedPools = new Map(expandedPools[tree]);
|
249
|
+
if (expanded) {
|
250
|
+
var expandedPoolInfo = calcExpandedPoolInfo(poolName, poolsByName);
|
251
|
+
treeExpandedPools.set(poolName, expandedPoolInfo);
|
252
|
+
} else {
|
253
|
+
treeExpandedPools["delete"](poolName);
|
254
|
+
}
|
255
|
+
dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));
|
256
|
+
dispatch(loadExpandedPools(tree));
|
257
|
+
};
|
258
|
+
}
|
259
|
+
function addFullPathToExpandedPoolsNoLoad(tree,
|
260
|
+
/**
|
261
|
+
* elements of the array should have the same format as `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}/full_path`
|
262
|
+
*/
|
263
|
+
fullPath, isEphemeral) {
|
264
|
+
return function (dispatch, getState) {
|
265
|
+
var state = getState();
|
266
|
+
var oldExpandedPools = getSchedulingOperationsExpandedPools(state);
|
267
|
+
var treeExpandedPools = new Map(oldExpandedPools[tree]);
|
268
|
+
|
269
|
+
/**
|
270
|
+
* `fullPath` value starts from `/`, example: `/mypool/child/subchild`
|
271
|
+
* so we have to use `.slice(1)` to remove first empty string
|
272
|
+
*/
|
273
|
+
var parts = fullPath.split('/').slice(1);
|
274
|
+
for (var i = 0; i < parts.length; ++i) {
|
275
|
+
var poolName = parts[i];
|
276
|
+
var parentPoolPath = parts.slice(0, i).join('/');
|
277
|
+
treeExpandedPools.set(poolName, {
|
278
|
+
parentPoolPath: parentPoolPath,
|
279
|
+
isEphemeral: isEphemeral
|
280
|
+
});
|
281
|
+
}
|
282
|
+
dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));
|
283
|
+
};
|
284
|
+
}
|
285
|
+
function updateExpandedPoolNoLoad(tree, treeExpandedPools) {
|
286
|
+
return function (dispatch, getState) {
|
287
|
+
var oldExpandedPools = getSchedulingOperationsExpandedPools(getState());
|
288
|
+
var expandedPools = _objectSpread(_objectSpread({}, oldExpandedPools), {}, _defineProperty({}, tree, treeExpandedPools));
|
289
|
+
dispatch({
|
290
|
+
type: SCHEDULING_EXPANDED_POOLS_PARTITION,
|
291
|
+
data: {
|
292
|
+
expandedPools: expandedPools
|
293
|
+
}
|
294
|
+
});
|
295
|
+
};
|
296
|
+
}
|
297
|
+
export function resetExpandedPools(tree) {
|
298
|
+
return function (dispatch, getState) {
|
299
|
+
if (!tree) {
|
300
|
+
return;
|
301
|
+
}
|
302
|
+
var state = getState();
|
303
|
+
var _getSchedulingOperati2 = getSchedulingOperationsExpandedPools(state),
|
304
|
+
old = _getSchedulingOperati2[tree],
|
305
|
+
rest = _objectWithoutProperties(_getSchedulingOperati2, [tree].map(_toPropertyKey));
|
306
|
+
if (old !== null && old !== void 0 && old.size) {
|
307
|
+
dispatch({
|
308
|
+
type: SCHEDULING_EXPANDED_POOLS_PARTITION,
|
309
|
+
data: {
|
310
|
+
expandedPools: _objectSpread(_objectSpread({}, rest), {}, _defineProperty({}, tree, new Map()))
|
311
|
+
}
|
312
|
+
});
|
313
|
+
}
|
314
|
+
};
|
315
|
+
}
|
316
|
+
export function getSchedulingOperationsCount() {
|
317
|
+
return function (_dispatch, getState) {
|
318
|
+
var state = getState();
|
319
|
+
var tree = getSchedulingPoolsMapByName(state);
|
320
|
+
var root = tree[ROOT_POOL_NAME];
|
321
|
+
return (root === null || root === void 0 ? void 0 : root.operationCount) || 0;
|
322
|
+
};
|
323
|
+
}
|
324
|
+
export function getPoolPathsByName(poolName) {
|
325
|
+
return function (_dispatch, getState) {
|
326
|
+
var state = getState();
|
327
|
+
var pools = getPools(state);
|
328
|
+
var tree = getTree(state);
|
329
|
+
return {
|
330
|
+
fullPath: calculatePoolPath(poolName, pools, tree),
|
331
|
+
orchidPath: "//sys/scheduler/orchid/scheduler/pool_trees/".concat(tree, "/fair_share_info/pools/").concat(poolName)
|
332
|
+
};
|
333
|
+
};
|
334
|
+
}
|
335
|
+
export function setLoadAllOperations(loadAll) {
|
336
|
+
return function (dispatch, getState) {
|
337
|
+
var state = getState();
|
338
|
+
dispatch({
|
339
|
+
type: SCHEDULING_EXPANDED_POOLS_PARTITION,
|
340
|
+
data: {
|
341
|
+
loadAll: loadAll
|
342
|
+
}
|
343
|
+
});
|
344
|
+
var tree = getTree(state);
|
345
|
+
dispatch(loadExpandedPools(tree));
|
346
|
+
};
|
347
|
+
}
|
348
|
+
function calcExpandedPoolInfo(poolName, poolsByName) {
|
349
|
+
var _data;
|
350
|
+
var data = poolsByName[poolName];
|
351
|
+
var isEphemeral = (_data = data) === null || _data === void 0 ? void 0 : _data.isEphemeral;
|
352
|
+
var res = '';
|
353
|
+
while ((_data2 = data) !== null && _data2 !== void 0 && _data2.parent && data.parent !== ROOT_POOL_NAME) {
|
354
|
+
var _data2;
|
355
|
+
res = res ? "".concat(data.parent, "/").concat(res) : data.parent;
|
356
|
+
data = poolsByName[data.parent];
|
357
|
+
}
|
358
|
+
return {
|
359
|
+
parentPoolPath: res,
|
360
|
+
isEphemeral: isEphemeral
|
361
|
+
};
|
362
|
+
}
|
363
|
+
// #sourceMappingURL=expanded-pools.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"names":["Toaster","YTApiId","ytApiV3Id","splitBatchResults","makeGet","makeList","CHANGE_POOL","ROOT_POOL_NAME","SCHEDULING_EXPANDED_POOLS_FAILURE","SCHEDULING_EXPANDED_POOLS_PARTITION","SCHEDULING_EXPANDED_POOLS_REQUEST","SCHEDULING_EXPANDED_POOLS_SUCCESS","calculatePoolPath","getPool","getPools","getTree","getExpandedPoolsLoadAll","getSchedulingOperationsExpandedPools","EMPTY_OBJECT","getSchedulingPoolsMapByName","isSupportedSchedulingChildrenByPool","CancelHelper","isCancelled","flattenAttributes","cancelHelper","POOL_FIELDS_TO_LOAD","POOL_TREE_GET_ATTRS","EmptyFullPath","_Error","_inherits","_super","_createSuper","_classCallCheck","apply","arguments","_createClass","_wrapNativeSuper","Error","loadExpandedPools","tree","dispatch","getState","pool","undefined","loadExpandedOperationsAndPools","executeBatch","schedulingPoolFullPath","requests","command","parameters","path","concat","fields","then","_ref","_ref2","_slicedToArray","output","_ref3","full_path","is_ephemeral","addFullPathToExpandedPoolsNoLoad","e","type","data","add","name","title","_getSchedulingOperati","state","loadAll","expandedPools","Map","expandedPoolNames","_toConsumableArray","keys","operationsExpandedPools","operationsRequests","push","prefix","forEach","item","loadAllPools","poolsRequests","poolsChildrenRequests","poolsCypressDataRequests","poolsExpandedPools","indexOf","attributes","_expandedPools$get","_ref4","get","parentPoolPath","isEphemeral","cypressDataPath","removeAllRequests","Promise","all","length","schedulingLoadOperationsPerPool","cancellation","saveCancelToken","resolve","schedulingLoadPoolsAll","schedulingLoadPoolsPerPool","schedulingLoadChildrenPerPool","schedulingLoadCypressDataPerPool","_ref5","_error$inner_errors","_ref6","operationsResults","poolsResults","poolsChildrenResults","poolsCypressData","error","message","_splitBatchResults","operations","results","rawOperations","_reduce","acc","Object","assign","rawPools","cypressData","_splitBatchResults2","pools","_ref7","_ref8","_ref8$","value","_splitBatchResults3","_splitBatchResults3$r","_splitBatchResults4","resultIndices","poolInfo","index","_splitBatchResults5","poolChildren","children","_splitBatchResults6","cypressDataChildrenPerPool","poolChildrenCypressData","$value","expandedPoolsTree","flattenCypressData","inner_errors","setExpandedPool","poolName","expanded","poolsByName","treeExpandedPools","expandedPoolInfo","calcExpandedPoolInfo","set","updateExpandedPoolNoLoad","fullPath","oldExpandedPools","parts","split","slice","i","join","_objectSpread","_defineProperty","resetExpandedPools","_getSchedulingOperati2","old","rest","_objectWithoutProperties","map","_toPropertyKey","size","getSchedulingOperationsCount","_dispatch","root","operationCount","getPoolPathsByName","orchidPath","setLoadAllOperations","_data","res","_data2","parent"],"sources":["expanded-pools.tsx"],"sourcesContent":["import {ThunkAction} from 'redux-thunk';\nimport {RootState} from '../../reducers';\nimport _ from 'lodash';\n\nimport {Toaster} from '@gravity-ui/uikit';\n\nimport {\n ExpandedPoolInfo,\n ExpandedPoolsAction,\n PoolCypressData,\n} from '../../reducers/scheduling/expanded-pools';\n\nimport {YTApiId, ytApiV3Id} from '../../../rum/rum-wrap-api';\nimport {splitBatchResults} from '../../../utils/utils';\nimport {makeGet, makeList} from '../../../utils/batch';\nimport {\n CHANGE_POOL,\n ROOT_POOL_NAME,\n SCHEDULING_EXPANDED_POOLS_FAILURE,\n SCHEDULING_EXPANDED_POOLS_PARTITION,\n SCHEDULING_EXPANDED_POOLS_REQUEST,\n SCHEDULING_EXPANDED_POOLS_SUCCESS,\n} from '../../../constants/scheduling';\nimport {calculatePoolPath, getPool, getPools, getTree} from '../../selectors/scheduling/scheduling';\nimport {\n getExpandedPoolsLoadAll,\n getSchedulingOperationsExpandedPools,\n} from '../../selectors/scheduling/expanded-pools';\nimport {EMPTY_OBJECT} from '../../../constants/empty';\nimport {PoolInfo, getSchedulingPoolsMapByName} from '../../selectors/scheduling/scheduling-pools';\nimport {BatchSubRequest} from '../../../../shared/yt-types';\nimport {SchedulingAction} from '../../../store/reducers/scheduling/scheduling';\nimport {isSupportedSchedulingChildrenByPool} from '../../../store/selectors/thor/support';\nimport {YTError} from '../../../../@types/types';\nimport CancelHelper, {isCancelled} from '../../../utils/cancel-helper';\nimport {flattenAttributes} from '../../../utils/scheduling/scheduling';\n\ntype ExpandedPoolsThunkAction = ThunkAction<\n any,\n RootState,\n any,\n ExpandedPoolsAction | SchedulingAction\n>;\n\nconst cancelHelper = new CancelHelper();\n\nconst POOL_FIELDS_TO_LOAD = [\n 'accumulated_resource_ratio_volume',\n 'accumulated_resource_volume',\n 'demand_ratio',\n 'detailed_fair_share',\n 'dominant_resource',\n 'estimated_burst_usage_duration_sec',\n 'fair_share_ratio',\n 'fifo_index',\n 'integral_guarantee_type',\n 'is_ephemeral',\n 'max_operation_count',\n 'max_running_operation_count',\n 'max_share_ratio',\n 'min_share_ratio',\n 'mode',\n 'operation_count',\n 'parent',\n 'pool_operation_count',\n 'child_pool_count',\n 'resource_demand',\n 'resource_limits',\n 'resource_usage',\n 'promised_fair_share_resources',\n 'running_operation_count',\n 'specified_burst_guarantee_resources',\n 'specified_resource_flow',\n 'starvation_status',\n 'starving',\n 'strong_guarantee_resources',\n 'usage_ratio',\n 'weight',\n 'abc',\n];\n\nconst POOL_TREE_GET_ATTRS = [\n 'integral_guarantees',\n 'weight',\n 'max_operation_count',\n 'max_running_operation_count',\n 'strong_guarantee_resources',\n 'resource_limits',\n 'forbid_immediate_operations',\n 'create_ephemeral_subpools',\n 'fifo_sort_parameters',\n 'config',\n 'folder_id',\n];\n\nclass EmptyFullPath extends Error {}\n\nexport function loadExpandedPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const pool = getPool(getState());\n\n if (!tree) {\n return undefined;\n }\n\n if (pool === ROOT_POOL_NAME) {\n return dispatch(loadExpandedOperationsAndPools(tree));\n } else {\n return ytApiV3Id\n .executeBatch<{full_path: string; is_ephemeral?: boolean}>(\n YTApiId.schedulingPoolFullPath,\n {\n requests: [\n {\n command: 'get' as const,\n parameters: {\n path: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}`,\n fields: ['is_ephemeral', 'full_path'],\n },\n },\n ],\n },\n )\n .then(([{output}]) => {\n const {full_path, is_ephemeral} = output ?? {};\n if (!full_path) {\n throw new EmptyFullPath();\n } else {\n dispatch(addFullPathToExpandedPoolsNoLoad(tree, full_path, is_ephemeral));\n dispatch(loadExpandedOperationsAndPools(tree));\n }\n })\n .catch((e) => {\n if (e instanceof EmptyFullPath) {\n dispatch({type: CHANGE_POOL, data: {pool: ROOT_POOL_NAME}});\n /**\n * We don't need to call `dispatch(loadExpandedOperationsAndPools(tree))` after `CHANGE_POOL`.\n * The call will be triggered by SchedulingExpandedPoolsUpdater.\n */\n // dispatch(loadExpandedOperationsAndPools(tree));\n } else {\n new Toaster().add({\n name: 'schedulingPoolFullPath',\n type: 'error',\n title: '',\n });\n }\n });\n }\n };\n}\n\nfunction loadExpandedOperationsAndPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n\n const loadAll = getExpandedPoolsLoadAll(state);\n const expandedPools: Map<string, ExpandedPoolInfo> = loadAll\n ? new Map()\n : getSchedulingOperationsExpandedPools(state)[tree] ?? new Map();\n const expandedPoolNames: Array<string> = [...expandedPools.keys()];\n\n const operationsExpandedPools: Array<string> = [...expandedPoolNames];\n\n const operationsRequests: Array<BatchSubRequest> = [];\n if (loadAll) {\n operationsRequests.push(\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/operations`,\n ),\n );\n } else {\n const prefix = `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/operations_by_pool`;\n operationsExpandedPools.forEach((item) => {\n operationsRequests.push(makeGet(`${prefix}/${item}`));\n });\n }\n\n const loadAllPools = loadAll || !isSupportedSchedulingChildrenByPool(state);\n const poolsRequests: Array<BatchSubRequest> = [];\n const poolsChildrenRequests: Array<BatchSubRequest> = [];\n const poolsCypressDataRequests: Array<BatchSubRequest> = [];\n\n const poolsExpandedPools: Array<string> =\n -1 !== expandedPoolNames.indexOf(ROOT_POOL_NAME)\n ? expandedPoolNames\n : [ROOT_POOL_NAME, ...expandedPoolNames];\n\n if (loadAllPools) {\n poolsRequests.push(\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools`, {\n fields: POOL_FIELDS_TO_LOAD,\n }),\n );\n poolsCypressDataRequests.push(\n makeGet(`//sys/pool_trees/${tree}`, {attributes: POOL_TREE_GET_ATTRS}),\n );\n } else {\n poolsExpandedPools.forEach((pool) => {\n poolsRequests.push(\n makeGet(`//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}`, {\n fields: POOL_FIELDS_TO_LOAD,\n }),\n );\n poolsChildrenRequests.push(\n makeGet(\n `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/child_pools_by_pool/${pool}`,\n {\n fields: POOL_FIELDS_TO_LOAD,\n },\n ),\n );\n const {parentPoolPath, isEphemeral} = expandedPools.get(pool) ?? {};\n const cypressDataPath = parentPoolPath\n ? `//sys/pool_trees/${tree}/${parentPoolPath}/${pool}`\n : `//sys/pool_trees/${tree}/${pool}`;\n if (pool === ROOT_POOL_NAME || !isEphemeral) {\n poolsCypressDataRequests.push(\n makeList(\n pool === ROOT_POOL_NAME ? `//sys/pool_trees/${tree}` : cypressDataPath,\n {\n attributes: POOL_TREE_GET_ATTRS,\n },\n ),\n );\n }\n });\n }\n\n cancelHelper.removeAllRequests();\n\n dispatch({type: SCHEDULING_EXPANDED_POOLS_REQUEST});\n return Promise.all([\n operationsRequests.length\n ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadOperationsPerPool, {\n parameters: {requests: operationsRequests},\n cancellation: cancelHelper.saveCancelToken,\n })\n : Promise.resolve([]),\n loadAllPools\n ? ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsAll, {\n parameters: {requests: poolsRequests},\n cancellation: cancelHelper.saveCancelToken,\n })\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadPoolsPerPool, {\n parameters: {requests: poolsRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n loadAllPools\n ? Promise.resolve([])\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadChildrenPerPool, {\n parameters: {requests: poolsChildrenRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n !poolsCypressDataRequests.length\n ? Promise.resolve([])\n : ytApiV3Id.executeBatch(YTApiId.schedulingLoadCypressDataPerPool, {\n parameters: {requests: poolsCypressDataRequests},\n cancellation: cancelHelper.saveCancelToken,\n }),\n ])\n .then(([operationsResults, poolsResults, poolsChildrenResults, poolsCypressData]) => {\n const error: YTError = {message: 'Failed to load expanded pools'};\n const {results: operations} = splitBatchResults(operationsResults, error);\n const rawOperations = _.reduce(\n operations,\n (acc, data) => {\n return Object.assign(acc, data);\n },\n {},\n );\n\n const rawPools: Record<string, PoolInfo> = {};\n const cypressData: Record<string, PoolCypressData> = {};\n\n if (loadAllPools) {\n const {results: pools} = splitBatchResults<Record<string, PoolInfo>>(\n poolsResults,\n error,\n );\n const [value = {}] = pools ?? [];\n Object.assign(rawPools, value);\n\n const {\n results: [data],\n } = splitBatchResults(poolsCypressData, error);\n Object.assign(cypressData, flattenAttributes(data));\n } else {\n const {results: pools, resultIndices} = splitBatchResults<PoolInfo>(\n poolsResults,\n error,\n );\n pools.forEach((poolInfo, index) => {\n const name = poolsExpandedPools[resultIndices[index]];\n rawPools[name] = poolInfo;\n });\n\n const {results: poolChildren} = splitBatchResults<Record<string, PoolInfo>>(\n poolsChildrenResults,\n error,\n );\n poolChildren.forEach((children) => {\n Object.assign(rawPools, children);\n });\n\n const {results: cypressDataChildrenPerPool} = splitBatchResults<\n Array<PoolCypressData>\n >(poolsCypressData, error);\n cypressDataChildrenPerPool.forEach((poolChildrenCypressData) => {\n poolChildrenCypressData.forEach((item) => {\n cypressData[item.$value] = item;\n });\n });\n }\n\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_SUCCESS,\n data: {\n expandedPoolsTree: tree,\n rawOperations: Object.keys(rawOperations).length\n ? rawOperations\n : EMPTY_OBJECT,\n rawPools: Object.keys(rawPools).length ? rawPools : EMPTY_OBJECT,\n flattenCypressData: Object.keys(cypressData).length\n ? cypressData\n : EMPTY_OBJECT,\n },\n });\n\n if (error.inner_errors?.length) {\n throw error;\n }\n })\n .catch((error) => {\n if (!isCancelled(error)) {\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_FAILURE,\n data: {error},\n });\n }\n });\n };\n}\n\nexport function setExpandedPool(poolName: string, expanded: boolean): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const tree = getTree(getState());\n const expandedPools = getSchedulingOperationsExpandedPools(state);\n\n const poolsByName = getSchedulingPoolsMapByName(state);\n\n const treeExpandedPools = new Map(expandedPools[tree]);\n if (expanded) {\n const expandedPoolInfo = calcExpandedPoolInfo(poolName, poolsByName);\n treeExpandedPools.set(poolName, expandedPoolInfo);\n } else {\n treeExpandedPools.delete(poolName);\n }\n\n dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));\n dispatch(loadExpandedPools(tree));\n };\n}\n\nfunction addFullPathToExpandedPoolsNoLoad(\n tree: string,\n /**\n * elements of the array should have the same format as `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/pools/${pool}/full_path`\n */\n fullPath: string,\n isEphemeral?: boolean,\n): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n const oldExpandedPools = getSchedulingOperationsExpandedPools(state);\n const treeExpandedPools = new Map(oldExpandedPools[tree]);\n\n /**\n * `fullPath` value starts from `/`, example: `/mypool/child/subchild`\n * so we have to use `.slice(1)` to remove first empty string\n */\n const parts = fullPath.split('/').slice(1);\n\n for (let i = 0; i < parts.length; ++i) {\n const poolName = parts[i];\n const parentPoolPath = parts.slice(0, i).join('/');\n treeExpandedPools.set(poolName, {parentPoolPath, isEphemeral});\n }\n\n dispatch(updateExpandedPoolNoLoad(tree, treeExpandedPools));\n };\n}\n\nfunction updateExpandedPoolNoLoad(\n tree: string,\n treeExpandedPools: Map<string, ExpandedPoolInfo>,\n): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const oldExpandedPools = getSchedulingOperationsExpandedPools(getState());\n\n const expandedPools = {\n ...oldExpandedPools,\n [tree]: treeExpandedPools,\n };\n\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {expandedPools},\n });\n };\n}\n\nexport function resetExpandedPools(tree: string): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n if (!tree) {\n return;\n }\n\n const state = getState();\n const {[tree]: old, ...rest} = getSchedulingOperationsExpandedPools(state);\n\n if (old?.size) {\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {\n expandedPools: {\n ...rest,\n [tree]: new Map<string, ExpandedPoolInfo>(),\n },\n },\n });\n }\n };\n}\n\nexport function getSchedulingOperationsCount(): ThunkAction<number, RootState, any, any> {\n return (_dispatch, getState) => {\n const state = getState();\n\n const tree = getSchedulingPoolsMapByName(state);\n const root = tree[ROOT_POOL_NAME];\n return root?.operationCount || 0;\n };\n}\n\nexport function getPoolPathsByName(\n poolName: string,\n): ThunkAction<{fullPath: string; orchidPath: string}, RootState, unknown, any> {\n return (_dispatch, getState) => {\n const state = getState();\n const pools = getPools(state);\n const tree = getTree(state);\n\n return {\n fullPath: calculatePoolPath(poolName, pools, tree),\n orchidPath: `//sys/scheduler/orchid/scheduler/pool_trees/${tree}/fair_share_info/pools/${poolName}`,\n };\n };\n}\n\nexport function setLoadAllOperations(loadAll: boolean): ExpandedPoolsThunkAction {\n return (dispatch, getState) => {\n const state = getState();\n dispatch({\n type: SCHEDULING_EXPANDED_POOLS_PARTITION,\n data: {loadAll},\n });\n\n const tree = getTree(state);\n dispatch(loadExpandedPools(tree));\n };\n}\n\nfunction calcExpandedPoolInfo(\n poolName: string,\n poolsByName: Record<string, PoolInfo>,\n): ExpandedPoolInfo {\n let data = poolsByName[poolName];\n const isEphemeral = data?.isEphemeral;\n let res = '';\n while (data?.parent && data.parent !== ROOT_POOL_NAME) {\n res = res ? `${data.parent}/${res}` : data.parent;\n data = poolsByName[data.parent];\n }\n return {parentPoolPath: res, isEphemeral};\n}\n"],"mappings":"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"}
|
@@ -1,4 +1,13 @@
|
|
1
1
|
import { InitialPoolResourceInfo, PoolResourceType } from '../../../utils/scheduling/scheduling';
|
2
|
+
import { ThunkAction } from 'redux-thunk';
|
3
|
+
import type { RootState } from '../../../store/reducers';
|
4
|
+
import type { SchedulingAction } from '../../../store/reducers/scheduling/scheduling';
|
5
|
+
import type { PoolInfo } from '../../../store/selectors/scheduling/scheduling-pools';
|
6
|
+
type SchedulingThunkAction<T = unknown> = ThunkAction<T, RootState, unknown, SchedulingAction>;
|
7
|
+
export declare function loadSchedulingData(): SchedulingThunkAction;
|
8
|
+
export declare function deletePool(item?: PoolInfo): SchedulingThunkAction;
|
9
|
+
export declare function openPoolDeleteModal(item: PoolInfo): SchedulingAction;
|
10
|
+
export declare function closePoolDeleteModal(): SchedulingAction;
|
2
11
|
type PoolResources = Partial<Record<Exclude<PoolResourceType, 'guaranteeType'>, InitialPoolResourceInfo>>;
|
3
12
|
interface SetResourceGuaranteeParams {
|
4
13
|
poolPath: string;
|
@@ -7,7 +16,12 @@ interface SetResourceGuaranteeParams {
|
|
7
16
|
};
|
8
17
|
initials: PoolResources;
|
9
18
|
tree: string;
|
10
|
-
allowTransfer?: boolean;
|
11
19
|
}
|
12
20
|
export declare function setPoolAttributes(params: SetResourceGuaranteeParams): Promise<any>;
|
21
|
+
export declare function schedulingLoadFilterAttributes(): SchedulingThunkAction;
|
22
|
+
export declare function schedulingSetFilter(filter: string): SchedulingThunkAction;
|
23
|
+
export declare function schedulingSetAbcFilter(abcServiceFilter: {
|
24
|
+
id: number;
|
25
|
+
slug: string;
|
26
|
+
}): SchedulingThunkAction;
|
13
27
|
export {};
|