예제 #1
0
파일: udt.c 프로젝트: Instagram/cpp-driver
int main() {
  CassCluster* cluster = create_cluster();
  CassSession* session = cass_session_new();
  CassFuture* close_future = NULL;

  uuid_gen = cass_uuid_gen_new();

  if (connect_session(session, cluster) != CASS_OK) {
    cass_cluster_free(cluster);
    cass_session_free(session);
    return -1;
  }

  schema_meta = cass_session_get_schema_meta(session);

  execute_query(session,
                "CREATE KEYSPACE examples WITH replication = { \
                           'class': 'SimpleStrategy', 'replication_factor': '3' }");
예제 #2
0
MultipleNodesTest::MultipleNodesTest(unsigned int num_nodes_dc1, unsigned int num_nodes_dc2, unsigned int protocol_version, bool isSSL /* = false */)
  : conf(cql::get_ccm_bridge_configuration()) {
  boost::debug::detect_memory_leaks(false);
  ccm = cql::cql_ccm_bridge_t::create_and_start(conf, "test", num_nodes_dc1, num_nodes_dc2, isSSL);
  version = ccm->version();

  uuid_gen = cass_uuid_gen_new();
  cluster = cass_cluster_new();
  initialize_contact_points(cluster, conf.ip_prefix(), num_nodes_dc1, num_nodes_dc2);

  cass_cluster_set_connect_timeout(cluster, 10 * ONE_SECOND_IN_MICROS);
  cass_cluster_set_request_timeout(cluster, 30 * ONE_SECOND_IN_MICROS);
  cass_cluster_set_core_connections_per_host(cluster, 2);
  cass_cluster_set_max_connections_per_host(cluster, 4);
  cass_cluster_set_num_threads_io(cluster, 4);
  cass_cluster_set_max_concurrent_creation(cluster, 8);
  cass_cluster_set_protocol_version(cluster, protocol_version);
}
예제 #3
0
int main(int argc, char* argv[]) {
  CassCluster* cluster = NULL;
  CassSession* session = cass_session_new();
  CassFuture* close_future = NULL;
  char* hosts = "127.0.0.1";
  if (argc > 1) {
    hosts = argv[1];
  }
  cluster = create_cluster(hosts);

  uuid_gen = cass_uuid_gen_new();

  if (connect_session(session, cluster) != CASS_OK) {
    cass_cluster_free(cluster);
    cass_session_free(session);
    return -1;
  }

  schema_meta = cass_session_get_schema_meta(session);

  execute_query(session,
                "CREATE KEYSPACE examples WITH replication = { \
                           'class': 'SimpleStrategy', 'replication_factor': '3' }");
예제 #4
0
int main() {
  CassCluster* cluster = create_cluster();
  CassSession* session = cass_session_new();

  uuid_gen = cass_uuid_gen_new();

  uv_mutex_init(&mutex);
  uv_cond_init(&cond);

  connect_session(session, cluster, on_session_connect);

  /* Code running in parallel with queries */

  wait_exit();

  uv_cond_destroy(&cond);
  uv_mutex_destroy(&mutex);

  cass_cluster_free(cluster);
  cass_uuid_gen_free(uuid_gen);
  cass_session_free(session);

  return 0;
}
예제 #5
0
static PHP_GINIT_FUNCTION(cassandra)
{
  uv_once(&log_once, php_cassandra_log_initialize);

  cassandra_globals->uuid_gen            = cass_uuid_gen_new();
  cassandra_globals->persistent_clusters = 0;
  cassandra_globals->persistent_sessions = 0;
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_varchar);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_text);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_blob);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_ascii);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_bigint);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_counter);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_int);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_varint);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_boolean);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_decimal);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_double);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_float);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_inet);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_timestamp);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_uuid);
  PHP5TO7_ZVAL_UNDEF(cassandra_globals->type_timeuuid);
}
예제 #6
0
 /**
  * Create the UUID generator object
  */
 UuidGen()
   : Object<CassUuidGen, cass_uuid_gen_free>(cass_uuid_gen_new()) {}
예제 #7
0
파일: perf.c 프로젝트: Instagram/cpp-driver
int main() {
  int i;
  CassMetrics metrics;
  uv_thread_t threads[NUM_THREADS];
  CassCluster* cluster = NULL;
  CassSession* session = NULL;
  CassFuture* close_future = NULL;

  status_init(&status, NUM_THREADS);

  cass_log_set_level(CASS_LOG_INFO);

  cluster = create_cluster();
  uuid_gen = cass_uuid_gen_new();
  session = cass_session_new();

  if (connect_session(session, cluster) != CASS_OK) {
    cass_cluster_free(cluster);
    cass_session_free(session);
    return -1;
  }

  execute_query(session,
                "INSERT INTO songs (id, title, album, artist, tags) VALUES "
                "(a98d21b2-1900-11e4-b97b-e5e358e71e0d, "
                "'La Petite Tonkinoise', 'Bye Bye Blackbird', 'Joséphine Baker', { 'jazz', '2013' });");


  for (i = 0; i < NUM_THREADS; ++i) {
#if DO_SELECTS
    uv_thread_create(&threads[i], run_select_queries, (void*)session);
#else
    uv_thread_create(&threads[i], run_insert_queries, (void*)session);
#endif
  }

  while (status_wait(&status, 5) > 0) {
    cass_session_get_metrics(session, &metrics);
    printf("rate stats (requests/second): mean %f 1m %f 5m %f 10m %f\n",
           metrics.requests.mean_rate,
           metrics.requests.one_minute_rate,
           metrics.requests.five_minute_rate,
           metrics.requests.fifteen_minute_rate);
  }

  cass_session_get_metrics(session, &metrics);
  printf("final stats (microseconds): min %llu max %llu median %llu 75th %llu 95th %llu 98th %llu 99th %llu 99.9th %llu\n",
         (unsigned long long int)metrics.requests.min, (unsigned long long int)metrics.requests.max,
         (unsigned long long int)metrics.requests.median, (unsigned long long int)metrics.requests.percentile_75th,
         (unsigned long long int)metrics.requests.percentile_95th, (unsigned long long int)metrics.requests.percentile_98th,
         (unsigned long long int)metrics.requests.percentile_99th, (unsigned long long int)metrics.requests.percentile_999th);

  for (i = 0; i < NUM_THREADS; ++i) {
    uv_thread_join(&threads[i]);
  }

  close_future = cass_session_close(session);
  cass_future_wait(close_future);
  cass_future_free(close_future);
  cass_cluster_free(cluster);
  cass_uuid_gen_free(uuid_gen);

  status_destroy(&status);

  return 0;
}
 /**
  * Create the UUID generator object
  */
 UuidGen()
   : uuid_gen_(cass_uuid_gen_new()) {}