コード例 #1
0
ファイル: instance.php プロジェクト: referjs/solrcloud
     }
     change_instance_unwritable($pdo, $instance_id);
     reload_service_by_instance($pdo, $instance_id, $username);
     instance_redirect();
     break;
 case 'readable':
     $username = check_login($def_url);
     $instance_id = $params['instance_id'];
     change_instance_readable($pdo, $instance_id);
     reload_service_by_instance($pdo, $instance_id, $username);
     instance_redirect();
     break;
 case 'unreadable':
     $username = check_login($def_url);
     $instance_id = $params['instance_id'];
     $service_mapping = pdo_get_mapping_by_instance_id($pdo, $instance_id);
     $service_info = pdo_get_service_byid($pdo, $service_mapping['service_id']);
     if ($service_info['service_status'] == 1) {
         $readbale_instance = get_instance_list_complex($pdo, array('service_id' => $service_mapping['service_id'], 'readable' => '1'));
         $readbale_instance_count = count($readbale_instance);
         if ($readbale_instance_count < 2) {
             msg_redirect("back", 'At least one readable instance in one service!');
         }
     }
     change_instance_unreadable($pdo, $instance_id);
     reload_service_by_instance($pdo, $instance_id, $username);
     instance_redirect();
     break;
 case 'list_ajax':
     $mem = $params['mem'];
     $service_id = isset($params['s_id']) ? $params['s_id'] : 0;
コード例 #2
0
ファイル: functions.lib.php プロジェクト: referjs/solrcloud
function reload_service_by_instance($pdo, $instance_id, $uname = '')
{
    global $cfg;
    /*readable/writable被修改,需要修改instance的solrconfig.重启成功后再修改nginx*/
    reload_instance($pdo, $instance_id, $uname);
    $service_mapping = pdo_get_mapping_by_instance_id($pdo, $instance_id);
    lock_service($pdo, $service_mapping['service_id']);
    foreach ($cfg['lb_host'] as $key => $v) {
        $target_id = $v;
        insert_action_queue_new($pdo, SERVICE_RECONFIGURE, $service_mapping['service_id'], $target_id, $uname);
        insert_action_queue_new($pdo, SERVICE_RELOAD, $service_mapping['service_id'], $target_id, $uname);
    }
}