You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Mikhail Pochatkin (Jira)" <ji...@apache.org> on 2023/04/28 11:19:00 UTC

[jira] [Created] (IGNITE-19384) Rework units metastorage layer

Mikhail Pochatkin created IGNITE-19384:
------------------------------------------

             Summary: Rework units metastorage layer
                 Key: IGNITE-19384
                 URL: https://issues.apache.org/jira/browse/IGNITE-19384
             Project: Ignite
          Issue Type: Improvement
            Reporter: Mikhail Pochatkin


Currently deployment units stored in metastorage like one entity per unit with key structure
*deploy-unit.units.\{id}:\{version}* and value *{id}:\{value}:\{status}:\{fileNames}:\{nodeConsistentIds}* where each part encoded to Base64.
Need to rework it. The following steps must be performed during the uploading process:
 # Choose a majority which contains available nodes including a leader.
 # Create meta storage record for given deployment unit clusterDUStatus == UPLOADING.
 # Initiate uploading of files to the target nodes and create meta storage record for given deployment unit and node nodeDUStatus == UPLOADING.
 # As soon as the deployment unit is uploaded to the node, nodeDUStatus must be changed to DEPLOYED value.
 # As soon as the deployment unit is uploaded to the target nodes, clusterDUStatus must be changed to DEPLOYED value.

 

A deployment unit is considered deployed to the cluster only if clusterDUStatus == DEPLOYED. It means that there is at least one available node which can be a source for downloading the deployment unit on demand.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)