Changeset 1853
- Timestamp:
- 01/05/12 16:19:12 (5 months ago)
- Location:
- trunk
- Files:
-
- 2 modified
-
jobqueue.c (modified) (5 diffs)
-
tcontainerfunc.h (modified) (6 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/jobqueue.c
r1852 r1853 1513 1513 unsigned uTargetDatacenter=0; 1514 1514 unsigned uIPv4=0; 1515 unsigned u Status=0;1515 unsigned uPrevStatus=0; 1516 1516 1517 1517 sscanf(cJobData,"uTargetNode=%u;",&uTargetNode); … … 1523 1523 } 1524 1524 1525 if(GetContainerStatus(uContainer,&uStatus))1526 {1527 logfileLine("MigrateContainer","GetContainerStatus() failed");1528 tJobErrorUpdate(uJob,"GetContainerStatus()");1529 return;1530 }1531 1525 1532 1526 sscanf(cJobData,"uTargetNode=%*u;\nuIPv4=%u;",&uIPv4); … … 1551 1545 logfileLine("MigrateContainer","Could not determine cTargetNodeIPv4"); 1552 1546 tJobErrorUpdate(uJob,"cTargetNodeIPv4"); 1547 return; 1548 } 1549 1550 sscanf(cJobData,"uTargetNode=%*u;\nuIPv4=%*u;\nuPrevStatus=%u;",&uPrevStatus); 1551 if(uPrevStatus!=uACTIVE || uPrevStatus!=uSTOPPED) 1552 { 1553 logfileLine("MigrateContainer","Could not determine uPrevStatus"); 1554 tJobErrorUpdate(uJob,"uPrevStatus==0"); 1553 1555 return; 1554 1556 } … … 1584 1586 1585 1587 1586 if(u Status==uACTIVE)1588 if(uPrevStatus==uACTIVE) 1587 1589 { 1588 1590 if(cSSHOptions[0]) … … 1641 1643 1642 1644 //Everything ok 1643 SetContainerStatus(uContainer, 1);//Active1645 SetContainerStatus(uContainer,uPrevStatus);//Previous to awaiting migration 1644 1646 SetContainerNode(uContainer,uTargetNode);//Migrated! 1645 1647 if(uIPv4 && uTargetDatacenter) -
trunk/tcontainerfunc.h
r1852 r1853 102 102 void htmlContainerMount(unsigned uContainer); 103 103 unsigned MigrateContainerJob(unsigned uDatacenter, unsigned uNode, unsigned uContainer, unsigned uTargetNode, 104 unsigned uOwner, unsigned uLoginClient, unsigned uIPv4 );104 unsigned uOwner, unsigned uLoginClient, unsigned uIPv4,unsigned uPrevStatus); 105 105 unsigned CloneContainerJob(unsigned uDatacenter, unsigned uNode, unsigned uContainer, 106 106 unsigned uTargetNode, unsigned uNewVeid, unsigned uPrevStatus, … … 2774 2774 ChangeGroup(uContainer,uGroup); 2775 2775 2776 if(MigrateContainerJob(uDatacenter,uNode,uContainer,uTargetNode,uOwner,guLoginClient,0 ))2776 if(MigrateContainerJob(uDatacenter,uNode,uContainer,uTargetNode,uOwner,guLoginClient,0,uStatus)) 2777 2777 { 2778 2778 uStatus=uAWAITMIG; 2779 SetContainerStatus(uContainer, 21);//Awaiting Migration2779 SetContainerStatus(uContainer,uAWAITMIG);//Awaiting Migration 2780 2780 sscanf(ForeignKey("tContainer","uModDate",uContainer),"%lu",&uModDate); 2781 2781 tContainer("MigrateContainerJob() Done"); … … 2867 2867 ChangeGroup(uContainer,uGroup); 2868 2868 2869 if(MigrateContainerJob(uDatacenter,uNode,uContainer,uTargetNode,uOwner,guLoginClient,uWizIPv4 ))2869 if(MigrateContainerJob(uDatacenter,uNode,uContainer,uTargetNode,uOwner,guLoginClient,uWizIPv4,uStatus)) 2870 2870 { 2871 2871 char cIPOld[32]={""}; 2872 2872 2873 2873 uStatus=uAWAITMIG; 2874 SetContainerStatus(uContainer, 21);//Awaiting Migration2874 SetContainerStatus(uContainer,uAWAITMIG);//Awaiting Migration 2875 2875 2876 2876 //Mark IP used … … 5020 5020 5021 5021 unsigned MigrateContainerJob(unsigned uDatacenter, unsigned uNode, unsigned uContainer, unsigned uTargetNode, 5022 unsigned uOwner, unsigned uLoginClient, unsigned uIPv4 )5022 unsigned uOwner, unsigned uLoginClient, unsigned uIPv4,unsigned uPrevStatus) 5023 5023 { 5024 5024 unsigned uCount=0; … … 5028 5028 ",uJobDate=UNIX_TIMESTAMP(NOW())+60" 5029 5029 ",uJobStatus=1" 5030 ",cJobData='uTargetNode=%u;\nuIPv4=%u; '"5030 ",cJobData='uTargetNode=%u;\nuIPv4=%u;\nuPrevStatus=%u;\n'" 5031 5031 ",uOwner=%u,uCreatedBy=%u,uCreatedDate=UNIX_TIMESTAMP(NOW())", 5032 5032 uContainer,uTargetNode, … … 5034 5034 uTargetNode, 5035 5035 uIPv4, 5036 uPrevStatus, 5036 5037 uOwner,uLoginClient); 5037 5038 mysql_query(&gMysql,gcQuery);
