diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py index 5add1a0e97bb..5fd20703b922 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_blob_client.py @@ -52,7 +52,7 @@ upload_block_blob, upload_append_blob, upload_page_blob) -from ._models import BlobType, BlobBlock, BlobProperties +from ._models import BlobType, BlobBlock, BlobProperties, BlobQueryError from ._download import StorageStreamDownloader from ._lease import BlobLeaseClient, get_access_conditions @@ -750,6 +750,7 @@ def query_blob(self, query_expression, **kwargs): :caption: select/project on blob/or blob snapshot data by providing simple query expressions. """ errors = kwargs.pop("on_error", None) + error_cls = kwargs.pop("error_cls", BlobQueryError) encoding = kwargs.pop("encoding", None) options, delimiter = self._quick_query_options(query_expression, **kwargs) try: @@ -763,7 +764,8 @@ def query_blob(self, query_expression, **kwargs): record_delimiter=delimiter, encoding=encoding, headers=headers, - response=raw_response_body) + response=raw_response_body, + error_cls=error_cls) @staticmethod def _generic_delete_blob_options(delete_snapshots=False, **kwargs): diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations_async/_blob_operations_async.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations_async/_blob_operations_async.py index 344088bdf7b9..a30da63a57ae 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations_async/_blob_operations_async.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/aio/operations_async/_blob_operations_async.py @@ -439,6 +439,7 @@ async def get_properties(self, snapshot=None, version_id=None, timeout=None, req 'x-ms-tag-count': self._deserialize('long', response.headers.get('x-ms-tag-count')), 'x-ms-expiry-time': self._deserialize('rfc-1123', response.headers.get('x-ms-expiry-time')), 'x-ms-blob-sealed': self._deserialize('bool', response.headers.get('x-ms-blob-sealed')), + 'x-ms-rehydrate-priority': self._deserialize('str', response.headers.get('x-ms-rehydrate-priority')), 'x-ms-error-code': self._deserialize('str', response.headers.get('x-ms-error-code')), } return cls(response, None, response_headers) @@ -2257,7 +2258,7 @@ async def start_copy_from_url(self, copy_source, timeout=None, metadata=None, ti return cls(response, None, response_headers) start_copy_from_url.metadata = {'url': '/{containerName}/{blob}'} - async def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=None, request_id=None, source_content_md5=None, blob_tags_string=None, seal_blob=None, source_modified_access_conditions=None, modified_access_conditions=None, lease_access_conditions=None, *, cls=None, **kwargs): + async def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=None, request_id=None, source_content_md5=None, blob_tags_string=None, source_modified_access_conditions=None, modified_access_conditions=None, lease_access_conditions=None, *, cls=None, **kwargs): """The Copy From URL operation copies a blob or an internet resource to a new blob. It will not return a response until the copy is complete. @@ -2296,9 +2297,6 @@ async def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=Non :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str - :param seal_blob: Overrides the sealed state of the destination blob. - Service version 2019-12-12 and newer. - :type seal_blob: bool :param source_modified_access_conditions: Additional parameters for the operation :type source_modified_access_conditions: @@ -2376,8 +2374,6 @@ async def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=Non header_parameters['x-ms-source-content-md5'] = self._serialize.header("source_content_md5", source_content_md5, 'bytearray') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') - if seal_blob is not None: - header_parameters['x-ms-seal-blob'] = self._serialize.header("seal_blob", seal_blob, 'bool') header_parameters['x-ms-requires-sync'] = self._serialize.header("self.x_ms_requires_sync", self.x_ms_requires_sync, 'str') if source_if_modified_since is not None: header_parameters['x-ms-source-if-modified-since'] = self._serialize.header("source_if_modified_since", source_if_modified_since, 'rfc-1123') @@ -2505,7 +2501,7 @@ async def abort_copy_from_url(self, copy_id, timeout=None, request_id=None, leas return cls(response, None, response_headers) abort_copy_from_url.metadata = {'url': '/{containerName}/{blob}'} - async def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate_priority=None, request_id=None, lease_access_conditions=None, *, cls=None, **kwargs): + async def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate_priority=None, request_id=None, lease_access_conditions=None, modified_access_conditions=None, *, cls=None, **kwargs): """The Set Tier operation sets the tier on a blob. The operation is allowed on a page blob in a premium storage account and on a block blob in a blob storage account (locally redundant storage only). A premium @@ -2545,6 +2541,10 @@ async def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, reh operation :type lease_access_conditions: ~azure.storage.blob.models.LeaseAccessConditions + :param modified_access_conditions: Additional parameters for the + operation + :type modified_access_conditions: + ~azure.storage.blob.models.ModifiedAccessConditions :param callable cls: A custom type or function that will be passed the direct response :return: None or the result of cls(response) @@ -2556,6 +2556,9 @@ async def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, reh lease_id = None if lease_access_conditions is not None: lease_id = lease_access_conditions.lease_id + if_tags = None + if modified_access_conditions is not None: + if_tags = modified_access_conditions.if_tags comp = "tier" @@ -2586,6 +2589,8 @@ async def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, reh header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id", request_id, 'str') if lease_id is not None: header_parameters['x-ms-lease-id'] = self._serialize.header("lease_id", lease_id, 'str') + if if_tags is not None: + header_parameters['x-ms-if-tags'] = self._serialize.header("if_tags", if_tags, 'str') # Construct and send request request = self._client.put(url, query_parameters, header_parameters) diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py index a77c55794e10..6709caf3e7ea 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/__init__.py @@ -202,13 +202,13 @@ 'AccessTier', 'ArchiveStatus', 'BlobType', + 'RehydratePriority', 'StorageErrorCode', 'GeoReplicationStatusType', 'QueryFormatType', 'AccessTierRequired', 'AccessTierOptional', 'PremiumPageBlobAccessTier', - 'RehydratePriority', 'BlobExpiryOptions', 'BlockListType', 'DeleteSnapshotsOptionType', diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py index 853f65bbac6c..d89e858684ff 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_azure_blob_storage_enums.py @@ -78,6 +78,12 @@ class BlobType(str, Enum): append_blob = "AppendBlob" +class RehydratePriority(str, Enum): + + high = "High" + standard = "Standard" + + class StorageErrorCode(str, Enum): account_already_exists = "AccountAlreadyExists" @@ -257,12 +263,6 @@ class PremiumPageBlobAccessTier(str, Enum): p80 = "P80" -class RehydratePriority(str, Enum): - - high = "High" - standard = "Standard" - - class BlobExpiryOptions(str, Enum): never_expire = "NeverExpire" @@ -333,6 +333,8 @@ class AccountKind(str, Enum): storage = "Storage" blob_storage = "BlobStorage" storage_v2 = "StorageV2" + file_storage = "FileStorage" + block_blob_storage = "BlockBlobStorage" class SyncCopyStatusType(str, Enum): diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py index 1922133d70a5..1a40c97b6430 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models.py @@ -364,6 +364,9 @@ class BlobPropertiesInternal(Model): :type expires_on: datetime :param is_sealed: :type is_sealed: bool + :param rehydrate_priority: Possible values include: 'High', 'Standard' + :type rehydrate_priority: str or + ~azure.storage.blob.models.RehydratePriority """ _validation = { @@ -406,7 +409,8 @@ class BlobPropertiesInternal(Model): 'access_tier_change_time': {'key': 'AccessTierChangeTime', 'type': 'rfc-1123', 'xml': {'name': 'AccessTierChangeTime'}}, 'tag_count': {'key': 'TagCount', 'type': 'int', 'xml': {'name': 'TagCount'}}, 'expires_on': {'key': 'Expiry-Time', 'type': 'rfc-1123', 'xml': {'name': 'Expiry-Time'}}, - 'is_sealed': {'key': 'IsSealed', 'type': 'bool', 'xml': {'name': 'IsSealed'}}, + 'is_sealed': {'key': 'Sealed', 'type': 'bool', 'xml': {'name': 'Sealed'}}, + 'rehydrate_priority': {'key': 'RehydratePriority', 'type': 'str', 'xml': {'name': 'RehydratePriority'}}, } _xml_map = { 'name': 'Properties' @@ -449,6 +453,7 @@ def __init__(self, **kwargs): self.tag_count = kwargs.get('tag_count', None) self.expires_on = kwargs.get('expires_on', None) self.is_sealed = kwargs.get('is_sealed', None) + self.rehydrate_priority = kwargs.get('rehydrate_priority', None) class BlobTag(Model): @@ -1755,6 +1760,9 @@ class StaticWebsite(Model): :type index_document: str :param error_document404_path: The absolute path of the custom 404 page :type error_document404_path: str + :param default_index_document_path: Absolute path of the default index + page + :type default_index_document_path: str """ _validation = { @@ -1765,6 +1773,7 @@ class StaticWebsite(Model): 'enabled': {'key': 'Enabled', 'type': 'bool', 'xml': {'name': 'Enabled'}}, 'index_document': {'key': 'IndexDocument', 'type': 'str', 'xml': {'name': 'IndexDocument'}}, 'error_document404_path': {'key': 'ErrorDocument404Path', 'type': 'str', 'xml': {'name': 'ErrorDocument404Path'}}, + 'default_index_document_path': {'key': 'DefaultIndexDocumentPath', 'type': 'str', 'xml': {'name': 'DefaultIndexDocumentPath'}}, } _xml_map = { } @@ -1774,6 +1783,7 @@ def __init__(self, **kwargs): self.enabled = kwargs.get('enabled', None) self.index_document = kwargs.get('index_document', None) self.error_document404_path = kwargs.get('error_document404_path', None) + self.default_index_document_path = kwargs.get('default_index_document_path', None) class StorageError(Model): diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py index bd6fc85b7b22..ccf4920b8554 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/models/_models_py3.py @@ -364,6 +364,9 @@ class BlobPropertiesInternal(Model): :type expires_on: datetime :param is_sealed: :type is_sealed: bool + :param rehydrate_priority: Possible values include: 'High', 'Standard' + :type rehydrate_priority: str or + ~azure.storage.blob.models.RehydratePriority """ _validation = { @@ -406,13 +409,14 @@ class BlobPropertiesInternal(Model): 'access_tier_change_time': {'key': 'AccessTierChangeTime', 'type': 'rfc-1123', 'xml': {'name': 'AccessTierChangeTime'}}, 'tag_count': {'key': 'TagCount', 'type': 'int', 'xml': {'name': 'TagCount'}}, 'expires_on': {'key': 'Expiry-Time', 'type': 'rfc-1123', 'xml': {'name': 'Expiry-Time'}}, - 'is_sealed': {'key': 'IsSealed', 'type': 'bool', 'xml': {'name': 'IsSealed'}}, + 'is_sealed': {'key': 'Sealed', 'type': 'bool', 'xml': {'name': 'Sealed'}}, + 'rehydrate_priority': {'key': 'RehydratePriority', 'type': 'str', 'xml': {'name': 'RehydratePriority'}}, } _xml_map = { 'name': 'Properties' } - def __init__(self, *, last_modified, etag: str, creation_time=None, content_length: int=None, content_type: str=None, content_encoding: str=None, content_language: str=None, content_md5: bytearray=None, content_disposition: str=None, cache_control: str=None, blob_sequence_number: int=None, blob_type=None, lease_status=None, lease_state=None, lease_duration=None, copy_id: str=None, copy_status=None, copy_source: str=None, copy_progress: str=None, copy_completion_time=None, copy_status_description: str=None, server_encrypted: bool=None, incremental_copy: bool=None, destination_snapshot: str=None, deleted_time=None, remaining_retention_days: int=None, access_tier=None, access_tier_inferred: bool=None, archive_status=None, customer_provided_key_sha256: str=None, encryption_scope: str=None, access_tier_change_time=None, tag_count: int=None, expires_on=None, is_sealed: bool=None, **kwargs) -> None: + def __init__(self, *, last_modified, etag: str, creation_time=None, content_length: int=None, content_type: str=None, content_encoding: str=None, content_language: str=None, content_md5: bytearray=None, content_disposition: str=None, cache_control: str=None, blob_sequence_number: int=None, blob_type=None, lease_status=None, lease_state=None, lease_duration=None, copy_id: str=None, copy_status=None, copy_source: str=None, copy_progress: str=None, copy_completion_time=None, copy_status_description: str=None, server_encrypted: bool=None, incremental_copy: bool=None, destination_snapshot: str=None, deleted_time=None, remaining_retention_days: int=None, access_tier=None, access_tier_inferred: bool=None, archive_status=None, customer_provided_key_sha256: str=None, encryption_scope: str=None, access_tier_change_time=None, tag_count: int=None, expires_on=None, is_sealed: bool=None, rehydrate_priority=None, **kwargs) -> None: super(BlobPropertiesInternal, self).__init__(**kwargs) self.creation_time = creation_time self.last_modified = last_modified @@ -449,6 +453,7 @@ def __init__(self, *, last_modified, etag: str, creation_time=None, content_leng self.tag_count = tag_count self.expires_on = expires_on self.is_sealed = is_sealed + self.rehydrate_priority = rehydrate_priority class BlobTag(Model): @@ -1755,6 +1760,9 @@ class StaticWebsite(Model): :type index_document: str :param error_document404_path: The absolute path of the custom 404 page :type error_document404_path: str + :param default_index_document_path: Absolute path of the default index + page + :type default_index_document_path: str """ _validation = { @@ -1765,15 +1773,17 @@ class StaticWebsite(Model): 'enabled': {'key': 'Enabled', 'type': 'bool', 'xml': {'name': 'Enabled'}}, 'index_document': {'key': 'IndexDocument', 'type': 'str', 'xml': {'name': 'IndexDocument'}}, 'error_document404_path': {'key': 'ErrorDocument404Path', 'type': 'str', 'xml': {'name': 'ErrorDocument404Path'}}, + 'default_index_document_path': {'key': 'DefaultIndexDocumentPath', 'type': 'str', 'xml': {'name': 'DefaultIndexDocumentPath'}}, } _xml_map = { } - def __init__(self, *, enabled: bool, index_document: str=None, error_document404_path: str=None, **kwargs) -> None: + def __init__(self, *, enabled: bool, index_document: str=None, error_document404_path: str=None, default_index_document_path: str=None, **kwargs) -> None: super(StaticWebsite, self).__init__(**kwargs) self.enabled = enabled self.index_document = index_document self.error_document404_path = error_document404_path + self.default_index_document_path = default_index_document_path class StorageError(Model): diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py index e956bcc25e84..a459974fdf99 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_generated/operations/_blob_operations.py @@ -438,6 +438,7 @@ def get_properties(self, snapshot=None, version_id=None, timeout=None, request_i 'x-ms-tag-count': self._deserialize('long', response.headers.get('x-ms-tag-count')), 'x-ms-expiry-time': self._deserialize('rfc-1123', response.headers.get('x-ms-expiry-time')), 'x-ms-blob-sealed': self._deserialize('bool', response.headers.get('x-ms-blob-sealed')), + 'x-ms-rehydrate-priority': self._deserialize('str', response.headers.get('x-ms-rehydrate-priority')), 'x-ms-error-code': self._deserialize('str', response.headers.get('x-ms-error-code')), } return cls(response, None, response_headers) @@ -2256,7 +2257,7 @@ def start_copy_from_url(self, copy_source, timeout=None, metadata=None, tier=Non return cls(response, None, response_headers) start_copy_from_url.metadata = {'url': '/{containerName}/{blob}'} - def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=None, request_id=None, source_content_md5=None, blob_tags_string=None, seal_blob=None, source_modified_access_conditions=None, modified_access_conditions=None, lease_access_conditions=None, cls=None, **kwargs): + def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=None, request_id=None, source_content_md5=None, blob_tags_string=None, source_modified_access_conditions=None, modified_access_conditions=None, lease_access_conditions=None, cls=None, **kwargs): """The Copy From URL operation copies a blob or an internet resource to a new blob. It will not return a response until the copy is complete. @@ -2295,9 +2296,6 @@ def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=None, req :param blob_tags_string: Optional. Used to set blob tags in various blob operations. :type blob_tags_string: str - :param seal_blob: Overrides the sealed state of the destination blob. - Service version 2019-12-12 and newer. - :type seal_blob: bool :param source_modified_access_conditions: Additional parameters for the operation :type source_modified_access_conditions: @@ -2375,8 +2373,6 @@ def copy_from_url(self, copy_source, timeout=None, metadata=None, tier=None, req header_parameters['x-ms-source-content-md5'] = self._serialize.header("source_content_md5", source_content_md5, 'bytearray') if blob_tags_string is not None: header_parameters['x-ms-tags'] = self._serialize.header("blob_tags_string", blob_tags_string, 'str') - if seal_blob is not None: - header_parameters['x-ms-seal-blob'] = self._serialize.header("seal_blob", seal_blob, 'bool') header_parameters['x-ms-requires-sync'] = self._serialize.header("self.x_ms_requires_sync", self.x_ms_requires_sync, 'str') if source_if_modified_since is not None: header_parameters['x-ms-source-if-modified-since'] = self._serialize.header("source_if_modified_since", source_if_modified_since, 'rfc-1123') @@ -2504,7 +2500,7 @@ def abort_copy_from_url(self, copy_id, timeout=None, request_id=None, lease_acce return cls(response, None, response_headers) abort_copy_from_url.metadata = {'url': '/{containerName}/{blob}'} - def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate_priority=None, request_id=None, lease_access_conditions=None, cls=None, **kwargs): + def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate_priority=None, request_id=None, lease_access_conditions=None, modified_access_conditions=None, cls=None, **kwargs): """The Set Tier operation sets the tier on a blob. The operation is allowed on a page blob in a premium storage account and on a block blob in a blob storage account (locally redundant storage only). A premium @@ -2544,6 +2540,10 @@ def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate operation :type lease_access_conditions: ~azure.storage.blob.models.LeaseAccessConditions + :param modified_access_conditions: Additional parameters for the + operation + :type modified_access_conditions: + ~azure.storage.blob.models.ModifiedAccessConditions :param callable cls: A custom type or function that will be passed the direct response :return: None or the result of cls(response) @@ -2555,6 +2555,9 @@ def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate lease_id = None if lease_access_conditions is not None: lease_id = lease_access_conditions.lease_id + if_tags = None + if modified_access_conditions is not None: + if_tags = modified_access_conditions.if_tags comp = "tier" @@ -2585,6 +2588,8 @@ def set_tier(self, tier, snapshot=None, version_id=None, timeout=None, rehydrate header_parameters['x-ms-client-request-id'] = self._serialize.header("request_id", request_id, 'str') if lease_id is not None: header_parameters['x-ms-lease-id'] = self._serialize.header("lease_id", lease_id, 'str') + if if_tags is not None: + header_parameters['x-ms-if-tags'] = self._serialize.header("if_tags", if_tags, 'str') # Construct and send request request = self._client.put(url, query_parameters, header_parameters) diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py index a31f1799fe5a..c573de493c22 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_models.py @@ -1293,7 +1293,7 @@ def __init__(self, **kwargs): self.status = kwargs.pop('status', None) -class BlobQueryError(Exception): +class BlobQueryError(object): """The error happened during quick query operation. :ivar str error: @@ -1312,7 +1312,3 @@ def __init__(self, error=None, is_fatal=False, description=None, position=None): self.is_fatal = is_fatal self.description = description self.position = position - message = self.error - if self.description: - message += ": {}".format(self.description) - super(BlobQueryError, self).__init__(message) diff --git a/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py b/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py index afad9a1727ff..eb51d987b9ac 100644 --- a/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py +++ b/sdk/storage/azure-storage-blob/azure/storage/blob/_quick_query_helper.py @@ -10,8 +10,6 @@ from ._shared.avro.datafile import DataFileReader from ._shared.avro.avro_io import DatumReader -from ._models import BlobQueryError - class BlobQueryReader(object): # pylint: disable=too-many-instance-attributes """A streaming object to read query results. @@ -35,7 +33,8 @@ def __init__( record_delimiter='\n', encoding=None, headers=None, - response=None + response=None, + error_cls=None, ): self.name = name self.container = container @@ -47,6 +46,7 @@ def __init__( self._encoding = encoding self._parsed_results = DataFileReader(QuickQueryStreamer(response), DatumReader()) self._first_result = self._process_record(next(self._parsed_results)) + self._error_cls = error_cls def __len__(self): return self._size @@ -57,7 +57,7 @@ def _process_record(self, result): if 'data' in result: return result.get('data') if 'fatal' in result: - error = BlobQueryError( + error = self._error_cls( error=result['name'], is_fatal=result['fatal'], description=result['description'], diff --git a/sdk/storage/azure-storage-blob/tests/test_quick_query.py b/sdk/storage/azure-storage-blob/tests/test_quick_query.py index 4a6d510cf320..434b036e18cb 100644 --- a/sdk/storage/azure-storage-blob/tests/test_quick_query.py +++ b/sdk/storage/azure-storage-blob/tests/test_quick_query.py @@ -470,7 +470,7 @@ def test_quick_query_readall_with_fatal_error_handler_raise(self, resource_group errors = [] def on_error(error): - raise error + raise Exception(error.description) input_format = DelimitedJSON() output_format = DelimitedTextDialect( @@ -484,7 +484,7 @@ def on_error(error): on_error=on_error, blob_format=input_format, output_format=output_format) - with pytest.raises(BlobQueryError): + with pytest.raises(Exception): query_result = resp.readall() self._teardown(bsc) @@ -513,7 +513,7 @@ def test_quick_query_iter_records_with_fatal_error_handler_raise(self, resource_ errors = [] def on_error(error): - raise error + raise Exception(error.description) input_format = DelimitedJSON() output_format = DelimitedTextDialect( @@ -528,7 +528,7 @@ def on_error(error): blob_format=input_format, output_format=output_format) - with pytest.raises(BlobQueryError): + with pytest.raises(Exception): for record in resp.records(): print(record) self._teardown(bsc) diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py index d5bc4c907835..7f45af9d370f 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/__init__.py @@ -28,6 +28,9 @@ UserDelegationKey, PublicAccess, AccessPolicy, + DelimitedTextDialect, + DelimitedJSON, + DataLakeFileQueryError ) from ._shared_access_signature import generate_account_sas, generate_file_system_sas, generate_directory_sas, \ generate_file_sas @@ -69,5 +72,8 @@ 'generate_directory_sas', 'generate_file_sas', 'VERSION', - 'StorageStreamDownloader' + 'StorageStreamDownloader', + 'DelimitedTextDialect', + 'DelimitedJSON', + 'DataLakeFileQueryError' ] diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py index e574e748ae8b..0316f3c1b23b 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_data_lake_file_client.py @@ -6,6 +6,7 @@ from io import BytesIO import six +from ._quick_query_helper import DataLakeFileQueryReader from ._shared.base_client import parse_connection_str from ._shared.request_handlers import get_length, read_length from ._shared.response_handlers import return_response_headers @@ -16,7 +17,7 @@ from ._path_client import PathClient from ._serialize import get_mod_conditions, get_path_http_headers, get_access_conditions, add_metadata_headers from ._deserialize import process_storage_error -from ._models import FileProperties +from ._models import FileProperties, DataLakeFileQueryError class DataLakeFileClient(PathClient): @@ -641,3 +642,66 @@ def rename_file(self, new_name, # type: str new_directory_client._rename_path('/'+self.file_system_name+'/'+self.path_name, # pylint: disable=protected-access **kwargs) return new_directory_client + + def query_file(self, query_expression, **kwargs): + # type: (str, **Any) -> DataLakeFileQueryReader + """Enables users to select/project on datalake file data by providing simple query expressions. + This operations returns a DataLakeFileQueryReader, users need to use readall() or readinto() to get query data. + + :param str query_expression: + Required. a query statement. + :keyword Callable[Exception] on_error: + A function to be called on any processing errors returned by the service. + :keyword file_format: + Optional. Defines the serialization of the data currently stored in the file. The default is to + treat the file data as CSV data formatted in the default dialect. This can be overridden with + a custom DelimitedTextDialect, or alternatively a DelimitedJSON. + :paramtype file_format: + ~azure.storage.filedatalake.DelimitedTextDialect or ~azure.storage.filedatalake.DelimitedJSON + :keyword output_format: + Optional. Defines the output serialization for the data stream. By default the data will be returned + as it is represented in the file. By providing an output format, the file data will be reformatted + according to that profile. This value can be a DelimitedTextDialect or a DelimitedJSON. + :paramtype output_format: + ~azure.storage.filedatalake.DelimitedTextDialect or ~azure.storage.filedatalake.DelimitedJSON + :keyword lease: + Required if the file has an active lease. Value can be a DataLakeLeaseClient object + or the lease ID as a string. + :paramtype lease: ~azure.storage.filedatalake.DataLakeLeaseClient or str + :keyword ~datetime.datetime if_modified_since: + A DateTime value. Azure expects the date value passed in to be UTC. + If timezone is included, any non-UTC datetimes will be converted to UTC. + If a date is passed in without timezone info, it is assumed to be UTC. + Specify this header to perform the operation only + if the resource has been modified since the specified time. + :keyword ~datetime.datetime if_unmodified_since: + A DateTime value. Azure expects the date value passed in to be UTC. + If timezone is included, any non-UTC datetimes will be converted to UTC. + If a date is passed in without timezone info, it is assumed to be UTC. + Specify this header to perform the operation only if + the resource has not been modified since the specified date/time. + :keyword str etag: + An ETag value, or the wildcard character (*). Used to check if the resource has changed, + and act according to the condition specified by the `match_condition` parameter. + :keyword ~azure.core.MatchConditions match_condition: + The match condition to use upon the etag. + :keyword int timeout: + The timeout parameter is expressed in seconds. + :returns: A streaming object (DataLakeFileQueryReader) + :rtype: ~azure.storage.filedatalake.DataLakeFileQueryReader + + .. admonition:: Example: + + .. literalinclude:: ../samples/blob_samples_query.py + :start-after: [START query] + :end-before: [END query] + :language: python + :dedent: 4 + :caption: select/project on blob/or blob snapshot data by providing simple query expressions. + """ + + blob_quick_query_reader = self._blob_client.query_blob(query_expression, + blob_format=kwargs.pop('file_format', None), + error_cls=DataLakeFileQueryError, + **kwargs) + return DataLakeFileQueryReader(blob_quick_query_reader) diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py index 79dc32d8b4d6..223c90b4924d 100644 --- a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_models.py @@ -15,6 +15,8 @@ from azure.storage.blob import ContentSettings as BlobContentSettings from azure.storage.blob import ContainerSasPermissions, BlobSasPermissions from azure.storage.blob import AccessPolicy as BlobAccessPolicy +from azure.storage.blob import DelimitedTextDialect as BlobDelimitedTextDialect +from azure.storage.blob import DelimitedJSON as BlobDelimitedJSON from azure.storage.blob._generated.models import StorageErrorException from azure.storage.blob._models import ContainerPropertiesPaged from ._deserialize import return_headers_and_deserialized_path_list @@ -598,3 +600,49 @@ class LocationMode(object): PRIMARY = 'primary' #: Requests should be sent to the primary location. SECONDARY = 'secondary' #: Requests should be sent to the secondary location, if possible. + + +class DelimitedJSON(BlobDelimitedJSON): + """Defines the input or output JSON serialization for a datalake query. + + :keyword str delimiter: The line separator character, default value is '\n' + """ + + +class DelimitedTextDialect(BlobDelimitedTextDialect): + """Defines the input or output delimited (CSV) serialization for a datalake query request. + + :keyword str delimiter: + Column separator, defaults to ','. + :keyword str quotechar: + Field quote, defaults to '"'. + :keyword str lineterminator: + Record separator, defaults to '\n'. + :keyword str escapechar: + Escape char, defaults to empty. + :keyword bool has_header: + Whether the blob data includes headers in the first line. The default value is False, meaning that the + data will be returned inclusive of the first line. If set to True, the data will be returned exclusive + of the first line. + """ + + +class DataLakeFileQueryError(object): + """The error happened during quick query operation. + + :ivar str error: + The name of the error. + :ivar bool is_fatal: + If true, this error prevents further query processing. More result data may be returned, + but there is no guarantee that all of the original data will be processed. + If false, this error does not prevent further query processing. + :ivar str description: + A description of the error. + :ivar int position: + The blob offset at which the error occurred. + """ + def __init__(self, error=None, is_fatal=False, description=None, position=None): + self.error = error + self.is_fatal = is_fatal + self.description = description + self.position = position diff --git a/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_quick_query_helper.py b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_quick_query_helper.py new file mode 100644 index 000000000000..ff67d277a168 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/azure/storage/filedatalake/_quick_query_helper.py @@ -0,0 +1,71 @@ +# ------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# -------------------------------------------------------------------------- + +from typing import Union, Iterable, IO # pylint: disable=unused-import + + +class DataLakeFileQueryReader(object): # pylint: disable=too-many-instance-attributes + """A streaming object to read query results. + + :ivar str name: + The name of the blob being quered. + :ivar str container: + The name of the container where the blob is. + :ivar dict response_headers: + The response_headers of the quick query request. + :ivar bytes record_delimiter: + The delimiter used to separate lines, or records with the data. The `records` + method will return these lines via a generator. + """ + + def __init__( + self, + blob_query_reader + ): + self.name = blob_query_reader.name + self.file_system = blob_query_reader.container + self.response_headers = blob_query_reader.response_headers + self.record_delimiter = blob_query_reader.record_delimiter + self._bytes_processed = 0 + self._blob_query_reader = blob_query_reader + + def __len__(self): + return len(self._blob_query_reader) + + def readall(self): + # type: () -> Union[bytes, str] + """Return all query results. + + This operation is blocking until all data is downloaded. + If encoding has been configured - this will be used to decode individual + records are they are received. + + :rtype: Union[bytes, str] + """ + return self._blob_query_reader.readall() + + def readinto(self, stream): + # type: (IO) -> None + """Download the query result to a stream. + + :param stream: + The stream to download to. This can be an open file-handle, + or any writable stream. + :returns: None + """ + self._blob_query_reader(stream) + + def records(self): + # type: () -> Iterable[Union[bytes, str]] + """Returns a record generator for the query result. + + Records will be returned line by line. + If encoding has been configured - this will be used to decode individual + records are they are received. + + :rtype: Iterable[Union[bytes, str]] + """ + return self._blob_query_reader.records() diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records.yaml new file mode 100644 index 000000000000..6409e7b6e72f --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records.yaml @@ -0,0 +1,288 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 81c0f814-ce00-11ea-a66b-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:36 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerc3991335/csvfilec3991335?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:35 GMT + ETag: + - '"0x8D8302466288AB0"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:36 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 81f7db4a-501f-0012-4e0d-623644000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 81f97f58-ce00-11ea-80dd-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:36 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerc3991335/csvfilec3991335?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:35 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 81f7db4b-501f-0012-4f0d-623644000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302466288AB0"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 82078c4c-ce00-11ea-bda2-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:36 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerc3991335/csvfilec3991335?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:35 GMT + ETag: + - '"0x8D8302466456F8A"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:36 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 81f7db4c-501f-0012-500d-623644000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStorage' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '144' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 82162b46-ce00-11ea-9aa8-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:36 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerc3991335/csvfilec3991335?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAnVuDXU6qh0KLtLmMysMX8QLkIgDeIlNl + cnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRoLE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0 + aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbiwxLGFwcGNvbmZpZ3VyYXRpb24sRkFMU0UK + RXZlbnQgSHVicwpFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmUsYXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYiwxLjAuMSxldmVudGh1 + YnMsRkFMU0UKSWRlbnRpdHksYXp1cmUtaWRlbnRpdHksMS4xLjAtYmV0YS4xLGlkZW50aXR5LEZB + TFNFCktleSBWYXVsdCAtIENlcnRpZmljYXRlcyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0 + aWZpY2F0ZXMsNC4wLjAsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gS2V5cyxhenVyZS1zZWN1 + cml0eS1rZXl2YXVsdC1rZXlzLDQuMi4wLWJldGEuMSxrZXl2YXVsdCxGQUxTRQpLZXkgVmF1bHQg + LSBTZWNyZXRzLGF6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHMsNC4xLjAsa2V5dmF1bHQs + RkFMU0UKU3RvcmFnZSAtIEJsb2JzLGF6dXJlLXN0b3JhZ2UtYmxvYiwxMi40LjAsc3RvcmFnZSxG + QUxTRQpTdG9yYWdlIC0gQmxvYnMgQmF0Y2gsYXp1cmUtc3RvcmFnZS1ibG9iLWJhdGNoLDEyLjQu + MC1iZXRhLjEsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQ3J5cHRvZ3JhcGh5LGF6dXJl + LXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHksMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAt + IEZpbGUgU2hhcmVzLGF6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZSwxMi4yLjAsc3RvcmFnZSxGQUxT + RQpTdG9yYWdlIC0gUXVldWVzLGF6dXJlLXN0b3JhZ2UtcXVldWUsMTIuMy4wLHN0b3JhZ2UsRkFM + U0UKVGV4dCBBbmFseXRpY3MsYXp1cmUtYWktdGV4dGFuYWx5dGljcywxLjAuMC1iZXRhLjIsdGV4 + dGFuYWx5dGljcyxGQUxTRQpUcmFjaW5nLGF6dXJlLWNvcmUtdHJhY2luZy1vcGVudGVsZW1ldHJ5 + LDEuMC4wLWJldGEuMixjb3JlLEZBTFNFClNlcnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRo + LE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlv + biwxLjAuMSxhcHBjb25maWd1cmF0aW9uLEZBTFNFCkV2ZW50IEh1YnMsYXp1cmUtbWVzc2FnaW5n + LWV2ZW50aHVicyw1LjAuMSxldmVudGh1YnMsRkFMU0UKRXZlbnQgSHVicyAtIEF6dXJlIFN0b3Jh + Z2UgQ2hlY2twb2ludFN0b3JlLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMtY2hlY2twb2ludHN0 + b3JlLWJsb2IsMS4wLjEsZXZlbnRodWJzLEZBTFNFCklkZW50aXR5LGF6dXJlLWlkZW50aXR5LDEu + MS4wLWJldGEuMSxpZGVudGl0eSxGQUxTRQpLZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXMsYXp1cmUt + c2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzLDQuMC4wLGtleXZhdWx0LEZBTFNFCktleSBW + YXVsdCAtIEtleXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5cyw0LjIuMC1iZXRhLjEsa2V5 + dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gU2VjcmV0cyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1z + ZWNyZXRzLDQuMS4wLGtleXZhdWx0LEZBTFNFClN0b3JhZ2UgLSBCbG9icyxhenVyZS1zdG9yYWdl + LWJsb2IsMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJsb2JzIEJhdGNoLGF6dXJlLXN0 + b3JhZ2UtYmxvYi1iYXRjaCwxMi40LjAtYmV0YS4xLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJs + b2JzIENyeXB0b2dyYXBoeSxhenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5LDEyLjQuMCxz + dG9yYWdlLEZBTFNFClN0b3JhZ2UgLSBGaWxlIFNoYXJlcyxhenVyZS1zdG9yYWdlLWZpbGUtc2hh + cmUsMTIuMi4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIFF1ZXVlcyxhenVyZS1zdG9yYWdlLXF1 + ZXVlLDEyLjMuMCxzdG9yYWdlLEZBTFNFClRleHQgQW5hbHl0aWNzLGF6dXJlLWFpLXRleHRhbmFs + eXRpY3MsMS4wLjAtYmV0YS4yLHRleHRhbmFseXRpY3MsRkFMU0UKVHJhY2luZyxhenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeSwxLjAuMC1iZXRhLjIsY29yZSxGQUxTRQpTZXJ2aWNlLFBh + Y2thZ2UsVmVyc2lvbixSZXBvUGF0aCxNaXNzaW5nRG9jcwpBcHAgQ29uZmlndXJhdGlvbixhenVy + ZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb24sMS4wLjEsYXBwY29uZmlndXJhdGlvbixGQUxTRQpFdmVu + dCBIdWJzLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMsNS4wLjEsZXZlbnRodWJzLEZBTFNFCp1b + g11OqodCi7S5jMrDF/ECCgSgI6AjnVuDXU6qh0KLtLmMysMX8QIGBqAjnVuDXU6qh0KLtLmMysMX + 8Q== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:36 GMT + ETag: + - '"0x8D8302466456F8A"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:36 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:36 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - d1b17445-b01e-001a-4d0d-622c4b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_encoding.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_encoding.yaml new file mode 100644 index 000000000000..e05a1394f0f2 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_encoding.yaml @@ -0,0 +1,288 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 829fc78a-ce00-11ea-9279-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:37 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerfbcf18f6/csvfilefbcf18f6?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:37 GMT + ETag: + - '"0x8D8302466FFDD2B"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:37 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 61f52219-801f-0011-400d-62d720000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 82d0a74c-ce00-11ea-9743-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:37 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerfbcf18f6/csvfilefbcf18f6?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:37 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 61f52223-801f-0011-4a0d-62d720000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302466FFDD2B"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 82dc6c6e-ce00-11ea-8c23-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:37 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerfbcf18f6/csvfilefbcf18f6?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:37 GMT + ETag: + - '"0x8D830246718FEC7"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:37 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 61f5222e-801f-0011-550d-62d720000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStorage' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '144' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 82e9d748-ce00-11ea-a344-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:37 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerfbcf18f6/csvfilefbcf18f6?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAi+JMwgn4rEeOiaiy7wHf/QLkIgDeIlNl + cnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRoLE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0 + aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbiwxLGFwcGNvbmZpZ3VyYXRpb24sRkFMU0UK + RXZlbnQgSHVicwpFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmUsYXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYiwxLjAuMSxldmVudGh1 + YnMsRkFMU0UKSWRlbnRpdHksYXp1cmUtaWRlbnRpdHksMS4xLjAtYmV0YS4xLGlkZW50aXR5LEZB + TFNFCktleSBWYXVsdCAtIENlcnRpZmljYXRlcyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0 + aWZpY2F0ZXMsNC4wLjAsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gS2V5cyxhenVyZS1zZWN1 + cml0eS1rZXl2YXVsdC1rZXlzLDQuMi4wLWJldGEuMSxrZXl2YXVsdCxGQUxTRQpLZXkgVmF1bHQg + LSBTZWNyZXRzLGF6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHMsNC4xLjAsa2V5dmF1bHQs + RkFMU0UKU3RvcmFnZSAtIEJsb2JzLGF6dXJlLXN0b3JhZ2UtYmxvYiwxMi40LjAsc3RvcmFnZSxG + QUxTRQpTdG9yYWdlIC0gQmxvYnMgQmF0Y2gsYXp1cmUtc3RvcmFnZS1ibG9iLWJhdGNoLDEyLjQu + MC1iZXRhLjEsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQ3J5cHRvZ3JhcGh5LGF6dXJl + LXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHksMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAt + IEZpbGUgU2hhcmVzLGF6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZSwxMi4yLjAsc3RvcmFnZSxGQUxT + RQpTdG9yYWdlIC0gUXVldWVzLGF6dXJlLXN0b3JhZ2UtcXVldWUsMTIuMy4wLHN0b3JhZ2UsRkFM + U0UKVGV4dCBBbmFseXRpY3MsYXp1cmUtYWktdGV4dGFuYWx5dGljcywxLjAuMC1iZXRhLjIsdGV4 + dGFuYWx5dGljcyxGQUxTRQpUcmFjaW5nLGF6dXJlLWNvcmUtdHJhY2luZy1vcGVudGVsZW1ldHJ5 + LDEuMC4wLWJldGEuMixjb3JlLEZBTFNFClNlcnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRo + LE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlv + biwxLjAuMSxhcHBjb25maWd1cmF0aW9uLEZBTFNFCkV2ZW50IEh1YnMsYXp1cmUtbWVzc2FnaW5n + LWV2ZW50aHVicyw1LjAuMSxldmVudGh1YnMsRkFMU0UKRXZlbnQgSHVicyAtIEF6dXJlIFN0b3Jh + Z2UgQ2hlY2twb2ludFN0b3JlLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMtY2hlY2twb2ludHN0 + b3JlLWJsb2IsMS4wLjEsZXZlbnRodWJzLEZBTFNFCklkZW50aXR5LGF6dXJlLWlkZW50aXR5LDEu + MS4wLWJldGEuMSxpZGVudGl0eSxGQUxTRQpLZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXMsYXp1cmUt + c2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzLDQuMC4wLGtleXZhdWx0LEZBTFNFCktleSBW + YXVsdCAtIEtleXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5cyw0LjIuMC1iZXRhLjEsa2V5 + dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gU2VjcmV0cyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1z + ZWNyZXRzLDQuMS4wLGtleXZhdWx0LEZBTFNFClN0b3JhZ2UgLSBCbG9icyxhenVyZS1zdG9yYWdl + LWJsb2IsMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJsb2JzIEJhdGNoLGF6dXJlLXN0 + b3JhZ2UtYmxvYi1iYXRjaCwxMi40LjAtYmV0YS4xLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJs + b2JzIENyeXB0b2dyYXBoeSxhenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5LDEyLjQuMCxz + dG9yYWdlLEZBTFNFClN0b3JhZ2UgLSBGaWxlIFNoYXJlcyxhenVyZS1zdG9yYWdlLWZpbGUtc2hh + cmUsMTIuMi4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIFF1ZXVlcyxhenVyZS1zdG9yYWdlLXF1 + ZXVlLDEyLjMuMCxzdG9yYWdlLEZBTFNFClRleHQgQW5hbHl0aWNzLGF6dXJlLWFpLXRleHRhbmFs + eXRpY3MsMS4wLjAtYmV0YS4yLHRleHRhbmFseXRpY3MsRkFMU0UKVHJhY2luZyxhenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeSwxLjAuMC1iZXRhLjIsY29yZSxGQUxTRQpTZXJ2aWNlLFBh + Y2thZ2UsVmVyc2lvbixSZXBvUGF0aCxNaXNzaW5nRG9jcwpBcHAgQ29uZmlndXJhdGlvbixhenVy + ZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb24sMS4wLjEsYXBwY29uZmlndXJhdGlvbixGQUxTRQpFdmVu + dCBIdWJzLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMsNS4wLjEsZXZlbnRodWJzLEZBTFNFCovi + TMIJ+KxHjomosu8B3/0CCgSgI6Aji+JMwgn4rEeOiaiy7wHf/QIGBqAji+JMwgn4rEeOiaiy7wHf + /Q== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:38 GMT + ETag: + - '"0x8D830246718FEC7"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:37 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:37 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 25381a92-f01e-0046-4f0d-627913000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_handler.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_handler.yaml new file mode 100644 index 000000000000..cadb5a402f38 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_handler.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 837445c0-ce00-11ea-bd04-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:38 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer296e1d7d/csvfile296e1d7d?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:39 GMT + ETag: + - '"0x8D8302467CBE8E9"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:39 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - ec1d674d-301f-0049-2f0d-620f7f000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{name: owner} + + {name2: owner2} + + {name: owner}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '43' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 839c7d50-ce00-11ea-a6f6-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:39 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer296e1d7d/csvfile296e1d7d?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:39 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - ec1d6754-301f-0049-360d-620f7f000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302467CBE8E9"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 83a862d4-ce00-11ea-83bf-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:39 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer296e1d7d/csvfile296e1d7d?position=43&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:39 GMT + ETag: + - '"0x8D8302467E4C3A5"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:39 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - ec1d6759-301f-0049-3b0d-620f7f000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragejson + + delimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '595' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 83b5b5a8-ce00-11ea-9b66-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:39 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer296e1d7d/csvfile296e1d7d?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAOf64SugwaE+6gasRuCiPxwIEAAA5/rhK + 6DBoT7qBqxG4KI/HAlYCARpJbnRlcm5hbEVycm9yMkludGVybmFsIHBhcnNlIGV4Y2VwdGlvbi4A + Of64SugwaE+6gasRuCiPxwIGBFZWOf64SugwaE+6gasRuCiPxwIEBlY5/rhK6DBoT7qBqxG4KI/H + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:38 GMT + ETag: + - '"0x8D8302467E4C3A5"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:39 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:39 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - da4f6fb5-101e-002c-630d-62a13b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_handler_raise.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_handler_raise.yaml new file mode 100644 index 000000000000..d0468126e7b7 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_handler_raise.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 843e05b6-ce00-11ea-986b-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:40 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainere2da1ff0/csvfilee2da1ff0?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:39 GMT + ETag: + - '"0x8D8302468992FF9"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:40 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 23bfd712-901f-001d-310d-624028000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{name: owner} + + {name2: owner2} + + {name: owner}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '43' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8469d3fa-ce00-11ea-b220-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:40 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainere2da1ff0/csvfilee2da1ff0?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:39 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 23bfd719-901f-001d-380d-624028000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302468992FF9"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8474d78a-ce00-11ea-bcac-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:40 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainere2da1ff0/csvfilee2da1ff0?position=43&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:39 GMT + ETag: + - '"0x8D8302468B196FA"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:40 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 23bfd71a-901f-001d-390d-624028000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragejson + + delimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '595' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 84827482-ce00-11ea-9c91-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:40 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainere2da1ff0/csvfilee2da1ff0?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoA6KWRVQTnXUyNaMe3+/X8vQIEAADopZFV + BOddTI1ox7f79fy9AlYCARpJbnRlcm5hbEVycm9yMkludGVybmFsIHBhcnNlIGV4Y2VwdGlvbi4A + 6KWRVQTnXUyNaMe3+/X8vQIGBFZW6KWRVQTnXUyNaMe3+/X8vQIEBlbopZFVBOddTI1ox7f79fy9 + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:40 GMT + ETag: + - '"0x8D8302468B196FA"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:40 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:40 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 8b341bc4-e01e-004a-0a0d-62ee1b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_ignore.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_ignore.yaml new file mode 100644 index 000000000000..71b458081b3c --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_fatal_error_ignore.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 85019ac8-ce00-11ea-b6c0-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:41 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerc421d23/csvfilec421d23?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:41 GMT + ETag: + - '"0x8D830246959815A"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:41 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 748076a4-401f-000e-5d0d-626424000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{name: owner} + + {name2: owner2} + + {name: owner}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '43' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 852a1668-ce00-11ea-94a5-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:41 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerc421d23/csvfilec421d23?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:41 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 748076a5-401f-000e-5e0d-626424000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246959815A"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8532793e-ce00-11ea-a748-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:41 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerc421d23/csvfilec421d23?position=43&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:41 GMT + ETag: + - '"0x8D83024696BB6CF"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:41 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 748076a6-401f-000e-5f0d-626424000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragejson + + delimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '595' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 853c5fd2-ce00-11ea-afd1-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:41 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerc421d23/csvfilec421d23?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAhGpmpCaqE0CmBsZaz2/YkAIEAACEamak + JqoTQKYGxlrPb9iQAlYCARpJbnRlcm5hbEVycm9yMkludGVybmFsIHBhcnNlIGV4Y2VwdGlvbi4A + hGpmpCaqE0CmBsZaz2/YkAIGBFZWhGpmpCaqE0CmBsZaz2/YkAIEBlaEamakJqoTQKYGxlrPb9iQ + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:41 GMT + ETag: + - '"0x8D83024696BB6CF"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:41 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:41 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - da4f76a4-101e-002c-030d-62a13b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_headers.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_headers.yaml new file mode 100644 index 000000000000..7186303bbbdb --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_headers.yaml @@ -0,0 +1,291 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 85b12034-ce00-11ea-b583-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:42 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainere29c188b/csvfilee29c188b?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:41 GMT + ETag: + - '"0x8D830246A05B0FB"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:42 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - a757087b-501f-003d-770d-623b8f000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 85d65c08-ce00-11ea-a54c-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:42 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainere29c188b/csvfilee29c188b?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:42 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - a7570887-501f-003d-030d-623b8f000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246A05B0FB"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 85dfb6d0-ce00-11ea-becd-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:42 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainere29c188b/csvfilee29c188b?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:42 GMT + ETag: + - '"0x8D830246A1DC99D"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:43 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - a7570895-501f-003d-110d-623b8f000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragedelimited," + + truedelimited," + + true' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '702' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 85ef1bec-ce00-11ea-a1b0-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:43 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainere29c188b/csvfilee29c188b?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAEIPPKsBkpUK1CulTWfxQaQKKIgCEIkFw + cCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbiwxLGFwcGNvbmZpZ3Vy + YXRpb24sRkFMU0UKRXZlbnQgSHVicwpFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3Bv + aW50U3RvcmUsYXp1cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYiwx + LjAuMSxldmVudGh1YnMsRkFMU0UKSWRlbnRpdHksYXp1cmUtaWRlbnRpdHksMS4xLjAtYmV0YS4x + LGlkZW50aXR5LEZBTFNFCktleSBWYXVsdCAtIENlcnRpZmljYXRlcyxhenVyZS1zZWN1cml0eS1r + ZXl2YXVsdC1jZXJ0aWZpY2F0ZXMsNC4wLjAsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gS2V5 + cyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1rZXlzLDQuMi4wLWJldGEuMSxrZXl2YXVsdCxGQUxT + RQpLZXkgVmF1bHQgLSBTZWNyZXRzLGF6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHMsNC4x + LjAsa2V5dmF1bHQsRkFMU0UKU3RvcmFnZSAtIEJsb2JzLGF6dXJlLXN0b3JhZ2UtYmxvYiwxMi40 + LjAsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQmF0Y2gsYXp1cmUtc3RvcmFnZS1ibG9i + LWJhdGNoLDEyLjQuMC1iZXRhLjEsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQ3J5cHRv + Z3JhcGh5LGF6dXJlLXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHksMTIuNC4wLHN0b3JhZ2UsRkFM + U0UKU3RvcmFnZSAtIEZpbGUgU2hhcmVzLGF6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZSwxMi4yLjAs + c3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gUXVldWVzLGF6dXJlLXN0b3JhZ2UtcXVldWUsMTIuMy4w + LHN0b3JhZ2UsRkFMU0UKVGV4dCBBbmFseXRpY3MsYXp1cmUtYWktdGV4dGFuYWx5dGljcywxLjAu + MC1iZXRhLjIsdGV4dGFuYWx5dGljcyxGQUxTRQpUcmFjaW5nLGF6dXJlLWNvcmUtdHJhY2luZy1v + cGVudGVsZW1ldHJ5LDEuMC4wLWJldGEuMixjb3JlLEZBTFNFClNlcnZpY2UsUGFja2FnZSxWZXJz + aW9uLFJlcG9QYXRoLE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBw + Y29uZmlndXJhdGlvbiwxLjAuMSxhcHBjb25maWd1cmF0aW9uLEZBTFNFCkV2ZW50IEh1YnMsYXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicyw1LjAuMSxldmVudGh1YnMsRkFMU0UKRXZlbnQgSHVicyAt + IEF6dXJlIFN0b3JhZ2UgQ2hlY2twb2ludFN0b3JlLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMt + Y2hlY2twb2ludHN0b3JlLWJsb2IsMS4wLjEsZXZlbnRodWJzLEZBTFNFCklkZW50aXR5LGF6dXJl + LWlkZW50aXR5LDEuMS4wLWJldGEuMSxpZGVudGl0eSxGQUxTRQpLZXkgVmF1bHQgLSBDZXJ0aWZp + Y2F0ZXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzLDQuMC4wLGtleXZhdWx0 + LEZBTFNFCktleSBWYXVsdCAtIEtleXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5cyw0LjIu + MC1iZXRhLjEsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gU2VjcmV0cyxhenVyZS1zZWN1cml0 + eS1rZXl2YXVsdC1zZWNyZXRzLDQuMS4wLGtleXZhdWx0LEZBTFNFClN0b3JhZ2UgLSBCbG9icyxh + enVyZS1zdG9yYWdlLWJsb2IsMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJsb2JzIEJh + dGNoLGF6dXJlLXN0b3JhZ2UtYmxvYi1iYXRjaCwxMi40LjAtYmV0YS4xLHN0b3JhZ2UsRkFMU0UK + U3RvcmFnZSAtIEJsb2JzIENyeXB0b2dyYXBoeSxhenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3Jh + cGh5LDEyLjQuMCxzdG9yYWdlLEZBTFNFClN0b3JhZ2UgLSBGaWxlIFNoYXJlcyxhenVyZS1zdG9y + YWdlLWZpbGUtc2hhcmUsMTIuMi4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIFF1ZXVlcyxhenVy + ZS1zdG9yYWdlLXF1ZXVlLDEyLjMuMCxzdG9yYWdlLEZBTFNFClRleHQgQW5hbHl0aWNzLGF6dXJl + LWFpLXRleHRhbmFseXRpY3MsMS4wLjAtYmV0YS4yLHRleHRhbmFseXRpY3MsRkFMU0UKVHJhY2lu + ZyxhenVyZS1jb3JlLXRyYWNpbmctb3BlbnRlbGVtZXRyeSwxLjAuMC1iZXRhLjIsY29yZSxGQUxT + RQpTZXJ2aWNlLFBhY2thZ2UsVmVyc2lvbixSZXBvUGF0aCxNaXNzaW5nRG9jcwpBcHAgQ29uZmln + dXJhdGlvbixhenVyZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb24sMS4wLjEsYXBwY29uZmlndXJhdGlv + bixGQUxTRQpFdmVudCBIdWJzLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMsNS4wLjEsZXZlbnRo + dWJzLEZBTFNFChCDzyrAZKVCtQrpU1n8UGkCCgSgI6AjEIPPKsBkpUK1CulTWfxQaQIGBqAjEIPP + KsBkpUK1CulTWfxQaQ== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:42 GMT + ETag: + - '"0x8D830246A1DC99D"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:43 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:42 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - f352d370-f01e-0056-270d-62bc7b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_json_serialization_setting.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_json_serialization_setting.yaml new file mode 100644 index 000000000000..fb3b6b835506 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_json_serialization_setting.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8676f498-ce00-11ea-a070-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:43 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer75820a3/csvfile75820a3?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:43 GMT + ETag: + - '"0x8D830246AD62306"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:44 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - f3cbea4a-d01f-0051-260d-62d018000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{"name": "owner", "id": 1} + + {"name2": "owner2"} + + {"name": "owner", "id": 1}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '73' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 86a6d288-ce00-11ea-a7fd-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:44 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer75820a3/csvfile75820a3?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:43 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - f3cbea4e-d01f-0051-2a0d-62d018000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246AD62306"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 86b13200-ce00-11ea-a6f6-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:44 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer75820a3/csvfile75820a3?position=73&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:43 GMT + ETag: + - '"0x8D830246AEDC0BF"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:44 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - f3cbea51-d01f-0051-2d0d-62d018000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT name from BlobStoragejson + + json;' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '465' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 86be7842-ce00-11ea-af44-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:44 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer75820a3/csvfile75820a3?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoA9jc3A2t8DUWlBUzKQn8wPQJOAEp7Im5h + bWUiOiJvd25lciJ9O3t9O3sibmFtZSI6Im93bmVyIn079jc3A2t8DUWlBUzKQn8wPQIKBJIBkgH2 + NzcDa3wNRaUFTMpCfzA9AgYGkgH2NzcDa3wNRaUFTMpCfzA9 + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:43 GMT + ETag: + - '"0x8D830246AEDC0BF"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:44 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:44 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - c105793c-e01e-0017-6f0d-62e49f000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_nonfatal_error_handler.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_nonfatal_error_handler.yaml new file mode 100644 index 000000000000..bbc5884a7e47 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_nonfatal_error_handler.yaml @@ -0,0 +1,257 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 873da6ca-ce00-11ea-bf5e-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:45 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer85a21ec8/csvfile85a21ec8?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:44 GMT + ETag: + - '"0x8D830246B98614F"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:45 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - ace67122-501f-0002-170d-62f32c000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8769c7f8-ce00-11ea-a35f-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:45 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer85a21ec8/csvfile85a21ec8?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:44 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - ace67143-501f-0002-380d-62f32c000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246B98614F"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 87776d38-ce00-11ea-90ac-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:45 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer85a21ec8/csvfile85a21ec8?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:44 GMT + ETag: + - '"0x8D830246BB387C1"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:45 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - ace67157-501f-0002-4c0d-62f32c000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT RepoPath from BlobStoragedelimited," + + truedelimited;''%\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '722' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 87848bee-ce00-11ea-842c-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:45 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer85a21ec8/csvfile85a21ec8?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoA0fMyrVtgc0OSJ4t4AIm+5QLcBADWBGFw + cGNvbmZpZ3VyYXRpb24lZXZlbnRodWJzJWlkZW50aXR5JWtleXZhdWx0JWtleXZhdWx0JWtleXZh + dWx0JXN0b3JhZ2Ulc3RvcmFnZSVzdG9yYWdlJXN0b3JhZ2Ulc3RvcmFnZSV0ZXh0YW5hbHl0aWNz + JWNvcmUlUmVwb1BhdGglYXBwY29uZmlndXJhdGlvbiVldmVudGh1YnMlZXZlbnRodWJzJWlkZW50 + aXR5JWtleXZhdWx0JWtleXZhdWx0JWtleXZhdWx0JXN0b3JhZ2Ulc3RvcmFnZSVzdG9yYWdlJXN0 + b3JhZ2Ulc3RvcmFnZSV0ZXh0YW5hbHl0aWNzJWNvcmUlUmVwb1BhdGglYXBwY29uZmlndXJhdGlv + biVldmVudGh1YnMl0fMyrVtgc0OSJ4t4AIm+5QJ+AgAoSW52YWxpZENvbHVtbk9yZGluYWxKQ29s + dW1uIG9yZGluYWwgZG9lcyBub3QgZXhpc3QgaW4gcm93LuwB0fMyrVtgc0OSJ4t4AIm+5QIKBKAj + oCPR8zKtW2BzQ5Ini3gAib7lAgYGoCPR8zKtW2BzQ5Ini3gAib7l + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:45 GMT + ETag: + - '"0x8D830246BB387C1"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:45 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:45 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - d0f902dd-801e-002e-350d-621f83000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_nonfatal_error_ignore.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_nonfatal_error_ignore.yaml new file mode 100644 index 000000000000..265bdea598fa --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_nonfatal_error_ignore.yaml @@ -0,0 +1,257 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 880af7a6-ce00-11ea-ac88-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:46 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer672b1e6e/csvfile672b1e6e?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:45 GMT + ETag: + - '"0x8D830246C660795"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:46 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 8d62be83-201f-0008-310d-62579b000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 88370d10-ce00-11ea-8819-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:46 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer672b1e6e/csvfile672b1e6e?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:45 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 8d62be8a-201f-0008-380d-62579b000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246C660795"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8843244c-ce00-11ea-aaad-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:46 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer672b1e6e/csvfile672b1e6e?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:46 GMT + ETag: + - '"0x8D830246C7E911A"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:47 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 8d62be92-201f-0008-400d-62579b000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT RepoPath from BlobStoragedelimited," + + truedelimited;''$\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '722' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 884fc29e-ce00-11ea-a573-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:47 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer672b1e6e/csvfile672b1e6e?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAkLkGvsbU9EmadALSAI04OgLcBADWBGFw + cGNvbmZpZ3VyYXRpb24kZXZlbnRodWJzJGlkZW50aXR5JGtleXZhdWx0JGtleXZhdWx0JGtleXZh + dWx0JHN0b3JhZ2Ukc3RvcmFnZSRzdG9yYWdlJHN0b3JhZ2Ukc3RvcmFnZSR0ZXh0YW5hbHl0aWNz + JGNvcmUkUmVwb1BhdGgkYXBwY29uZmlndXJhdGlvbiRldmVudGh1YnMkZXZlbnRodWJzJGlkZW50 + aXR5JGtleXZhdWx0JGtleXZhdWx0JGtleXZhdWx0JHN0b3JhZ2Ukc3RvcmFnZSRzdG9yYWdlJHN0 + b3JhZ2Ukc3RvcmFnZSR0ZXh0YW5hbHl0aWNzJGNvcmUkUmVwb1BhdGgkYXBwY29uZmlndXJhdGlv + biRldmVudGh1YnMkkLkGvsbU9EmadALSAI04OgJ+AgAoSW52YWxpZENvbHVtbk9yZGluYWxKQ29s + dW1uIG9yZGluYWwgZG9lcyBub3QgZXhpc3QgaW4gcm93LuwBkLkGvsbU9EmadALSAI04OgIKBKAj + oCOQuQa+xtT0SZp0AtIAjTg6AgYGoCOQuQa+xtT0SZp0AtIAjTg6 + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:47 GMT + ETag: + - '"0x8D830246C7E911A"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:47 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:46 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - edbd34ea-901e-0022-4f0d-62888b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_progress.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_progress.yaml new file mode 100644 index 000000000000..77fb4d2bea84 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_progress.yaml @@ -0,0 +1,288 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 88d94842-ce00-11ea-b1bc-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:47 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerfca51924/csvfilefca51924?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:47 GMT + ETag: + - '"0x8D830246D31D324"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:48 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - da01e050-c01f-005d-1a0d-624710000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 89029d8c-ce00-11ea-a8a0-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:48 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerfca51924/csvfilefca51924?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:47 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - da01e05a-c01f-005d-240d-624710000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246D31D324"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 890ce39c-ce00-11ea-a956-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:48 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerfca51924/csvfilefca51924?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:47 GMT + ETag: + - '"0x8D830246D464EF8"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:48 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - da01e05f-c01f-005d-290d-624710000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStorage' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '144' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8917959e-ce00-11ea-b5b0-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:48 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerfca51924/csvfilefca51924?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAQsYKFLCah0K6BPohkjp2mQLkIgDeIlNl + cnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRoLE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0 + aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbiwxLGFwcGNvbmZpZ3VyYXRpb24sRkFMU0UK + RXZlbnQgSHVicwpFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmUsYXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYiwxLjAuMSxldmVudGh1 + YnMsRkFMU0UKSWRlbnRpdHksYXp1cmUtaWRlbnRpdHksMS4xLjAtYmV0YS4xLGlkZW50aXR5LEZB + TFNFCktleSBWYXVsdCAtIENlcnRpZmljYXRlcyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0 + aWZpY2F0ZXMsNC4wLjAsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gS2V5cyxhenVyZS1zZWN1 + cml0eS1rZXl2YXVsdC1rZXlzLDQuMi4wLWJldGEuMSxrZXl2YXVsdCxGQUxTRQpLZXkgVmF1bHQg + LSBTZWNyZXRzLGF6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHMsNC4xLjAsa2V5dmF1bHQs + RkFMU0UKU3RvcmFnZSAtIEJsb2JzLGF6dXJlLXN0b3JhZ2UtYmxvYiwxMi40LjAsc3RvcmFnZSxG + QUxTRQpTdG9yYWdlIC0gQmxvYnMgQmF0Y2gsYXp1cmUtc3RvcmFnZS1ibG9iLWJhdGNoLDEyLjQu + MC1iZXRhLjEsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQ3J5cHRvZ3JhcGh5LGF6dXJl + LXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHksMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAt + IEZpbGUgU2hhcmVzLGF6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZSwxMi4yLjAsc3RvcmFnZSxGQUxT + RQpTdG9yYWdlIC0gUXVldWVzLGF6dXJlLXN0b3JhZ2UtcXVldWUsMTIuMy4wLHN0b3JhZ2UsRkFM + U0UKVGV4dCBBbmFseXRpY3MsYXp1cmUtYWktdGV4dGFuYWx5dGljcywxLjAuMC1iZXRhLjIsdGV4 + dGFuYWx5dGljcyxGQUxTRQpUcmFjaW5nLGF6dXJlLWNvcmUtdHJhY2luZy1vcGVudGVsZW1ldHJ5 + LDEuMC4wLWJldGEuMixjb3JlLEZBTFNFClNlcnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRo + LE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlv + biwxLjAuMSxhcHBjb25maWd1cmF0aW9uLEZBTFNFCkV2ZW50IEh1YnMsYXp1cmUtbWVzc2FnaW5n + LWV2ZW50aHVicyw1LjAuMSxldmVudGh1YnMsRkFMU0UKRXZlbnQgSHVicyAtIEF6dXJlIFN0b3Jh + Z2UgQ2hlY2twb2ludFN0b3JlLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMtY2hlY2twb2ludHN0 + b3JlLWJsb2IsMS4wLjEsZXZlbnRodWJzLEZBTFNFCklkZW50aXR5LGF6dXJlLWlkZW50aXR5LDEu + MS4wLWJldGEuMSxpZGVudGl0eSxGQUxTRQpLZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXMsYXp1cmUt + c2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzLDQuMC4wLGtleXZhdWx0LEZBTFNFCktleSBW + YXVsdCAtIEtleXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5cyw0LjIuMC1iZXRhLjEsa2V5 + dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gU2VjcmV0cyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1z + ZWNyZXRzLDQuMS4wLGtleXZhdWx0LEZBTFNFClN0b3JhZ2UgLSBCbG9icyxhenVyZS1zdG9yYWdl + LWJsb2IsMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJsb2JzIEJhdGNoLGF6dXJlLXN0 + b3JhZ2UtYmxvYi1iYXRjaCwxMi40LjAtYmV0YS4xLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJs + b2JzIENyeXB0b2dyYXBoeSxhenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5LDEyLjQuMCxz + dG9yYWdlLEZBTFNFClN0b3JhZ2UgLSBGaWxlIFNoYXJlcyxhenVyZS1zdG9yYWdlLWZpbGUtc2hh + cmUsMTIuMi4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIFF1ZXVlcyxhenVyZS1zdG9yYWdlLXF1 + ZXVlLDEyLjMuMCxzdG9yYWdlLEZBTFNFClRleHQgQW5hbHl0aWNzLGF6dXJlLWFpLXRleHRhbmFs + eXRpY3MsMS4wLjAtYmV0YS4yLHRleHRhbmFseXRpY3MsRkFMU0UKVHJhY2luZyxhenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeSwxLjAuMC1iZXRhLjIsY29yZSxGQUxTRQpTZXJ2aWNlLFBh + Y2thZ2UsVmVyc2lvbixSZXBvUGF0aCxNaXNzaW5nRG9jcwpBcHAgQ29uZmlndXJhdGlvbixhenVy + ZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb24sMS4wLjEsYXBwY29uZmlndXJhdGlvbixGQUxTRQpFdmVu + dCBIdWJzLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMsNS4wLjEsZXZlbnRodWJzLEZBTFNFCkLG + ChSwmodCugT6IZI6dpkCCgSgI6AjQsYKFLCah0K6BPohkjp2mQIGBqAjQsYKFLCah0K6BPohkjp2 + mQ== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:47 GMT + ETag: + - '"0x8D830246D464EF8"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:48 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:48 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - d6a42116-d01e-0051-030d-62d018000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_serialization_setting.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_serialization_setting.yaml new file mode 100644 index 000000000000..46ea87ae6d00 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_iter_records_with_serialization_setting.yaml @@ -0,0 +1,290 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 89986d90-ce00-11ea-899c-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:49 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer686b1e8a/csvfile686b1e8a?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:48 GMT + ETag: + - '"0x8D830246DF32703"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:49 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 32e0a5b1-b01f-0047-490d-6226cf000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 89c3f900-ce00-11ea-acad-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:49 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer686b1e8a/csvfile686b1e8a?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:49 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 32e0a5ba-b01f-0047-520d-6226cf000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246DF32703"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 89d04be6-ce00-11ea-9ffa-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:49 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer686b1e8a/csvfile686b1e8a?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:49 GMT + ETag: + - '"0x8D830246E0D323D"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:49 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 32e0a5c2-b01f-0047-5a0d-6226cf000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragedelimited," + + falsedelimited;''%\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '716' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 89de0c4c-ce00-11ea-9397-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:49 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer686b1e8a/csvfile686b1e8a?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAJe1UKOlTC0WCeP+fX/f5pALkIgDeIlNl + cnZpY2U7UGFja2FnZTtWZXJzaW9uO1JlcG9QYXRoO01pc3NpbmdEb2NzJUFwcCBDb25maWd1cmF0 + aW9uO2F6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbjsxO2FwcGNvbmZpZ3VyYXRpb247RkFMU0Ul + RXZlbnQgSHVicyVFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmU7YXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYjsxLjAuMTtldmVudGh1 + YnM7RkFMU0UlSWRlbnRpdHk7YXp1cmUtaWRlbnRpdHk7MS4xLjAtYmV0YS4xO2lkZW50aXR5O0ZB + TFNFJUtleSBWYXVsdCAtIENlcnRpZmljYXRlczthenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0 + aWZpY2F0ZXM7NC4wLjA7a2V5dmF1bHQ7RkFMU0UlS2V5IFZhdWx0IC0gS2V5czthenVyZS1zZWN1 + cml0eS1rZXl2YXVsdC1rZXlzOzQuMi4wLWJldGEuMTtrZXl2YXVsdDtGQUxTRSVLZXkgVmF1bHQg + LSBTZWNyZXRzO2F6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHM7NC4xLjA7a2V5dmF1bHQ7 + RkFMU0UlU3RvcmFnZSAtIEJsb2JzO2F6dXJlLXN0b3JhZ2UtYmxvYjsxMi40LjA7c3RvcmFnZTtG + QUxTRSVTdG9yYWdlIC0gQmxvYnMgQmF0Y2g7YXp1cmUtc3RvcmFnZS1ibG9iLWJhdGNoOzEyLjQu + MC1iZXRhLjE7c3RvcmFnZTtGQUxTRSVTdG9yYWdlIC0gQmxvYnMgQ3J5cHRvZ3JhcGh5O2F6dXJl + LXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHk7MTIuNC4wO3N0b3JhZ2U7RkFMU0UlU3RvcmFnZSAt + IEZpbGUgU2hhcmVzO2F6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZTsxMi4yLjA7c3RvcmFnZTtGQUxT + RSVTdG9yYWdlIC0gUXVldWVzO2F6dXJlLXN0b3JhZ2UtcXVldWU7MTIuMy4wO3N0b3JhZ2U7RkFM + U0UlVGV4dCBBbmFseXRpY3M7YXp1cmUtYWktdGV4dGFuYWx5dGljczsxLjAuMC1iZXRhLjI7dGV4 + dGFuYWx5dGljcztGQUxTRSVUcmFjaW5nO2F6dXJlLWNvcmUtdHJhY2luZy1vcGVudGVsZW1ldHJ5 + OzEuMC4wLWJldGEuMjtjb3JlO0ZBTFNFJVNlcnZpY2U7UGFja2FnZTtWZXJzaW9uO1JlcG9QYXRo + O01pc3NpbmdEb2NzJUFwcCBDb25maWd1cmF0aW9uO2F6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlv + bjsxLjAuMTthcHBjb25maWd1cmF0aW9uO0ZBTFNFJUV2ZW50IEh1YnM7YXp1cmUtbWVzc2FnaW5n + LWV2ZW50aHViczs1LjAuMTtldmVudGh1YnM7RkFMU0UlRXZlbnQgSHVicyAtIEF6dXJlIFN0b3Jh + Z2UgQ2hlY2twb2ludFN0b3JlO2F6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMtY2hlY2twb2ludHN0 + b3JlLWJsb2I7MS4wLjE7ZXZlbnRodWJzO0ZBTFNFJUlkZW50aXR5O2F6dXJlLWlkZW50aXR5OzEu + MS4wLWJldGEuMTtpZGVudGl0eTtGQUxTRSVLZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXM7YXp1cmUt + c2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzOzQuMC4wO2tleXZhdWx0O0ZBTFNFJUtleSBW + YXVsdCAtIEtleXM7YXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5czs0LjIuMC1iZXRhLjE7a2V5 + dmF1bHQ7RkFMU0UlS2V5IFZhdWx0IC0gU2VjcmV0czthenVyZS1zZWN1cml0eS1rZXl2YXVsdC1z + ZWNyZXRzOzQuMS4wO2tleXZhdWx0O0ZBTFNFJVN0b3JhZ2UgLSBCbG9iczthenVyZS1zdG9yYWdl + LWJsb2I7MTIuNC4wO3N0b3JhZ2U7RkFMU0UlU3RvcmFnZSAtIEJsb2JzIEJhdGNoO2F6dXJlLXN0 + b3JhZ2UtYmxvYi1iYXRjaDsxMi40LjAtYmV0YS4xO3N0b3JhZ2U7RkFMU0UlU3RvcmFnZSAtIEJs + b2JzIENyeXB0b2dyYXBoeTthenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5OzEyLjQuMDtz + dG9yYWdlO0ZBTFNFJVN0b3JhZ2UgLSBGaWxlIFNoYXJlczthenVyZS1zdG9yYWdlLWZpbGUtc2hh + cmU7MTIuMi4wO3N0b3JhZ2U7RkFMU0UlU3RvcmFnZSAtIFF1ZXVlczthenVyZS1zdG9yYWdlLXF1 + ZXVlOzEyLjMuMDtzdG9yYWdlO0ZBTFNFJVRleHQgQW5hbHl0aWNzO2F6dXJlLWFpLXRleHRhbmFs + eXRpY3M7MS4wLjAtYmV0YS4yO3RleHRhbmFseXRpY3M7RkFMU0UlVHJhY2luZzthenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeTsxLjAuMC1iZXRhLjI7Y29yZTtGQUxTRSVTZXJ2aWNlO1Bh + Y2thZ2U7VmVyc2lvbjtSZXBvUGF0aDtNaXNzaW5nRG9jcyVBcHAgQ29uZmlndXJhdGlvbjthenVy + ZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb247MS4wLjE7YXBwY29uZmlndXJhdGlvbjtGQUxTRSVFdmVu + dCBIdWJzO2F6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnM7NS4wLjE7ZXZlbnRodWJzO0ZBTFNFJSXt + VCjpUwtFgnj/n1/3+aQCCgSgI6AjJe1UKOlTC0WCeP+fX/f5pAIGBqAjJe1UKOlTC0WCeP+fX/f5 + pA== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:49 GMT + ETag: + - '"0x8D830246E0D323D"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:49 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:49 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - f34fc801-601e-006b-1e0d-62ca60000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall.yaml new file mode 100644 index 000000000000..c10d484cf580 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall.yaml @@ -0,0 +1,288 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8a5b0286-ce00-11ea-9a8d-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:50 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer67751105/csvfile67751105?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:50 GMT + ETag: + - '"0x8D830246EB47F1A"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:50 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 88bf3546-901f-0022-360d-62888b000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8a85de74-ce00-11ea-846c-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:50 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer67751105/csvfile67751105?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:50 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 88bf3547-901f-0022-370d-62888b000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246EB47F1A"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8a919182-ce00-11ea-ad27-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:50 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer67751105/csvfile67751105?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:50 GMT + ETag: + - '"0x8D830246ECEAE96"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:50 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 88bf3548-901f-0022-380d-62888b000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStorage' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '144' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8aa07f28-ce00-11ea-888b-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:50 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer67751105/csvfile67751105?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoABHY6nyXWtkuDKd80lkzLfwLkIgDeIlNl + cnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRoLE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0 + aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbiwxLGFwcGNvbmZpZ3VyYXRpb24sRkFMU0UK + RXZlbnQgSHVicwpFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmUsYXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYiwxLjAuMSxldmVudGh1 + YnMsRkFMU0UKSWRlbnRpdHksYXp1cmUtaWRlbnRpdHksMS4xLjAtYmV0YS4xLGlkZW50aXR5LEZB + TFNFCktleSBWYXVsdCAtIENlcnRpZmljYXRlcyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0 + aWZpY2F0ZXMsNC4wLjAsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gS2V5cyxhenVyZS1zZWN1 + cml0eS1rZXl2YXVsdC1rZXlzLDQuMi4wLWJldGEuMSxrZXl2YXVsdCxGQUxTRQpLZXkgVmF1bHQg + LSBTZWNyZXRzLGF6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHMsNC4xLjAsa2V5dmF1bHQs + RkFMU0UKU3RvcmFnZSAtIEJsb2JzLGF6dXJlLXN0b3JhZ2UtYmxvYiwxMi40LjAsc3RvcmFnZSxG + QUxTRQpTdG9yYWdlIC0gQmxvYnMgQmF0Y2gsYXp1cmUtc3RvcmFnZS1ibG9iLWJhdGNoLDEyLjQu + MC1iZXRhLjEsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQ3J5cHRvZ3JhcGh5LGF6dXJl + LXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHksMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAt + IEZpbGUgU2hhcmVzLGF6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZSwxMi4yLjAsc3RvcmFnZSxGQUxT + RQpTdG9yYWdlIC0gUXVldWVzLGF6dXJlLXN0b3JhZ2UtcXVldWUsMTIuMy4wLHN0b3JhZ2UsRkFM + U0UKVGV4dCBBbmFseXRpY3MsYXp1cmUtYWktdGV4dGFuYWx5dGljcywxLjAuMC1iZXRhLjIsdGV4 + dGFuYWx5dGljcyxGQUxTRQpUcmFjaW5nLGF6dXJlLWNvcmUtdHJhY2luZy1vcGVudGVsZW1ldHJ5 + LDEuMC4wLWJldGEuMixjb3JlLEZBTFNFClNlcnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRo + LE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlv + biwxLjAuMSxhcHBjb25maWd1cmF0aW9uLEZBTFNFCkV2ZW50IEh1YnMsYXp1cmUtbWVzc2FnaW5n + LWV2ZW50aHVicyw1LjAuMSxldmVudGh1YnMsRkFMU0UKRXZlbnQgSHVicyAtIEF6dXJlIFN0b3Jh + Z2UgQ2hlY2twb2ludFN0b3JlLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMtY2hlY2twb2ludHN0 + b3JlLWJsb2IsMS4wLjEsZXZlbnRodWJzLEZBTFNFCklkZW50aXR5LGF6dXJlLWlkZW50aXR5LDEu + MS4wLWJldGEuMSxpZGVudGl0eSxGQUxTRQpLZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXMsYXp1cmUt + c2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzLDQuMC4wLGtleXZhdWx0LEZBTFNFCktleSBW + YXVsdCAtIEtleXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5cyw0LjIuMC1iZXRhLjEsa2V5 + dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gU2VjcmV0cyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1z + ZWNyZXRzLDQuMS4wLGtleXZhdWx0LEZBTFNFClN0b3JhZ2UgLSBCbG9icyxhenVyZS1zdG9yYWdl + LWJsb2IsMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJsb2JzIEJhdGNoLGF6dXJlLXN0 + b3JhZ2UtYmxvYi1iYXRjaCwxMi40LjAtYmV0YS4xLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJs + b2JzIENyeXB0b2dyYXBoeSxhenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5LDEyLjQuMCxz + dG9yYWdlLEZBTFNFClN0b3JhZ2UgLSBGaWxlIFNoYXJlcyxhenVyZS1zdG9yYWdlLWZpbGUtc2hh + cmUsMTIuMi4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIFF1ZXVlcyxhenVyZS1zdG9yYWdlLXF1 + ZXVlLDEyLjMuMCxzdG9yYWdlLEZBTFNFClRleHQgQW5hbHl0aWNzLGF6dXJlLWFpLXRleHRhbmFs + eXRpY3MsMS4wLjAtYmV0YS4yLHRleHRhbmFseXRpY3MsRkFMU0UKVHJhY2luZyxhenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeSwxLjAuMC1iZXRhLjIsY29yZSxGQUxTRQpTZXJ2aWNlLFBh + Y2thZ2UsVmVyc2lvbixSZXBvUGF0aCxNaXNzaW5nRG9jcwpBcHAgQ29uZmlndXJhdGlvbixhenVy + ZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb24sMS4wLjEsYXBwY29uZmlndXJhdGlvbixGQUxTRQpFdmVu + dCBIdWJzLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMsNS4wLjEsZXZlbnRodWJzLEZBTFNFCgR2 + Op8l1rZLgynfNJZMy38CCgSgI6AjBHY6nyXWtkuDKd80lkzLfwIGBqAjBHY6nyXWtkuDKd80lkzL + fw== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:51 GMT + ETag: + - '"0x8D830246ECEAE96"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:50 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:50 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - edbd462a-901e-0022-4f0d-62888b000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_encoding.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_encoding.yaml new file mode 100644 index 000000000000..de9d76be99be --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_encoding.yaml @@ -0,0 +1,288 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8b1d1576-ce00-11ea-b982-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:51 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer810b16c6/csvfile810b16c6?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:51 GMT + ETag: + - '"0x8D830246F7CDEFA"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:52 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 7b408e0f-801f-0063-5b0d-62d06f000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8b4dae80-ce00-11ea-98c9-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:52 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer810b16c6/csvfile810b16c6?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:51 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 7b408e11-801f-0063-5d0d-62d06f000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D830246F7CDEFA"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8b573aa8-ce00-11ea-9bda-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:52 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer810b16c6/csvfile810b16c6?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:51 GMT + ETag: + - '"0x8D830246F9076C7"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:52 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 7b408e19-801f-0063-650d-62d06f000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStorage' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '144' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8b61a152-ce00-11ea-9700-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:52 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer810b16c6/csvfile810b16c6?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoA3/yVXMW2V06rax2jyrYxUgLkIgDeIlNl + cnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRoLE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0 + aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbiwxLGFwcGNvbmZpZ3VyYXRpb24sRkFMU0UK + RXZlbnQgSHVicwpFdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmUsYXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYiwxLjAuMSxldmVudGh1 + YnMsRkFMU0UKSWRlbnRpdHksYXp1cmUtaWRlbnRpdHksMS4xLjAtYmV0YS4xLGlkZW50aXR5LEZB + TFNFCktleSBWYXVsdCAtIENlcnRpZmljYXRlcyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0 + aWZpY2F0ZXMsNC4wLjAsa2V5dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gS2V5cyxhenVyZS1zZWN1 + cml0eS1rZXl2YXVsdC1rZXlzLDQuMi4wLWJldGEuMSxrZXl2YXVsdCxGQUxTRQpLZXkgVmF1bHQg + LSBTZWNyZXRzLGF6dXJlLXNlY3VyaXR5LWtleXZhdWx0LXNlY3JldHMsNC4xLjAsa2V5dmF1bHQs + RkFMU0UKU3RvcmFnZSAtIEJsb2JzLGF6dXJlLXN0b3JhZ2UtYmxvYiwxMi40LjAsc3RvcmFnZSxG + QUxTRQpTdG9yYWdlIC0gQmxvYnMgQmF0Y2gsYXp1cmUtc3RvcmFnZS1ibG9iLWJhdGNoLDEyLjQu + MC1iZXRhLjEsc3RvcmFnZSxGQUxTRQpTdG9yYWdlIC0gQmxvYnMgQ3J5cHRvZ3JhcGh5LGF6dXJl + LXN0b3JhZ2UtYmxvYi1jcnlwdG9ncmFwaHksMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAt + IEZpbGUgU2hhcmVzLGF6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZSwxMi4yLjAsc3RvcmFnZSxGQUxT + RQpTdG9yYWdlIC0gUXVldWVzLGF6dXJlLXN0b3JhZ2UtcXVldWUsMTIuMy4wLHN0b3JhZ2UsRkFM + U0UKVGV4dCBBbmFseXRpY3MsYXp1cmUtYWktdGV4dGFuYWx5dGljcywxLjAuMC1iZXRhLjIsdGV4 + dGFuYWx5dGljcyxGQUxTRQpUcmFjaW5nLGF6dXJlLWNvcmUtdHJhY2luZy1vcGVudGVsZW1ldHJ5 + LDEuMC4wLWJldGEuMixjb3JlLEZBTFNFClNlcnZpY2UsUGFja2FnZSxWZXJzaW9uLFJlcG9QYXRo + LE1pc3NpbmdEb2NzCkFwcCBDb25maWd1cmF0aW9uLGF6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlv + biwxLjAuMSxhcHBjb25maWd1cmF0aW9uLEZBTFNFCkV2ZW50IEh1YnMsYXp1cmUtbWVzc2FnaW5n + LWV2ZW50aHVicyw1LjAuMSxldmVudGh1YnMsRkFMU0UKRXZlbnQgSHVicyAtIEF6dXJlIFN0b3Jh + Z2UgQ2hlY2twb2ludFN0b3JlLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMtY2hlY2twb2ludHN0 + b3JlLWJsb2IsMS4wLjEsZXZlbnRodWJzLEZBTFNFCklkZW50aXR5LGF6dXJlLWlkZW50aXR5LDEu + MS4wLWJldGEuMSxpZGVudGl0eSxGQUxTRQpLZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXMsYXp1cmUt + c2VjdXJpdHkta2V5dmF1bHQtY2VydGlmaWNhdGVzLDQuMC4wLGtleXZhdWx0LEZBTFNFCktleSBW + YXVsdCAtIEtleXMsYXp1cmUtc2VjdXJpdHkta2V5dmF1bHQta2V5cyw0LjIuMC1iZXRhLjEsa2V5 + dmF1bHQsRkFMU0UKS2V5IFZhdWx0IC0gU2VjcmV0cyxhenVyZS1zZWN1cml0eS1rZXl2YXVsdC1z + ZWNyZXRzLDQuMS4wLGtleXZhdWx0LEZBTFNFClN0b3JhZ2UgLSBCbG9icyxhenVyZS1zdG9yYWdl + LWJsb2IsMTIuNC4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJsb2JzIEJhdGNoLGF6dXJlLXN0 + b3JhZ2UtYmxvYi1iYXRjaCwxMi40LjAtYmV0YS4xLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIEJs + b2JzIENyeXB0b2dyYXBoeSxhenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5LDEyLjQuMCxz + dG9yYWdlLEZBTFNFClN0b3JhZ2UgLSBGaWxlIFNoYXJlcyxhenVyZS1zdG9yYWdlLWZpbGUtc2hh + cmUsMTIuMi4wLHN0b3JhZ2UsRkFMU0UKU3RvcmFnZSAtIFF1ZXVlcyxhenVyZS1zdG9yYWdlLXF1 + ZXVlLDEyLjMuMCxzdG9yYWdlLEZBTFNFClRleHQgQW5hbHl0aWNzLGF6dXJlLWFpLXRleHRhbmFs + eXRpY3MsMS4wLjAtYmV0YS4yLHRleHRhbmFseXRpY3MsRkFMU0UKVHJhY2luZyxhenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeSwxLjAuMC1iZXRhLjIsY29yZSxGQUxTRQpTZXJ2aWNlLFBh + Y2thZ2UsVmVyc2lvbixSZXBvUGF0aCxNaXNzaW5nRG9jcwpBcHAgQ29uZmlndXJhdGlvbixhenVy + ZS1kYXRhLWFwcGNvbmZpZ3VyYXRpb24sMS4wLjEsYXBwY29uZmlndXJhdGlvbixGQUxTRQpFdmVu + dCBIdWJzLGF6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnMsNS4wLjEsZXZlbnRodWJzLEZBTFNFCt/8 + lVzFtldOq2sdo8q2MVICCgSgI6Aj3/yVXMW2V06rax2jyrYxUgIGBqAj3/yVXMW2V06rax2jyrYx + Ug== + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:52 GMT + ETag: + - '"0x8D830246F9076C7"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:52 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:52 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - d6f0d9fb-801e-0063-7f0d-62d06f000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_handler.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_handler.yaml new file mode 100644 index 000000000000..ad3abf547d02 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_handler.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8becf6e2-ce00-11ea-8378-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:53 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer968b1b4d/csvfile968b1b4d?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:53 GMT + ETag: + - '"0x8D8302470483151"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:53 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - c3264c14-601f-0019-640d-62cd2f000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{name: owner} + + {name2: owner2} + + {name: owner}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '43' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8c197428-ce00-11ea-8a6c-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:53 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer968b1b4d/csvfile968b1b4d?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:53 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - c3264c15-601f-0019-650d-62cd2f000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302470483151"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8c276bd4-ce00-11ea-a3f4-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:53 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer968b1b4d/csvfile968b1b4d?position=43&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:53 GMT + ETag: + - '"0x8D830247065C2CC"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:53 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - c3264c16-601f-0019-660d-62cd2f000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragejson + + delimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '595' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8c37350c-ce00-11ea-9030-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:53 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer968b1b4d/csvfile968b1b4d?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAi+YPPdQSRUaa0quIp4g4UgIEAACL5g89 + 1BJFRprSq4iniDhSAlYCARpJbnRlcm5hbEVycm9yMkludGVybmFsIHBhcnNlIGV4Y2VwdGlvbi4A + i+YPPdQSRUaa0quIp4g4UgIGBFZWi+YPPdQSRUaa0quIp4g4UgIEBlaL5g891BJFRprSq4iniDhS + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:53 GMT + ETag: + - '"0x8D830247065C2CC"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:53 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:53 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - a34c1a01-901e-0032-4e0d-624de3000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_handler_raise.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_handler_raise.yaml new file mode 100644 index 000000000000..ef3ed0d1519b --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_handler_raise.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8cc3d928-ce00-11ea-8bd3-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:54 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer42e61dc0/csvfile42e61dc0?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:54 GMT + ETag: + - '"0x8D83024711CFB47"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:54 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 7ff59126-101f-0013-080d-626998000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{name: owner} + + {name2: owner2} + + {name: owner}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '43' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8cee64ec-ce00-11ea-b291-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:54 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer42e61dc0/csvfile42e61dc0?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:54 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 7ff5912c-101f-0013-0e0d-626998000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D83024711CFB47"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8cfb6c9c-ce00-11ea-8d33-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:54 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer42e61dc0/csvfile42e61dc0?position=43&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:54 GMT + ETag: + - '"0x8D8302471383E4D"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:54 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 7ff59132-101f-0013-140d-626998000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragejson + + delimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '595' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8d091282-ce00-11ea-b288-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:54 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer42e61dc0/csvfile42e61dc0?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAayUTP8sNhU+2czYFjoYulAIEAABrJRM/ + yw2FT7ZzNgWOhi6UAlYCARpJbnRlcm5hbEVycm9yMkludGVybmFsIHBhcnNlIGV4Y2VwdGlvbi4A + ayUTP8sNhU+2czYFjoYulAIGBFZWayUTP8sNhU+2czYFjoYulAIEBlZrJRM/yw2FT7ZzNgWOhi6U + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:54 GMT + ETag: + - '"0x8D8302471383E4D"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:54 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:54 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - c105a213-e01e-0017-5d0d-62e49f000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_ignore.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_ignore.yaml new file mode 100644 index 000000000000..49d1353114eb --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_fatal_error_ignore.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8d8cbfd4-ce00-11ea-9111-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:55 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer7b8f1af3/csvfile7b8f1af3?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:56 GMT + ETag: + - '"0x8D8302471E86310"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:56 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 79baf5d2-601f-0044-730d-62c7ab000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{name: owner} + + {name2: owner2} + + {name: owner}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '43' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8db99cb8-ce00-11ea-82a2-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:56 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer7b8f1af3/csvfile7b8f1af3?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:56 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 79baf5d9-601f-0044-7a0d-62c7ab000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302471E86310"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8dc70c18-ce00-11ea-b5d1-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:56 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer7b8f1af3/csvfile7b8f1af3?position=43&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:56 GMT + ETag: + - '"0x8D830247202E459"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:56 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 79baf5da-601f-0044-7b0d-62c7ab000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragejson + + delimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '595' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8dd43ea6-ce00-11ea-8e77-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:56 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer7b8f1af3/csvfile7b8f1af3?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAR0BEp4DrBEedXURq3gHHiQIEAABHQESn + gOsER51dRGreAceJAlYCARpJbnRlcm5hbEVycm9yMkludGVybmFsIHBhcnNlIGV4Y2VwdGlvbi4A + R0BEp4DrBEedXURq3gHHiQIGBFZWR0BEp4DrBEedXURq3gHHiQIEBlZHQESngOsER51dRGreAceJ + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:56 GMT + ETag: + - '"0x8D830247202E459"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:56 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:56 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 3db33a2d-601e-0026-1a0d-62058c000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_json_serialization_setting.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_json_serialization_setting.yaml new file mode 100644 index 000000000000..9cea1a2998d6 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_json_serialization_setting.yaml @@ -0,0 +1,235 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8e5ef5e6-ce00-11ea-b704-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:57 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainer65251e73/csvfile65251e73?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:57 GMT + ETag: + - '"0x8D8302472B8B527"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:57 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - fbe562a2-001f-000f-2b0d-623bf8000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{"name": "owner", "id": 1} + + {"name2": "owner2"} + + {"name": "owner", "id": 1}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '73' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8e8948c2-ce00-11ea-a664-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:57 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer65251e73/csvfile65251e73?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:57 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - fbe562a8-001f-000f-310d-623bf8000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302472B8B527"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8e930de4-ce00-11ea-a9ac-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:57 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainer65251e73/csvfile65251e73?position=73&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:57 GMT + ETag: + - '"0x8D8302472CE8F66"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:57 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - fbe562b3-001f-000f-3c0d-623bf8000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT name from BlobStoragejson + + json;' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '465' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8e9f4e80-ce00-11ea-ad53-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:57 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainer65251e73/csvfile65251e73?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAKV5JPix4B0Ky1phpkPxSgQJOAEp7Im5h + bWUiOiJvd25lciJ9O3t9O3sibmFtZSI6Im93bmVyIn07KV5JPix4B0Ky1phpkPxSgQIKBJIBkgEp + Xkk+LHgHQrLWmGmQ/FKBAgYGkgEpXkk+LHgHQrLWmGmQ/FKB + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:57 GMT + ETag: + - '"0x8D8302472CE8F66"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:57 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:57 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 24c085b7-501e-005f-430d-62f9a8000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_nonfatal_error_handler.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_nonfatal_error_handler.yaml new file mode 100644 index 000000000000..c99882b89abf --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_nonfatal_error_handler.yaml @@ -0,0 +1,257 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8f1f6bba-ce00-11ea-b8e5-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:58 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerec2f1c98/csvfileec2f1c98?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:58 GMT + ETag: + - '"0x8D8302473757570"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:58 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 52942639-501f-002d-3b0d-62fee7000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8f462042-ce00-11ea-8d12-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:58 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerec2f1c98/csvfileec2f1c98?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:58 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 52942644-501f-002d-460d-62fee7000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302473757570"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8f50f7c0-ce00-11ea-9def-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:58 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerec2f1c98/csvfileec2f1c98?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:58 GMT + ETag: + - '"0x8D83024738C5B62"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:58 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 5294264d-501f-002d-4f0d-62fee7000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT RepoPath from BlobStoragedelimited," + + truedelimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '722' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8f5d377a-ce00-11ea-bc75-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:58 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerec2f1c98/csvfileec2f1c98?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAK+kmh+L9VUqwN0AtyVpcqgLcBADWBGFw + cGNvbmZpZ3VyYXRpb24uZXZlbnRodWJzLmlkZW50aXR5LmtleXZhdWx0LmtleXZhdWx0LmtleXZh + dWx0LnN0b3JhZ2Uuc3RvcmFnZS5zdG9yYWdlLnN0b3JhZ2Uuc3RvcmFnZS50ZXh0YW5hbHl0aWNz + LmNvcmUuUmVwb1BhdGguYXBwY29uZmlndXJhdGlvbi5ldmVudGh1YnMuZXZlbnRodWJzLmlkZW50 + aXR5LmtleXZhdWx0LmtleXZhdWx0LmtleXZhdWx0LnN0b3JhZ2Uuc3RvcmFnZS5zdG9yYWdlLnN0 + b3JhZ2Uuc3RvcmFnZS50ZXh0YW5hbHl0aWNzLmNvcmUuUmVwb1BhdGguYXBwY29uZmlndXJhdGlv + bi5ldmVudGh1YnMuK+kmh+L9VUqwN0AtyVpcqgJ+AgAoSW52YWxpZENvbHVtbk9yZGluYWxKQ29s + dW1uIG9yZGluYWwgZG9lcyBub3QgZXhpc3QgaW4gcm93LuwBK+kmh+L9VUqwN0AtyVpcqgIKBKAj + oCMr6SaH4v1VSrA3QC3JWlyqAgYGoCMr6SaH4v1VSrA3QC3JWlyq + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:58 GMT + ETag: + - '"0x8D83024738C5B62"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:58 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:58 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 422904ce-f01e-001b-2f0d-627397000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_nonfatal_error_ignore.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_nonfatal_error_ignore.yaml new file mode 100644 index 000000000000..1c08529b8aea --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_nonfatal_error_ignore.yaml @@ -0,0 +1,257 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 8fdab1f8-ce00-11ea-a8dc-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:59 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainercfe81c3e/csvfilecfe81c3e?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:59 GMT + ETag: + - '"0x8D8302474321EE3"' + Last-Modified: + - Fri, 24 Jul 2020 22:53:59 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1aec1d04-f01f-0034-390d-627e5c000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 90031962-ce00-11ea-8a47-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:53:59 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainercfe81c3e/csvfilecfe81c3e?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:59 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1aec1d05-f01f-0034-3a0d-627e5c000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302474321EE3"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 9010cc92-ce00-11ea-86aa-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:00 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainercfe81c3e/csvfilecfe81c3e?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:53:59 GMT + ETag: + - '"0x8D83024744A1927"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:00 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 1aec1d06-f01f-0034-3b0d-627e5c000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT RepoPath from BlobStoragedelimited," + + truedelimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '722' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 901a9ddc-ce00-11ea-b11e-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:00 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainercfe81c3e/csvfilecfe81c3e?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoAaAjywXh2ZkeD5FQ5UBEaOwLcBADWBGFw + cGNvbmZpZ3VyYXRpb24uZXZlbnRodWJzLmlkZW50aXR5LmtleXZhdWx0LmtleXZhdWx0LmtleXZh + dWx0LnN0b3JhZ2Uuc3RvcmFnZS5zdG9yYWdlLnN0b3JhZ2Uuc3RvcmFnZS50ZXh0YW5hbHl0aWNz + LmNvcmUuUmVwb1BhdGguYXBwY29uZmlndXJhdGlvbi5ldmVudGh1YnMuZXZlbnRodWJzLmlkZW50 + aXR5LmtleXZhdWx0LmtleXZhdWx0LmtleXZhdWx0LnN0b3JhZ2Uuc3RvcmFnZS5zdG9yYWdlLnN0 + b3JhZ2Uuc3RvcmFnZS50ZXh0YW5hbHl0aWNzLmNvcmUuUmVwb1BhdGguYXBwY29uZmlndXJhdGlv + bi5ldmVudGh1YnMuaAjywXh2ZkeD5FQ5UBEaOwJ+AgAoSW52YWxpZENvbHVtbk9yZGluYWxKQ29s + dW1uIG9yZGluYWwgZG9lcyBub3QgZXhpc3QgaW4gcm93LuwBaAjywXh2ZkeD5FQ5UBEaOwIKBKAj + oCNoCPLBeHZmR4PkVDlQERo7AgYGoCNoCPLBeHZmR4PkVDlQERo7 + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:53:59 GMT + ETag: + - '"0x8D83024744A1927"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:00 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:53:59 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 901cbb47-e01e-0028-690d-622c3c000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_serialization_setting.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_serialization_setting.yaml new file mode 100644 index 000000000000..fe81b71844ef --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_readall_with_serialization_setting.yaml @@ -0,0 +1,290 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 909cfb6e-ce00-11ea-9405-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:00 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainerd1281c5a/csvfiled1281c5a?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:54:01 GMT + ETag: + - '"0x8D8302474F3C59C"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:01 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - c5951dd7-101f-004e-4e0d-62631c000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: "Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent + Hubs\r\nEvent Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\nEvent Hubs - Azure Storage + CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\nKey + Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\nKey + Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\nKey + Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\nStorage + - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage + - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage + - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\nText + Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,MissingDocs\r\nApp + Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\nEvent + Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n" + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '2256' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 90c4d810-ce00-11ea-ba8a-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:01 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerd1281c5a/csvfiled1281c5a?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:54:01 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - c5951dd9-101f-004e-500d-62631c000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302474F3C59C"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 90d1ae80-ce00-11ea-89cf-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:01 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainerd1281c5a/csvfiled1281c5a?position=2256&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:54:01 GMT + ETag: + - '"0x8D83024750C45DF"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:01 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - c5951dde-101f-004e-550d-62631c000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT * from BlobStoragedelimited," + + falsedelimited;''.\false' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '716' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 90dd35a8-ce00-11ea-9142-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:01 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainerd1281c5a/csvfiled1281c5a?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoArnCcMJdIN0mCrSwrB2HGjALUIwDOI1Nl + cnZpY2U7UGFja2FnZTtWZXJzaW9uO1JlcG9QYXRoO01pc3NpbmdEb2NzLkFwcCBDb25maWd1cmF0 + aW9uO2F6dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbjsxO2FwcGNvbmZpZ3VyYXRpb247RkFMU0Uu + RXZlbnQgSHVicy5FdmVudCBIdWJzIC0gQXp1cmUgU3RvcmFnZSBDaGVja3BvaW50U3RvcmU7YXp1 + cmUtbWVzc2FnaW5nLWV2ZW50aHVicy1jaGVja3BvaW50c3RvcmUtYmxvYjsnMS4wLjEnO2V2ZW50 + aHVicztGQUxTRS5JZGVudGl0eTthenVyZS1pZGVudGl0eTsnMS4xLjAtYmV0YS4xJztpZGVudGl0 + eTtGQUxTRS5LZXkgVmF1bHQgLSBDZXJ0aWZpY2F0ZXM7YXp1cmUtc2VjdXJpdHkta2V5dmF1bHQt + Y2VydGlmaWNhdGVzOyc0LjAuMCc7a2V5dmF1bHQ7RkFMU0UuS2V5IFZhdWx0IC0gS2V5czthenVy + ZS1zZWN1cml0eS1rZXl2YXVsdC1rZXlzOyc0LjIuMC1iZXRhLjEnO2tleXZhdWx0O0ZBTFNFLktl + eSBWYXVsdCAtIFNlY3JldHM7YXp1cmUtc2VjdXJpdHkta2V5dmF1bHQtc2VjcmV0czsnNC4xLjAn + O2tleXZhdWx0O0ZBTFNFLlN0b3JhZ2UgLSBCbG9iczthenVyZS1zdG9yYWdlLWJsb2I7JzEyLjQu + MCc7c3RvcmFnZTtGQUxTRS5TdG9yYWdlIC0gQmxvYnMgQmF0Y2g7YXp1cmUtc3RvcmFnZS1ibG9i + LWJhdGNoOycxMi40LjAtYmV0YS4xJztzdG9yYWdlO0ZBTFNFLlN0b3JhZ2UgLSBCbG9icyBDcnlw + dG9ncmFwaHk7YXp1cmUtc3RvcmFnZS1ibG9iLWNyeXB0b2dyYXBoeTsnMTIuNC4wJztzdG9yYWdl + O0ZBTFNFLlN0b3JhZ2UgLSBGaWxlIFNoYXJlczthenVyZS1zdG9yYWdlLWZpbGUtc2hhcmU7JzEy + LjIuMCc7c3RvcmFnZTtGQUxTRS5TdG9yYWdlIC0gUXVldWVzO2F6dXJlLXN0b3JhZ2UtcXVldWU7 + JzEyLjMuMCc7c3RvcmFnZTtGQUxTRS5UZXh0IEFuYWx5dGljczthenVyZS1haS10ZXh0YW5hbHl0 + aWNzOycxLjAuMC1iZXRhLjInO3RleHRhbmFseXRpY3M7RkFMU0UuVHJhY2luZzthenVyZS1jb3Jl + LXRyYWNpbmctb3BlbnRlbGVtZXRyeTsnMS4wLjAtYmV0YS4yJztjb3JlO0ZBTFNFLlNlcnZpY2U7 + UGFja2FnZTtWZXJzaW9uO1JlcG9QYXRoO01pc3NpbmdEb2NzLkFwcCBDb25maWd1cmF0aW9uO2F6 + dXJlLWRhdGEtYXBwY29uZmlndXJhdGlvbjsnMS4wLjEnO2FwcGNvbmZpZ3VyYXRpb247RkFMU0Uu + RXZlbnQgSHViczthenVyZS1tZXNzYWdpbmctZXZlbnRodWJzOyc1LjAuMSc7ZXZlbnRodWJzO0ZB + TFNFLkV2ZW50IEh1YnMgLSBBenVyZSBTdG9yYWdlIENoZWNrcG9pbnRTdG9yZTthenVyZS1tZXNz + YWdpbmctZXZlbnRodWJzLWNoZWNrcG9pbnRzdG9yZS1ibG9iOycxLjAuMSc7ZXZlbnRodWJzO0ZB + TFNFLklkZW50aXR5O2F6dXJlLWlkZW50aXR5OycxLjEuMC1iZXRhLjEnO2lkZW50aXR5O0ZBTFNF + LktleSBWYXVsdCAtIENlcnRpZmljYXRlczthenVyZS1zZWN1cml0eS1rZXl2YXVsdC1jZXJ0aWZp + Y2F0ZXM7JzQuMC4wJztrZXl2YXVsdDtGQUxTRS5LZXkgVmF1bHQgLSBLZXlzO2F6dXJlLXNlY3Vy + aXR5LWtleXZhdWx0LWtleXM7JzQuMi4wLWJldGEuMSc7a2V5dmF1bHQ7RkFMU0UuS2V5IFZhdWx0 + IC0gU2VjcmV0czthenVyZS1zZWN1cml0eS1rZXl2YXVsdC1zZWNyZXRzOyc0LjEuMCc7a2V5dmF1 + bHQ7RkFMU0UuU3RvcmFnZSAtIEJsb2JzO2F6dXJlLXN0b3JhZ2UtYmxvYjsnMTIuNC4wJztzdG9y + YWdlO0ZBTFNFLlN0b3JhZ2UgLSBCbG9icyBCYXRjaDthenVyZS1zdG9yYWdlLWJsb2ItYmF0Y2g7 + JzEyLjQuMC1iZXRhLjEnO3N0b3JhZ2U7RkFMU0UuU3RvcmFnZSAtIEJsb2JzIENyeXB0b2dyYXBo + eTthenVyZS1zdG9yYWdlLWJsb2ItY3J5cHRvZ3JhcGh5OycxMi40LjAnO3N0b3JhZ2U7RkFMU0Uu + U3RvcmFnZSAtIEZpbGUgU2hhcmVzO2F6dXJlLXN0b3JhZ2UtZmlsZS1zaGFyZTsnMTIuMi4wJztz + dG9yYWdlO0ZBTFNFLlN0b3JhZ2UgLSBRdWV1ZXM7YXp1cmUtc3RvcmFnZS1xdWV1ZTsnMTIuMy4w + JztzdG9yYWdlO0ZBTFNFLlRleHQgQW5hbHl0aWNzO2F6dXJlLWFpLXRleHRhbmFseXRpY3M7JzEu + MC4wLWJldGEuMic7dGV4dGFuYWx5dGljcztGQUxTRS5UcmFjaW5nO2F6dXJlLWNvcmUtdHJhY2lu + Zy1vcGVudGVsZW1ldHJ5OycxLjAuMC1iZXRhLjInO2NvcmU7RkFMU0UuU2VydmljZTtQYWNrYWdl + O1ZlcnNpb247UmVwb1BhdGg7TWlzc2luZ0RvY3MuQXBwIENvbmZpZ3VyYXRpb247YXp1cmUtZGF0 + YS1hcHBjb25maWd1cmF0aW9uOycxLjAuMSc7YXBwY29uZmlndXJhdGlvbjtGQUxTRS5FdmVudCBI + dWJzO2F6dXJlLW1lc3NhZ2luZy1ldmVudGh1YnM7JzUuMC4xJztldmVudGh1YnM7RkFMU0UurnCc + MJdIN0mCrSwrB2HGjAIKBKAjoCOucJwwl0g3SYKtLCsHYcaMAgYGoCOucJwwl0g3SYKtLCsHYcaM + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:54:01 GMT + ETag: + - '"0x8D83024750C45DF"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:01 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:54:01 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - 7d622c0d-f01e-0034-310d-627e5c000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_with_only_input_json_serialization_setting.yaml b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_with_only_input_json_serialization_setting.yaml new file mode 100644 index 000000000000..2fd09ba42e68 --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/recordings/test_quick_query.test_quick_query_with_only_input_json_serialization_setting.yaml @@ -0,0 +1,233 @@ +interactions: +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 915d8940-ce00-11ea-bbb5-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:02 GMT + x-ms-properties: + - '' + x-ms-version: + - '2019-12-12' + method: PUT + uri: https://storagename.dfs.core.windows.net/utqqcontainercb261fef/csvfilecb261fef?resource=file + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:54:02 GMT + ETag: + - '"0x8D8302475CB1C65"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:02 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 9bdec613-201f-0037-710d-629f38000000 + x-ms-version: + - '2019-12-12' + status: + code: 201 + message: Created +- request: + body: '{"name": "owner", "id": 1}{"name2": "owner2"}{"name": "owner", "id": 1}' + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '71' + Content-Type: + - application/json; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 919c4f7a-ce00-11ea-bf5b-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:02 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainercb261fef/csvfilecb261fef?position=0&action=append + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:54:02 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 9bdec618-201f-0037-750d-629f38000000 + x-ms-request-server-encrypted: + - 'true' + x-ms-version: + - '2019-12-12' + status: + code: 202 + message: Accepted +- request: + body: null + headers: + Accept: + - '*/*' + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '0' + If-Match: + - '"0x8D8302475CB1C65"' + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 91a7c0dc-ce00-11ea-bbdc-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:02 GMT + x-ms-version: + - '2019-12-12' + method: PATCH + uri: https://storagename.dfs.core.windows.net/utqqcontainercb261fef/csvfilecb261fef?position=71&action=flush + response: + body: + string: '' + headers: + Content-Length: + - '0' + Date: + - Fri, 24 Jul 2020 22:54:02 GMT + ETag: + - '"0x8D8302475E5953B"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:02 GMT + Server: + - Windows-Azure-HDFS/1.0 Microsoft-HTTPAPI/2.0 + x-ms-request-id: + - 9bdec619-201f-0037-760d-629f38000000 + x-ms-request-server-encrypted: + - 'false' + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +- request: + body: ' + + SQLSELECT name from BlobStoragejson + + json + + ' + headers: + Accept: + - application/xml + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + Content-Length: + - '465' + Content-Type: + - application/xml; charset=utf-8 + User-Agent: + - azsdk-python-storage-dfs/12.1.0b1 Python/3.7.3 (Windows-10-10.0.18362-SP0) + x-ms-client-request-id: + - 91b6dde6-ce00-11ea-99a7-001a7dda7113 + x-ms-date: + - Fri, 24 Jul 2020 22:54:02 GMT + x-ms-version: + - '2019-12-12' + method: POST + uri: https://storagename.blob.core.windows.net/utqqcontainercb261fef/csvfilecb261fef?comp=query + response: + body: + string: !!binary | + T2JqAQIWYXZyby5zY2hlbWG+HlsKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUi + OiAiY29tLm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLnJlc3VsdERh + dGEiLAogICAgImRvYyI6ICJIb2xkcyByZXN1bHQgZGF0YSBpbiB0aGUgZm9ybWF0IHNwZWNpZmll + ZCBmb3IgdGhpcyBxdWVyeSAoQ1NWLCBKU09OLCBldGMuKS4iLAogICAgImZpZWxkcyI6IFsKICAg + ICAgewogICAgICAgICJuYW1lIjogImRhdGEiLAogICAgICAgICJ0eXBlIjogImJ5dGVzIgogICAg + ICB9CiAgICBdCiAgfSwKICB7CiAgICAidHlwZSI6ICJyZWNvcmQiLAogICAgIm5hbWUiOiAiY29t + Lm1pY3Jvc29mdC5henVyZS5zdG9yYWdlLnF1ZXJ5QmxvYkNvbnRlbnRzLmVycm9yIiwKICAgICJk + b2MiOiAiQW4gZXJyb3IgdGhhdCBvY2N1cnJlZCB3aGlsZSBwcm9jZXNzaW5nIHRoZSBxdWVyeS4i + LAogICAgImZpZWxkcyI6IFsKICAgICAgewogICAgICAgICJuYW1lIjogImZhdGFsIiwKICAgICAg + ICAidHlwZSI6ICJib29sZWFuIiwKICAgICAgICAiZG9jIjogIklmIHRydWUsIHRoaXMgZXJyb3Ig + cHJldmVudHMgZnVydGhlciBxdWVyeSBwcm9jZXNzaW5nLiAgTW9yZSByZXN1bHQgZGF0YSBtYXkg + YmUgcmV0dXJuZWQsIGJ1dCB0aGVyZSBpcyBubyBndWFyYW50ZWUgdGhhdCBhbGwgb2YgdGhlIG9y + aWdpbmFsIGRhdGEgd2lsbCBiZSBwcm9jZXNzZWQuICBJZiBmYWxzZSwgdGhpcyBlcnJvciBkb2Vz + IG5vdCBwcmV2ZW50IGZ1cnRoZXIgcXVlcnkgcHJvY2Vzc2luZy4iCiAgICAgIH0sCiAgICAgIHsK + ICAgICAgICAibmFtZSI6ICJuYW1lIiwKICAgICAgICAidHlwZSI6ICJzdHJpbmciLAogICAgICAg + ICJkb2MiOiAiVGhlIG5hbWUgb2YgdGhlIGVycm9yIgogICAgICB9LAogICAgICB7CiAgICAgICAg + Im5hbWUiOiAiZGVzY3JpcHRpb24iLAogICAgICAgICJ0eXBlIjogInN0cmluZyIsCiAgICAgICAg + ImRvYyI6ICJBIGRlc2NyaXB0aW9uIG9mIHRoZSBlcnJvciIKICAgICAgfSwKICAgICAgewogICAg + ICAgICJuYW1lIjogInBvc2l0aW9uIiwKICAgICAgICAidHlwZSI6ICJsb25nIiwKICAgICAgICAi + ZG9jIjogIlRoZSBibG9iIG9mZnNldCBhdCB3aGljaCB0aGUgZXJyb3Igb2NjdXJyZWQiCiAgICAg + IH0KICAgIF0KICB9LAogIHsKICAgICJ0eXBlIjogInJlY29yZCIsCiAgICAibmFtZSI6ICJjb20u + bWljcm9zb2Z0LmF6dXJlLnN0b3JhZ2UucXVlcnlCbG9iQ29udGVudHMucHJvZ3Jlc3MiLAogICAg + ImRvYyI6ICJJbmZvcm1hdGlvbiBhYm91dCB0aGUgcHJvZ3Jlc3Mgb2YgdGhlIHF1ZXJ5IiwKICAg + ICJmaWVsZHMiOiBbCiAgICAgIHsKICAgICAgICAibmFtZSI6ICJieXRlc1NjYW5uZWQiLAogICAg + ICAgICJ0eXBlIjogImxvbmciLAogICAgICAgICJkb2MiOiAiVGhlIG51bWJlciBvZiBieXRlcyB0 + aGF0IGhhdmUgYmVlbiBzY2FubmVkIgogICAgICB9LAogICAgICB7CiAgICAgICAgIm5hbWUiOiAi + dG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAgICAgICAgImRvYyI6ICJUaGUg + dG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4gdGhpcyBxdWVyeSIKICAgICAg + fQogICAgXQogIH0sCiAgewogICAgInR5cGUiOiAicmVjb3JkIiwKICAgICJuYW1lIjogImNvbS5t + aWNyb3NvZnQuYXp1cmUuc3RvcmFnZS5xdWVyeUJsb2JDb250ZW50cy5lbmQiLAogICAgImRvYyI6 + ICJTZW50IGFzIHRoZSBmaW5hbCBtZXNzYWdlIG9mIHRoZSByZXNwb25zZSwgaW5kaWNhdGluZyB0 + aGF0IGFsbCByZXN1bHRzIGhhdmUgYmVlbiBzZW50LiIsCiAgICAiZmllbGRzIjogWwogICAgICB7 + CiAgICAgICAgIm5hbWUiOiAidG90YWxCeXRlcyIsCiAgICAgICAgInR5cGUiOiAibG9uZyIsCiAg + ICAgICAgImRvYyI6ICJUaGUgdG90YWwgbnVtYmVyIG9mIGJ5dGVzIHRvIGJlIHNjYW5uZWQgaW4g + dGhpcyBxdWVyeSIKICAgICAgfQogICAgXQogIH0KXQoANTMWcwLvw0WBrKMGAiqhogJOAEp7Im5h + bWUiOiJvd25lciJ9Cnt9CnsibmFtZSI6Im93bmVyIn0KNTMWcwLvw0WBrKMGAiqhogIKBI4BjgE1 + MxZzAu/DRYGsowYCKqGiAgYGjgE1MxZzAu/DRYGsowYCKqGi + headers: + Accept-Ranges: + - bytes + Content-Type: + - avro/binary + Date: + - Fri, 24 Jul 2020 22:54:02 GMT + ETag: + - '"0x8D8302475E5953B"' + Last-Modified: + - Fri, 24 Jul 2020 22:54:02 GMT + Server: + - Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0 + Transfer-Encoding: + - chunked + x-ms-blob-type: + - BlockBlob + x-ms-creation-time: + - Fri, 24 Jul 2020 22:54:02 GMT + x-ms-lease-state: + - available + x-ms-lease-status: + - unlocked + x-ms-request-id: + - f3501d42-601e-006b-500d-62ca60000000 + x-ms-version: + - '2019-12-12' + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py b/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py new file mode 100644 index 000000000000..3e6a01ce919f --- /dev/null +++ b/sdk/storage/azure-storage-file-datalake/tests/test_quick_query.py @@ -0,0 +1,748 @@ +# coding: utf-8 + +# ------------------------------------------------------------------------- +# Copyright (c) Microsoft Corporation. All rights reserved. +# Licensed under the MIT License. See License.txt in the project root for +# license information. +# -------------------------------------------------------------------------- + +import pytest + +from azure.storage.filedatalake import ( + DelimitedTextDialect, + DelimitedJSON, + DataLakeFileQueryError +) + +from testcase import ( + StorageTestCase, + record, + TestMode +) +# ------------------------------------------------------------------------------ +from azure.storage.filedatalake import DataLakeServiceClient + +CSV_DATA = b'Service,Package,Version,RepoPath,MissingDocs\r\nApp Configuration,' \ + b'azure-data-appconfiguration,1,appconfiguration,FALSE\r\nEvent Hubs' \ + b'\r\nEvent Hubs - Azure Storage CheckpointStore,' \ + b'azure-messaging-eventhubs-checkpointstore-blob,1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,' \ + b'1.1.0-beta.1,identity,FALSE\r\nKey Vault - Certificates,azure-security-keyvault-certificates,' \ + b'4.0.0,keyvault,FALSE\r\nKey Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,' \ + b'FALSE\r\nKey Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\n' \ + b'Storage - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\nStorage - Blobs Batch,' \ + b'azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\nStorage - Blobs Cryptography,' \ + b'azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\nStorage - File Shares,' \ + b'azure-storage-file-share,12.2.0,storage,FALSE\r\nStorage - Queues,' \ + b'azure-storage-queue,12.3.0,storage,FALSE\r\nText Analytics,' \ + b'azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\nTracing,' \ + b'azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\nService,Package,Version,RepoPath,' \ + b'MissingDocs\r\nApp Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\n' \ + b'Event Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n' \ + b'Event Hubs - Azure Storage CheckpointStore,azure-messaging-eventhubs-checkpointstore-blob,' \ + b'1.0.1,eventhubs,FALSE\r\nIdentity,azure-identity,1.1.0-beta.1,identity,FALSE\r\n' \ + b'Key Vault - Certificates,azure-security-keyvault-certificates,4.0.0,keyvault,FALSE\r\n' \ + b'Key Vault - Keys,azure-security-keyvault-keys,4.2.0-beta.1,keyvault,FALSE\r\n' \ + b'Key Vault - Secrets,azure-security-keyvault-secrets,4.1.0,keyvault,FALSE\r\n' \ + b'Storage - Blobs,azure-storage-blob,12.4.0,storage,FALSE\r\n' \ + b'Storage - Blobs Batch,azure-storage-blob-batch,12.4.0-beta.1,storage,FALSE\r\n' \ + b'Storage - Blobs Cryptography,azure-storage-blob-cryptography,12.4.0,storage,FALSE\r\n' \ + b'Storage - File Shares,azure-storage-file-share,12.2.0,storage,FALSE\r\n' \ + b'Storage - Queues,azure-storage-queue,12.3.0,storage,FALSE\r\n' \ + b'Text Analytics,azure-ai-textanalytics,1.0.0-beta.2,textanalytics,FALSE\r\n' \ + b'Tracing,azure-core-tracing-opentelemetry,1.0.0-beta.2,core,FALSE\r\n' \ + b'Service,Package,Version,RepoPath,MissingDocs\r\n' \ + b'App Configuration,azure-data-appconfiguration,1.0.1,appconfiguration,FALSE\r\n' \ + b'Event Hubs,azure-messaging-eventhubs,5.0.1,eventhubs,FALSE\r\n' + +CONVERTED_CSV_DATA = b"Service;Package;Version;RepoPath;MissingDocs.App Configuration;azure-data-appconfiguration;" \ + b"1;appconfiguration;FALSE.Event Hubs.Event Hubs - Azure Storage CheckpointStore;azure-messaging-eventhubs-checkpointstore-blob;" \ + b"'1.0.1';eventhubs;FALSE.Identity;azure-identity;'1.1.0-beta.1';identity;FALSE.Key Vault - Certificates;" \ + b"azure-security-keyvault-certificates;'4.0.0';keyvault;FALSE.Key Vault - Keys;azure-security-keyvault-keys;" \ + b"'4.2.0-beta.1';keyvault;FALSE.Key Vault - Secrets;azure-security-keyvault-secrets;'4.1.0';keyvault;" \ + b"FALSE.Storage - Blobs;azure-storage-blob;'12.4.0';storage;FALSE.Storage - Blobs Batch;" \ + b"azure-storage-blob-batch;'12.4.0-beta.1';storage;FALSE.Storage - Blobs Cryptography;" \ + b"azure-storage-blob-cryptography;'12.4.0';storage;FALSE.Storage - File Shares;azure-storage-file-share;" \ + b"'12.2.0';storage;FALSE.Storage - Queues;azure-storage-queue;'12.3.0';storage;FALSE.Text Analytics;" \ + b"azure-ai-textanalytics;'1.0.0-beta.2';textanalytics;FALSE.Tracing;azure-core-tracing-opentelemetry;" \ + b"'1.0.0-beta.2';core;FALSE.Service;Package;Version;RepoPath;MissingDocs.App Configuration;" \ + b"azure-data-appconfiguration;'1.0.1';appconfiguration;FALSE.Event Hubs;azure-messaging-eventhubs;" \ + b"'5.0.1';eventhubs;FALSE.Event Hubs - Azure Storage CheckpointStore;azure-messaging-eventhubs-checkpointstore-blob;" \ + b"'1.0.1';eventhubs;FALSE.Identity;azure-identity;'1.1.0-beta.1';identity;" \ + b"FALSE.Key Vault - Certificates;azure-security-keyvault-certificates;'4.0.0';" \ + b"keyvault;FALSE.Key Vault - Keys;azure-security-keyvault-keys;'4.2.0-beta.1';keyvault;FALSE.Key Vault - Secrets;" \ + b"azure-security-keyvault-secrets;'4.1.0';keyvault;FALSE.Storage - Blobs;azure-storage-blob;'12.4.0';" \ + b"storage;FALSE.Storage - Blobs Batch;azure-storage-blob-batch;'12.4.0-beta.1';storage;FALSE.Storage - Blobs Cryptography;" \ + b"azure-storage-blob-cryptography;'12.4.0';storage;FALSE.Storage - File Shares;azure-storage-file-share;" \ + b"'12.2.0';storage;FALSE.Storage - Queues;azure-storage-queue;'12.3.0';storage;FALSE.Text Analytics;" \ + b"azure-ai-textanalytics;'1.0.0-beta.2';textanalytics;FALSE.Tracing;azure-core-tracing-opentelemetry;" \ + b"'1.0.0-beta.2';core;FALSE.Service;Package;Version;RepoPath;MissingDocs.App Configuration;" \ + b"azure-data-appconfiguration;'1.0.1';appconfiguration;FALSE.Event Hubs;azure-messaging-eventhubs;" \ + b"'5.0.1';eventhubs;FALSE." + +# ------------------------------------------------------------------------------ + + +class StorageQuickQueryTest(StorageTestCase): + def setUp(self): + super(StorageQuickQueryTest, self).setUp() + url = self._get_account_url() + self.dsc = DataLakeServiceClient(url, credential=self.settings.STORAGE_DATA_LAKE_ACCOUNT_KEY, logging_enable=True) + self.config = self.dsc._config + self.filesystem_name = self.get_resource_name('utqqcontainer') + + if not self.is_playback(): + try: + self.dsc.create_file_system(self.filesystem_name) + except: + pass + + def tearDown(self): + if not self.is_playback(): + try: + self.dsc.delete_file_system(self.filesystem_name) + except: + pass + + return super(StorageQuickQueryTest, self).tearDown() + + # --Helpers----------------------------------------------------------------- + + def _get_file_reference(self): + return self.get_resource_name("csvfile") + + # -- Test cases for APIs supporting CPK ---------------------------------------------- + + @record + def test_quick_query_readall(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + errors = [] + + def on_error(error): + errors.append(error) + + reader = file_client.query_file("SELECT * from BlobStorage", on_error=on_error) + data = reader.readall() + + self.assertEqual(len(errors), 0) + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(data, CSV_DATA.replace(b'\r\n', b'\n')) + + @record + def test_quick_query_iter_records(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + reader = file_client.query_file("SELECT * from BlobStorage") + read_records = reader.records() + + # Assert first line has header + data = next(read_records) + self.assertEqual(data, b'Service,Package,Version,RepoPath,MissingDocs') + + for record in read_records: + data += record + + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(data, CSV_DATA.replace(b'\r\n', b'')) + + @record + def test_quick_query_readall_with_encoding(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + errors = [] + + def on_error(error): + errors.append(error) + + reader = file_client.query_file("SELECT * from BlobStorage", on_error=on_error, encoding='utf-8') + data = reader.readall() + + self.assertEqual(len(errors), 0) + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(data, CSV_DATA.replace(b'\r\n', b'\n').decode('utf-8')) + + @record + def test_quick_query_iter_records_with_encoding(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + reader = file_client.query_file("SELECT * from BlobStorage", encoding='utf-8') + data = '' + for record in reader.records(): + data += record + + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(data, CSV_DATA.replace(b'\r\n', b'').decode('utf-8')) + + @record + def test_quick_query_iter_records_with_headers(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + input_format = DelimitedTextDialect(has_header=True) + reader = file_client.query_file("SELECT * from BlobStorage", file_format=input_format) + read_records = reader.records() + + # Assert first line does not include header + data = next(read_records) + self.assertEqual(data, b'App Configuration,azure-data-appconfiguration,1,appconfiguration,FALSE') + + for record in read_records: + data += record + + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(data, CSV_DATA.replace(b'\r\n', b'')[44:]) + + @record + def test_quick_query_iter_records_with_progress(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + reader = file_client.query_file("SELECT * from BlobStorage") + data = b'' + progress = 0 + for record in reader.records(): + if record: + data += record + progress += len(record) + 2 + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(data, CSV_DATA.replace(b'\r\n', b'')) + self.assertEqual(progress, len(reader)) + + @record + def test_quick_query_readall_with_serialization_setting(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + errors = [] + + def on_error(error): + errors.append(error) + + input_format = DelimitedTextDialect( + delimiter=',', + quotechar='"', + lineterminator='\n', + escapechar='', + has_header=False + ) + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + query_result = resp.readall() + + self.assertEqual(len(errors), 0) + self.assertEqual(len(resp), len(CSV_DATA)) + self.assertEqual(query_result, CONVERTED_CSV_DATA) + + @record + def test_quick_query_iter_records_with_serialization_setting(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + input_format = DelimitedTextDialect( + delimiter=',', + quotechar='"', + lineterminator='\n', + escapechar='', + has_header=False + ) + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='%', + escapechar='\\' + ) + + reader = file_client.query_file( + "SELECT * from BlobStorage", + file_format=input_format, + output_format=output_format) + data = [] + for record in reader.records(): + if record: + data.append(record) + + self.assertEqual(len(reader), len(CSV_DATA)) + self.assertEqual(len(reader), reader._blob_query_reader._bytes_processed) + self.assertEqual(len(data), 33) + + @record + def test_quick_query_readall_with_fatal_error_handler(self): + # Arrange + data1 = b'{name: owner}' + data2 = b'{name2: owner2}' + data3 = b'{version:0,begin:1601-01-01T00:00:00.000Z,intervalSecs:3600,status:Finalized,config:' \ + b'{version:0,configVersionEtag:0x8d75ef460eb1a12,numShards:1,recordsFormat:avro,formatSchemaVersion:3,' \ + b'shardDistFnVersion:1},chunkFilePaths:[$blobchangefeed/log/00/1601/01/01/0000/],storageDiagnostics:' \ + b'{version:0,lastModifiedTime:2019-11-01T17:53:18.861Z,' \ + b'data:{aid:d305317d-a006-0042-00dd-902bbb06fc56}}}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + + def on_error(error): + errors.append(error) + + input_format = DelimitedJSON() + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + query_result = resp.readall() + + self.assertEqual(len(errors), 1) + self.assertEqual(len(resp), 43) + self.assertEqual(query_result, b'') + + @record + def test_quick_query_iter_records_with_fatal_error_handler(self): + # Arrange + data1 = b'{name: owner}' + data2 = b'{name2: owner2}' + data3 = b'{version:0,begin:1601-01-01T00:00:00.000Z,intervalSecs:3600,status:Finalized,config:' \ + b'{version:0,configVersionEtag:0x8d75ef460eb1a12,numShards:1,recordsFormat:avro,formatSchemaVersion:3,' \ + b'shardDistFnVersion:1},chunkFilePaths:[$blobchangefeed/log/00/1601/01/01/0000/],storageDiagnostics:' \ + b'{version:0,lastModifiedTime:2019-11-01T17:53:18.861Z,' \ + b'data:{aid:d305317d-a006-0042-00dd-902bbb06fc56}}}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + + def on_error(error): + errors.append(error) + + input_format = DelimitedJSON() + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + data = [] + for record in resp.records(): + data.append(record) + + self.assertEqual(len(errors), 1) + self.assertEqual(len(resp), 43) + self.assertEqual(data, [b'']) + + @record + def test_quick_query_readall_with_fatal_error_handler_raise(self): + # Arrange + data1 = b'{name: owner}' + data2 = b'{name2: owner2}' + data3 = b'{version:0,begin:1601-01-01T00:00:00.000Z,intervalSecs:3600,status:Finalized,config:' \ + b'{version:0,configVersionEtag:0x8d75ef460eb1a12,numShards:1,recordsFormat:avro,formatSchemaVersion:3,' \ + b'shardDistFnVersion:1},chunkFilePaths:[$blobchangefeed/log/00/1601/01/01/0000/],storageDiagnostics:' \ + b'{version:0,lastModifiedTime:2019-11-01T17:53:18.861Z,' \ + b'data:{aid:d305317d-a006-0042-00dd-902bbb06fc56}}}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + + def on_error(error): + raise Exception(error.description) + + input_format = DelimitedJSON() + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + with pytest.raises(Exception): + query_result = resp.readall() + + @record + def test_quick_query_iter_records_with_fatal_error_handler_raise(self): + # Arrange + data1 = b'{name: owner}' + data2 = b'{name2: owner2}' + data3 = b'{version:0,begin:1601-01-01T00:00:00.000Z,intervalSecs:3600,status:Finalized,config:' \ + b'{version:0,configVersionEtag:0x8d75ef460eb1a12,numShards:1,recordsFormat:avro,formatSchemaVersion:3,' \ + b'shardDistFnVersion:1},chunkFilePaths:[$blobchangefeed/log/00/1601/01/01/0000/],storageDiagnostics:' \ + b'{version:0,lastModifiedTime:2019-11-01T17:53:18.861Z,' \ + b'data:{aid:d305317d-a006-0042-00dd-902bbb06fc56}}}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + + def on_error(error): + raise Exception(error.description) + + input_format = DelimitedJSON() + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + + with pytest.raises(Exception): + for record in resp.records(): + print(record) + + @record + def test_quick_query_readall_with_fatal_error_ignore(self): + # Arrange + data1 = b'{name: owner}' + data2 = b'{name2: owner2}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + input_format = DelimitedJSON() + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + file_format=input_format, + output_format=output_format) + query_result = resp.readall() + + @record + def test_quick_query_iter_records_with_fatal_error_ignore(self): + # Arrange + data1 = b'{name: owner}' + data2 = b'{name2: owner2}' + data3 = b'{version:0,begin:1601-01-01T00:00:00.000Z,intervalSecs:3600,status:Finalized,config:' \ + b'{version:0,configVersionEtag:0x8d75ef460eb1a12,numShards:1,recordsFormat:avro,formatSchemaVersion:3,' \ + b'shardDistFnVersion:1},chunkFilePaths:[$blobchangefeed/log/00/1601/01/01/0000/],storageDiagnostics:' \ + b'{version:0,lastModifiedTime:2019-11-01T17:53:18.861Z,' \ + b'data:{aid:d305317d-a006-0042-00dd-902bbb06fc56}}}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + input_format = DelimitedJSON() + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\' + ) + resp = file_client.query_file( + "SELECT * from BlobStorage", + file_format=input_format, + output_format=output_format) + + for record in resp.records(): + print(record) + + @record + def test_quick_query_readall_with_nonfatal_error_handler(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + errors = [] + def on_error(error): + errors.append(error) + + input_format = DelimitedTextDialect( + delimiter=',', + quotechar='"', + lineterminator='\n', + escapechar='', + has_header=True + ) + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\', + ) + resp = file_client.query_file( + "SELECT RepoPath from BlobStorage", + file_format=input_format, + output_format=output_format, + on_error=on_error) + query_result = resp.readall() + + # the error is because that line only has one column + self.assertEqual(len(errors), 1) + self.assertEqual(len(resp), len(CSV_DATA)) + self.assertTrue(len(query_result) > 0) + + @record + def test_quick_query_iter_records_with_nonfatal_error_handler(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + errors = [] + def on_error(error): + errors.append(error) + + input_format = DelimitedTextDialect( + delimiter=',', + quotechar='"', + lineterminator='\n', + escapechar='', + has_header=True + ) + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='%', + escapechar='\\', + ) + resp = file_client.query_file( + "SELECT RepoPath from BlobStorage", + file_format=input_format, + output_format=output_format, + on_error=on_error) + data = list(resp.records()) + + # the error is because that line only has one column + self.assertEqual(len(errors), 1) + self.assertEqual(len(resp), len(CSV_DATA)) + self.assertEqual(len(data), 32) + + @record + def test_quick_query_readall_with_nonfatal_error_ignore(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + input_format = DelimitedTextDialect( + delimiter=',', + quotechar='"', + lineterminator='\n', + escapechar='', + has_header=True + ) + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='.', + escapechar='\\', + ) + resp = file_client.query_file( + "SELECT RepoPath from BlobStorage", + file_format=input_format, + output_format=output_format) + query_result = resp.readall() + self.assertEqual(len(resp), len(CSV_DATA)) + self.assertTrue(len(query_result) > 0) + + @record + def test_quick_query_iter_records_with_nonfatal_error_ignore(self): + # Arrange + # upload the csv file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(CSV_DATA, overwrite=True) + + input_format = DelimitedTextDialect( + delimiter=',', + quotechar='"', + lineterminator='\n', + escapechar='', + has_header=True + ) + output_format = DelimitedTextDialect( + delimiter=';', + quotechar="'", + lineterminator='$', + escapechar='\\', + ) + resp = file_client.query_file( + "SELECT RepoPath from BlobStorage", + file_format=input_format, + output_format=output_format) + data = list(resp.records()) + self.assertEqual(len(resp), len(CSV_DATA)) + self.assertEqual(len(data), 32) + + @record + def test_quick_query_readall_with_json_serialization_setting(self): + # Arrange + data1 = b'{\"name\": \"owner\", \"id\": 1}' + data2 = b'{\"name2\": \"owner2\"}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + def on_error(error): + errors.append(error) + + input_format = DelimitedJSON(delimiter='\n') + output_format = DelimitedJSON(delimiter=';') + + resp = file_client.query_file( + "SELECT name from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + query_result = resp.readall() + + self.assertEqual(len(errors), 0) + self.assertEqual(len(resp), len(data)) + self.assertEqual(query_result, b'{"name":"owner"};{};{"name":"owner"};') + + @record + def test_quick_query_iter_records_with_json_serialization_setting(self): + # Arrange + data1 = b'{\"name\": \"owner\", \"id\": 1}' + data2 = b'{\"name2\": \"owner2\"}' + data = data1 + b'\n' + data2 + b'\n' + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + def on_error(error): + errors.append(error) + + input_format = DelimitedJSON(delimiter='\n') + output_format = DelimitedJSON(delimiter=';') + + resp = file_client.query_file( + "SELECT name from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + listdata = list(resp.records()) + + self.assertEqual(len(errors), 0) + self.assertEqual(len(resp), len(data)) + self.assertEqual(listdata, [b'{"name":"owner"}',b'{}',b'{"name":"owner"}', b'']) + + @record + def test_quick_query_with_only_input_json_serialization_setting(self): + # Arrange + data1 = b'{\"name\": \"owner\", \"id\": 1}' + data2 = b'{\"name2\": \"owner2\"}' + data = data1 + data2 + data1 + + # upload the json file + file_name = self._get_file_reference() + file_client = self.dsc.get_file_client(self.filesystem_name, file_name) + file_client.upload_data(data, overwrite=True) + + errors = [] + def on_error(error): + errors.append(error) + + input_format = DelimitedJSON(delimiter='\n') + output_format = None + + resp = file_client.query_file( + "SELECT name from BlobStorage", + on_error=on_error, + file_format=input_format, + output_format=output_format) + query_result = resp.readall() + + self.assertEqual(len(errors), 0) + self.assertEqual(len(resp), len(data)) + self.assertEqual(query_result, b'{"name":"owner"}\n{}\n{"name":"owner"}\n') + +# ------------------------------------------------------------------------------