Пример #1
0
TEST_F(RestartTest, offlined_node)
{
    std::shared_ptr<vfs::ClusterRegistry> reg(cluster_registry(fs_->object_router()));

    stop_fs();

    reg->set_node_state(local_node_id(),
                        vfs::ClusterNodeStatus::State::Offline);

    EXPECT_EQ(vfs::ClusterNodeStatus::State::Offline,
              reg->get_node_state(local_node_id()));

    ASSERT_NO_THROW(start_fs());

    EXPECT_EQ(vfs::ClusterNodeStatus::State::Online,
              reg->get_node_state(local_node_id()));
}
yt::Uri
FileSystemTestSetup::network_server_uri(const vfs::NodeId& node_id)
{
    return yt::Uri()
           .scheme(edge_transport())
           .host(address())
           .port(node_id == local_node_id() ?
                 local_edge_port() :
                 remote_edge_port());
}
bpt::ptree&
FileSystemTestSetup::make_dtl_config_(const vfs::NodeId& vrouter_id,
                                      bpt::ptree& pt) const
{
    ip::PARAMETER_TYPE(fs_dtl_config_mode)(dtl_config_mode_).persist(pt);
    if (dtl_config_mode_ == vfs::FailOverCacheConfigMode::Manual)
    {
        const vfs::ClusterNodeConfig cfg(vrouter_id == local_node_id() ?
                                         local_config() :
                                         remote_config());

        ip::PARAMETER_TYPE(fs_dtl_host)(cfg.failovercache_host).persist(pt);
        ip::PARAMETER_TYPE(fs_dtl_port)(cfg.failovercache_port).persist(pt);
        ip::PARAMETER_TYPE(fs_dtl_mode)(dtl_mode_).persist(pt);
    }

    return pt;
}