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)

Reply via email to