Monday, 8 April 2019

Recording the audio from the computer

I had to archive the audio from a radio stream.

For this you can use Audacity, use the Windows Audio Session API (WASAPI) and select the speaker as the loopback.

https://www.howtogeek.com/217348/how-to-record-the-sound-coming-from-your-pc-even-without-stereo-mix/

Sunday, 10 March 2019

Cosmos DB emulator returns wrong IP address

I configured the Cosmos DB emulator to listen across the network. It was running on a developer laptop that had Docker for Windows installed.

Connecting from a different Linux laptop using Gateway mode, I was getting long delays and then "a task was cancelled". This was coming from deep within the HTTP stack.

On closer inspection I could see that the client was trying to connect to https://10.0.75.1 - this is the Docker network.

In the GetDatabaseAccountAsync method the client connects to the gateway and enumerates the databases:

https://cosmosdb.test:8081/

The gateway returns a JSON response. This can be seen in Visual Studio Code with the following debug query:

System.Text.Encoding.ASCII.GetString(((System.IO.MemoryStream)documentServiceResponse.ResponseBody).ToArray())

The databaseAccountEndpoint property returns https://10.0.75.1:8081 and this is used to form subsequent responses.
{
    "_self": "",
    "id": "localhost",
    "_rid": "cosmosdb.test",
    "media": "//media/",
    "addresses": "//addresses/",
    "_dbs": "//dbs/",
    "writableLocations": [
        {
            "name": "South Central US",
            "databaseAccountEndpoint": "https://10.0.75.1:8081/"
        }
    ],
    "readableLocations": [
        {
            "name": "South Central US",
            "databaseAccountEndpoint": "https://10.0.75.1:8081/"
        }
    ],
    "enableMultipleWriteLocations": false,
    "userReplicationPolicy": {
        "asyncReplication": false,
        "minReplicaSetSize": 1,
        "maxReplicasetSize": 4
    },
    "userConsistencyPolicy": {
        "defaultConsistencyLevel": "Session"
    },
    "systemReplicationPolicy": {
        "minReplicaSetSize": 1,
        "maxReplicasetSize": 4
    },
    "readPolicy": {
        "primaryReadCoefficient": 1,
        "secondaryReadCoefficient": 1
    },
    "queryEngineConfiguration": "{\\"maxSqlQueryInputLength\\":262144,\\"maxJoinsPerSqlQuery\\":5,\\"maxLogicalAndPerSqlQuery\\":500,\\"maxLogicalOrPerSqlQuery\\":500,\\"maxUdfRefPerSqlQuery\\":10,\\"maxInExpressionItemsCount\\":16000,\\"queryMaxInMemorySortDocumentCount\\":500,\\"maxQueryRequestTimeoutFraction\\":0.9,\\"sqlAllowNonFiniteNumbers\\":false,\\"sqlAllowAggregateFunctions\\":true,\\"sqlAllowSubQuery\\":true,\\"sqlAllowScalarSubQuery\\":true,\\"allowNewKeywords\\":true,\\"sqlAllowLike\\":false,\\"sqlAllowGroupByClause\\":false,\\"maxSpatialQueryCells\\":12,\\"spatialMaxGeometryPointCount\\":256,\\"sqlAllowTop\\":true,\\"enableSpatialIndexing\\":true}"
}

TomTom 6100 has a 32GB SD card limit

The TomTom 6100 has a 32GB maximum SD card limit because it requires the FAT32 file system.

Friday, 8 March 2019

Clone multiple-partition SD card with dd

List the disks and partitions
fdisk -l

Assuming that the sdcard is /dev/sdb with partitions /dev/sdb1 and /dev/sdb2

Unmount the partitions
umount /dev/sdb1
umount /dev/sdb2

Backup the partition table & MBR
dd if=/dev/sdb of=partitiontable.img bs=512 count=1

Backup the partitions
dd if=/dev/sdb1 of=partition1.img
dd if=/dev/sdb2 of=partition2.img

Restore the partition & MBR

Restore the partitions
sudo dd if=partitiontable.img of=/dev/sdb
sudo dd if=partition1.img of=/dev/sdb1
sudo dd if=partition2.img of=/dev/sdb2

https://askubuntu.com/questions/491082/steps-to-create-dd-image-file-from-usb-and-restore-image-to-a-different-usb




Attempt 2
umount /dev/sdb1
umount /dev/sdb2
dd if=/dev/sdb of=sdb.img bs=4M conv=noerror,notrunc status=progress

Sunday, 17 February 2019

Getting a Linux container to connect to the Cosmos DB emulator on the host machine

I've finally got a Linux container to connect to the Cosmos DB emulator on the host machine.

It is necessary to override the SSL verification process because the cURL /OpenSSL implementation on Debian Linux will return an error that the emulator is returning a self-signed certificate. This happens even if you install the certificate into ca-certificates.

This doesn't happen on Windows containers; it will honour the certificate if you install it into the Trusted Certification Authorities on the Computer store.

The other thing I found with using the V3 Cosmos DB SDK is that it is necessary to specifically set the connection mode to ConnectionMode = ConnectionMode.Gateway. If you don't do this you get the error:

CosmosRequestException;StatusCode=ServiceUnavailable;SubStatusCode=0;ActivityId=4a705616-21ae-4d5d-bec5-7b9ee8950438;RequestCharge=0;Message=Response status code does not indicate success: 503 Substatus: 0 Reason: (Service is currently unavailable.ActivityId: 4a705616-21ae-4d5d-bec5-7b9ee8950438, RequestStartTime: 2019-02-17T19:22:47.4337274Z, Number of regions attempted: 5ResponseTime: 2019-02-17T19:22:47.7375857Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7382707Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7514215Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7514246Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7593737Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7593837Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7670388Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7670421Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7757066Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7757105Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.7824268Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8019489Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8019536Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8103823Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8103858Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8184272Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8184305Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8287382Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8287428Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8385530Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8385565Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8465729Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8750780Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.8926065Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9215927Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9215972Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9327865Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9327900Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9408781Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9408819Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9484237Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9484273Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9575228Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9575270Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9652242Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9768492Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:47.9925856Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.0751316Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.0751477Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.1198555Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.1198862Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.1598310Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.1598465Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.1979447Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.1979610Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.2444786Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.2445010Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.2861704Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.3307031Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.4127985Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.8942345Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.8942415Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9085654Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9085690Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9239002Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9239039Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9358565Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9358599Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9481837Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9481912Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9594525Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9686429Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:51.9907359Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.2019523Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.2019720Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.2827287Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.2827470Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.3335009Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.3335123Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.3591186Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.3591293Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.3821192Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.3821303Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.4111658Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.4410806Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5026776Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7159972Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7160032Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7437652Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7437736Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7613897Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7613939Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7719120Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7719163Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7846943Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.7846984Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8001696Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8108664Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8336267Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.1608398Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.1608511Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.1960636Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.1960839Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.2297966Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.2298226Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.2711731Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.2711910Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.3021908Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.3022073Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.3437017Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.3568721Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:18.3809056Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.5724733Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.5724823Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.5942277Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.5942357Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6160218Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6160287Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6295680Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6295724Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6511830Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6511884Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6610954Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6736195Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:49.6948315Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0106273Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0106327Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0180594Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0180628Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0319283Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0319320Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0432484Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0432519Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0597979Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0598037Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0752649Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.0916680Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:52.1067702Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5288492Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5288572Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5425668Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5425706Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5533611Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5533685Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5644832Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5644870Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5879979Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.5880046Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.6040075Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.6195609Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:22:56.6461146Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8490081Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8490126Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8563830Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8563870Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8652515Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8652560Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8743458Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8743500Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8830416Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8830475Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.8920612Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.9006524Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadResponseTime: 2019-02-17T19:23:04.9167751Z, StoreReadResult: StorePhysicalAddress: rntbd://172.21.108.33:10251/, LSN: -1, GlobalCommittedLsn: -1, PartitionKeyRangeId: , IsValid: False, StatusCode: 410, IsGone: True, IsNotFound: False, IsInvalidPartition: False, RequestCharge: 0, ItemLSN: -1, SessionToken: , ResourceType: Database, OperationType: ReadAddressResolution - StartTime: 2019-02-17T19:22:47.5037673Z, EndTime: 2019-02-17T19:22:47.5622606Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:47.7836648Z, EndTime: 2019-02-17T19:22:47.7917256Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:47.8759944Z, EndTime: 2019-02-17T19:22:47.8827398Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:47.9058245Z, EndTime: 2019-02-17T19:22:47.9116592Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:47.9769286Z, EndTime: 2019-02-17T19:22:47.9833511Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:48.9882031Z, EndTime: 2019-02-17T19:22:49.0234257Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:49.3309670Z, EndTime: 2019-02-17T19:22:49.3652992Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:49.4514450Z, EndTime: 2019-02-17T19:22:49.5389936Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:49.6737033Z, EndTime: 2019-02-17T19:22:49.6823786Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:51.8055199Z, EndTime: 2019-02-17T19:22:51.8676713Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:51.9687320Z, EndTime: 2019-02-17T19:22:51.9759642Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:51.9913654Z, EndTime: 2019-02-17T19:22:51.9978117Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:52.0918485Z, EndTime: 2019-02-17T19:22:52.0979730Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:56.1052731Z, EndTime: 2019-02-17T19:22:56.1462273Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:56.4412705Z, EndTime: 2019-02-17T19:22:56.4799560Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:56.5030653Z, EndTime: 2019-02-17T19:22:56.5140179Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:22:56.6196482Z, EndTime: 2019-02-17T19:22:56.6319983Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:23:04.6485699Z, EndTime: 2019-02-17T19:23:04.6882551Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:23:04.8109491Z, EndTime: 2019-02-17T19:23:04.8228116Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:23:04.8339162Z, EndTime: 2019-02-17T19:23:04.8408803Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:23:04.9007391Z, EndTime: 2019-02-17T19:23:04.9069765Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:23:17.9146970Z, EndTime: 2019-02-17T19:23:18.1311934Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbdAddressResolution - StartTime: 2019-02-17T19:23:18.3569803Z, EndTime: 2019-02-17T19:23:18.3656629Z, TargetEndpoint: https://172.21.108.33:8081//addresses/?$resolveFor=dbs&$filter=protocol eq rntbd, Linux/9 documentdb-netcore-sdk/2.0.0).;

So you must connect with:
var cosmosConfiguration = new CosmosConfiguration(accountEndpoint, accountKey)
                {
                    DisableSslVerification = true,
                    ConnectionMode = ConnectionMode.Gateway
                };

Friday, 15 February 2019

Linux SSL Certificate verification in .NET Core

This is some analysis into the verification of SSL in .NET Core.
There is a behavioural difference: it you add a self-signed certificate into "Trusted Publishers" on a Windows machine then self-signed certificates are accepted, but on Linux machines they still error.

System.Net.Security.SecureChannel:VerifyRemoteCertificate

If CompleteHandshake fails then the error is thrown:
SR.net_ssl_io_cert_validation  "The remote certificate is invalid according to the validation procedure."

CompleteHandshake calls VerifyRemoteCertificate

SecureChannel.VerifyRemoteCertificate returns false if the certificate cannot be validated.

It calls CertificateValidationPal.GetRemoteCertificate and then CertificateValidationPal....

At this point the logic forks depending upon the OS.
CertificateValidationPal.VerifyCertificateProperties is in CertificateValidationPal.Unix.cs.

For Unix, this calls the CertificateValidation.BuildChainAndVerifyProperties.
This is in CertificateValidation.Unix.cs.

The X509Chain is built. It returns a ChainPal and runs BuildChain on it.
A linux ChainPal is returned.
It then runs the OpenSslX509ChainProcessor and runs BuildChain.
This has recursion as it enumerates the chain. It has a timeout to ensure the loading of certificates does not take too long.

The OpenSslX509ChainProcessor is run, and it runs the Pal.Unix/ChainVerifier.cs.
This runs HasUnsuppressedError which checks for errors that have not been surpressed. This includes checking for self-signed certificates.

The  Interop.Crypto.X509VerifyCert is called which calls calls native C code which calls the openSSL library function X509_verify_cert. This calls verify_chain.
OpenSSL build_chain will check for self signed certificates which has a return value of 18.

In OpenSSL, a self-signed certificate has a chain of 1.
Running 
openssl s_client -showcerts -verify 5 -connect cosmosdb.test:8081 
against a server will retun 

Debian ca-certificates notes.

Verify return code: 18 (self signed certificate)

In the dotnet core implhementation for Unix, Self-signed is when the subject name is the same as the issuer name (see code). Errors can occur because the peer trust is only supported for Windows certificate stores. Some of this is discussed here.

Having a self-signed certificate raises the X509VerificationFlags.IgnoreRootRevocationUnknown flag which needs to be surpressed, otherwise an error is returned.


This is a subtle difference from the standard Linux implementation of dotnet core; in dotnet core Self-signed is when the subject name is the same as the issuer name (see code).

If you have running Windows and a self-signed certificate in the Trusted Publishers store, then dotnet core will respect it and not throw an error. If you are running the same code on Linux and have installed the self-signed certificate into the ca-certificates store, it will throw an error.

The X509 Store differs by platform
The LocalMachine\Root store on Linux is an interpretation of the CA bundle in the default path for OpenSSL. The LocalMachine\Intermediate store on Linux is an interpretation of the CA bundle in the default path for OpenSSL. The CurrentUser\Intermediate store on Linux is used as a cache when downloading intermediate CAs by their Authority Information Access records on successful X509Chain builds.





Sunday, 10 February 2019

Docker commands & shortcuts

To stop all docker containers, in PowerShell:

docker ps -a -q | ForEach { docker stop $_ }