Apache.Cassandra.Cassandra.Client.trace_next_query C# (CSharp) Method

trace_next_query() public method

Enables tracing for the next query in this connection and returns the UUID for that trace session The next query will be traced idependently of trace probability and the returned UUID can be used to query the trace keyspace
public trace_next_query ( ) : byte[]
return byte[]
      public byte[] trace_next_query()
      {
        #if !SILVERLIGHT
        send_trace_next_query();
        return recv_trace_next_query();

        #else
        var asyncResult = Begin_trace_next_query(null, null, );
        return End_trace_next_query(asyncResult);

        #endif
      }
      #if SILVERLIGHT

Usage Example

        public void ThriftRunWritePerformanceSingleThread()
        {
            Console.WriteLine("============================================================");
            Console.WriteLine(" Thrift Driver write performance test single thread ");
            Console.WriteLine("============================================================");

            TTransport transport = new TFramedTransport(new TSocket("localhost", 9160));
            TProtocol protocol = new TBinaryProtocol(transport);
            Cassandra.Client client = new Cassandra.Client(protocol);

            transport.Open();

            const string createFoo = "CREATE KEYSPACE Tests WITH replication = {'class': 'SimpleStrategy', 'replication_factor' : 1}";
            Console.WriteLine("============================================================");
            Console.WriteLine(createFoo);
            Console.WriteLine("============================================================");

            client.execute_cql3_query(Encoding.UTF8.GetBytes(createFoo),
                                      Compression.NONE, Apache.Cassandra.ConsistencyLevel.QUORUM);
            Console.WriteLine();
            Console.WriteLine();

            const string createBar = "CREATE TABLE Tests.stresstest (strid varchar,intid int,PRIMARY KEY (strid))";
            Console.WriteLine("============================================================");
            Console.WriteLine(createBar);
            Console.WriteLine("============================================================");

            client.execute_cql3_query(Encoding.UTF8.GetBytes(createBar), Compression.NONE,
                                      Apache.Cassandra.ConsistencyLevel.QUORUM);
            Console.WriteLine();
            Console.WriteLine();

            CqlPreparedResult query = client.prepare_cql3_query(Encoding.UTF8.GetBytes("UPDATE tests.stresstest SET intid = ? WHERE strid = ?"),
                                                                Compression.NONE);

            int n = 0;
            while (n < NUM_ROUND)
            {
                var timer = new Stopwatch();
                timer.Start();

                for (int i = 0; i < NUM_WRITES_PER_ROUND; i++)
                {
                    client.trace_next_query();
                    client.execute_prepared_cql3_query(query.ItemId,
                                                      new List<byte[]> {BitConverter.GetBytes(i).Reverse().ToArray(), Encoding.ASCII.GetBytes(i.ToString("X"))},
                                                      Apache.Cassandra.ConsistencyLevel.QUORUM);
                }

                timer.Stop();
                double rate = NUM_WRITES_PER_ROUND/(timer.ElapsedMilliseconds/1000d);
                Console.WriteLine("[Cassandra-Thrift] Time : " + timer.ElapsedMilliseconds + " (rate: " + rate + " qps)");
                n++;
            }

            const string dropFoo = "drop keyspace Tests";
            Console.WriteLine("============================================================");
            Console.WriteLine(dropFoo);
            Console.WriteLine("============================================================");
            client.execute_cql3_query(Encoding.UTF8.GetBytes("drop keyspace Tests"), Compression.NONE, Apache.Cassandra.ConsistencyLevel.QUORUM);
        }
Cassandra.Client