assert(0 === $qzk->grayRollback($gray_id)); sleep($waiting_time); //node in gray process $in_val = QConf::getConf($gray_in_path); var_dump($in_val); print_info($in_val == $gray_in_val, __LINE__); //node out of gray process $out_val = QConf::getConf($gray_out_path); var_dump($out_val); print_info($out_val == $gray_out_val, __LINE__); echo_color("[==END==============================]", GREEN); echo_color("[-- clear batch nodes childre: BEGIN --]", BROWN); assert(0 === $qzk->nodeSet("{$prefix}{$batch_path}", "batch node")); $children = $qzk->list("{$prefix}{$batch_path}"); foreach ($children as $node) { assert(0 === $qzk->nodeDelete("{$prefix}{$batch_path}/{$node}")); } echo_color("[-- clear batch nodes childre: END --]", BROWN); echo PHP_EOL; $nodes = $ops = array(); echo_color("0 children node", CYAN); batch_operation($nodes, $ops, $history_nodes, __LINE__, TRUE); echo_color("1 child add", CYAN); $nodes[$bkeys[0]] = "value1_new"; $ops[$bkeys[0]] = OP_NODE_ADD; batch_operation($nodes, $ops, $history_nodes, __LINE__); echo_color("1 child modify", CYAN); $nodes[$bkeys[0]] = "value1"; $ops[$bkeys[0]] = OP_NODE_MODIFY; batch_operation($nodes, $ops, $history_nodes, __LINE__); echo_color("4 children", CYAN);
<?php $zk = new QConfZK("127.0.0.1:2181"); $service_key = "/qconf_manager/services/2"; $services = array("10.16.15.235:80" => QCONF_STATUS_UP, "10.16.15.235:81" => QCONF_STATUS_OFFLINE, "10.16.15.235:82" => QCONF_STATUS_DOWN, "10.16.15.235:83" => QCONF_STATUS_UP); //nodeSet $conf_key = "/qconf_manager/demo/3"; assert(0 === $zk->nodeDelete($conf_key)); assert(0 === $zk->nodeSet($conf_key, "value1")); assert("value1" == $zk->nodeGet($conf_key)); assert(0 === $zk->nodeSet($conf_key, "value2")); assert("value2" == $zk->nodeGet($conf_key)); assert(0 !== $zk->nodeSet("", "value2")); assert(0 !== $zk->nodeSet("/", "value2")); $large_str = str_repeat("a", 1024 * 1024 - 200); assert(0 === $zk->nodeSet($conf_key, $large_str)); assert($large_str == $zk->nodeGet($conf_key)); //node Delete assert(0 === $zk->nodeDelete($conf_key)); assert(0 !== $zk->nodeDelete("qconf_manager")); assert(0 !== $zk->nodeDelete("")); //serviceSet $service_key = "/qconf_manager/services/2"; $services_empty = array(); assert(0 !== $zk->servicesSet($service_key, $services_empty)); $services_error1 = array("10.16.15.235:80" => 1111111, "10.16.15.235:81" => QCONF_STATUS_OFFLINE, "10.16.15.235:82" => QCONF_STATUS_DOWN, "10.16.15.235:83" => QCONF_STATUS_UP); assert(0 !== $zk->servicesSet($service_key, $services_error1)); $services_error2 = array("10.16.15.235:80" => -1, "10.16.15.235:81" => QCONF_STATUS_OFFLINE, "10.16.15.235:82" => QCONF_STATUS_DOWN, "10.16.15.235:83" => QCONF_STATUS_UP); assert(0 !== $zk->servicesSet($service_key, $services_error2)); assert(0 !== $zk->servicesSet("", $services)); assert(0 !== $zk->servicesSet("", $services));