Exemple #1
0
 /// <summary>Snippet for PartitionRead</summary>
 public void PartitionRead_RequestObject()
 {
     // Snippet: PartitionRead(PartitionReadRequest,CallSettings)
     // Create client
     SpannerClient spannerClient = SpannerClient.Create();
     // Initialize request argument(s)
     PartitionReadRequest request = new PartitionReadRequest
     {
         Session = new SessionName("[PROJECT]", "[INSTANCE]", "[DATABASE]", "[SESSION]").ToString(),
         Table   = "",
         KeySet  = new KeySet(),
     };
     // Make the request
     PartitionResponse response = spannerClient.PartitionRead(request);
     // End snippet
 }
        /*
         * Probe to test PartitionQuery and PartitionRead grpc call from Spanner stub.
         *
         * Args:
         *  stub: An object of SpannerStub.
         *  metrics: A list of metrics.
         */

        public static void partition(Spanner.SpannerClient client, ref Dictionary <string, long> metrics)
        {
            long latency;

            //Start Session
            Session session = StartSession(client);

            TransactionOptions txn_options = new TransactionOptions();

            TransactionOptions.Types.ReadOnly ro = new TransactionOptions.Types.ReadOnly();
            txn_options.ReadOnly = ro;
            TransactionSelector txn_selector = new TransactionSelector();

            txn_selector.Begin = txn_options;

            //Probing PartitionQuery call
            PartitionQueryRequest ptn_query_request = new PartitionQueryRequest();

            ptn_query_request.Session     = session.Name;
            ptn_query_request.Sql         = "select * FROM users";
            ptn_query_request.Transaction = txn_selector;

            stopwatch.Start();
            client.PartitionQuery(ptn_query_request);
            stopwatch.Stop();
            latency = stopwatch.ElapsedMilliseconds;
            metrics.Add("partition_query_latency_ms", latency);

            //Probing PartitionRead Call
            PartitionReadRequest ptn_read_request = new PartitionReadRequest();

            ptn_read_request.Session     = session.Name;
            ptn_read_request.Table       = "users";
            ptn_read_request.Transaction = txn_selector;
            KeySet keyset = new KeySet();

            keyset.All = true;
            ptn_read_request.KeySet = keyset;
            stopwatch.Start();
            client.PartitionRead(ptn_read_request);
            stopwatch.Stop();
            latency = stopwatch.ElapsedMilliseconds;
            metrics.Add("partition_read_latency_ms", latency);

            //Delete Session
            EndSession(client, session);
        }
Exemple #3
0
        /// <summary>Snippet for PartitionReadAsync</summary>
        public async Task PartitionReadAsync_RequestObject()
        {
            // Snippet: PartitionReadAsync(PartitionReadRequest,CallSettings)
            // Additional: PartitionReadAsync(PartitionReadRequest,CancellationToken)
            // Create client
            SpannerClient spannerClient = await SpannerClient.CreateAsync();

            // Initialize request argument(s)
            PartitionReadRequest request = new PartitionReadRequest
            {
                Session = new SessionName("[PROJECT]", "[INSTANCE]", "[DATABASE]", "[SESSION]").ToString(),
                Table   = "",
                KeySet  = new KeySet(),
            };
            // Make the request
            PartitionResponse response = await spannerClient.PartitionReadAsync(request);

            // End snippet
        }
Exemple #4
0
        public async Task PartitionReadAsync()
        {
            Mock <Spanner.SpannerClient> mockGrpcClient = new Mock <Spanner.SpannerClient>(MockBehavior.Strict);
            PartitionReadRequest         request        = new PartitionReadRequest
            {
                Session = new SessionName("[PROJECT]", "[INSTANCE]", "[DATABASE]", "[SESSION]").ToString(),
                Table   = "table110115790",
                KeySet  = new KeySet(),
            };
            PartitionResponse expectedResponse = new PartitionResponse();

            mockGrpcClient.Setup(x => x.PartitionReadAsync(request, It.IsAny <CallOptions>()))
            .Returns(new Grpc.Core.AsyncUnaryCall <PartitionResponse>(Task.FromResult(expectedResponse), null, null, null, null));
            SpannerClient     client   = new SpannerClientImpl(mockGrpcClient.Object, null);
            PartitionResponse response = await client.PartitionReadAsync(request);

            Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }
Exemple #5
0
        public void PartitionRead()
        {
            Mock <Spanner.SpannerClient> mockGrpcClient = new Mock <Spanner.SpannerClient>(MockBehavior.Strict);
            PartitionReadRequest         request        = new PartitionReadRequest
            {
                Session = new SessionName("[PROJECT]", "[INSTANCE]", "[DATABASE]", "[SESSION]").ToString(),
                Table   = "table110115790",
                KeySet  = new KeySet(),
            };
            PartitionResponse expectedResponse = new PartitionResponse();

            mockGrpcClient.Setup(x => x.PartitionRead(request, It.IsAny <CallOptions>()))
            .Returns(expectedResponse);
            SpannerClient     client   = new SpannerClientImpl(mockGrpcClient.Object, null);
            PartitionResponse response = client.PartitionRead(request);

            Assert.Same(expectedResponse, response);
            mockGrpcClient.VerifyAll();
        }