You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Andrey N. Gura (Jira)" <ji...@apache.org> on 2023/05/23 17:33:00 UTC
[jira] [Updated] (IGNITE-19476) Implement unit deploy on demand API
[ https://issues.apache.org/jira/browse/IGNITE-19476?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andrey N. Gura updated IGNITE-19476:
------------------------------------
Labels: iep-103 ignite-3 (was: ignite-3)
> Implement unit deploy on demand API
> -----------------------------------
>
> Key: IGNITE-19476
> URL: https://issues.apache.org/jira/browse/IGNITE-19476
> Project: Ignite
> Issue Type: New Feature
> Reporter: Mikhail Pochatkin
> Assignee: Mikhail Pochatkin
> Priority: Major
> Labels: iep-103, ignite-3
>
> If code execution is initiated on some node (due to a Compute API invocation) and this target node doesn’t have a required deployment unit it could be requested from some node which already has the required deployment unit. It means that the required deployment unit has clusterDURecord.status == DEPLOYED and there is at least one node where nodeDURecord.status == DEPLOYED. If this conditions are met the following steps must be performed:
>
> # Add meta storage record for target node and deployment unit where nodeDURecord.status == UPLOADING and nodeDURecord.depOpId == clusterDUStatus.depOpId. The node should prevent concurrent races between different threads. It’s achievable without any meta storage operations because there is no other node which can initiate the on-demand deployment process..
> Note that if clusterDURecord.status == DEPLOYED && nodeDURecord.status == UPLOADING => deployment on-demand is in progress for a given deployment unit and given node.
> As soon as the deployment unit is uploaded to the target node, nodeDURecord.status must be changed to DEPLOYED value.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)