2025-11-10 10:15:15,471 - INFO - ya.test - pytest_runtest_setup: ####################################################################################################
2025-11-10 10:15:15,472 - INFO - ya.test - pytest_runtest_setup: test_convert[v2-client0-csv_with_names-parquet]
2025-11-10 10:15:15,473 - INFO - ya.test - pytest_runtest_setup: ####################################################################################################
2025-11-10 10:15:15,473 - INFO - ya.test - pytest_runtest_setup: Test setup
2025-11-10 10:15:15,581 - INFO - ya.test - pytest_runtest_call: Test call (class_name: test_statistics.py::TestS3, test_name: test_convert[v2-client0-csv_with_names-parquet])
2025-11-10 10:15:15,583 - DEBUG - botocore.hooks - _emit: Event choose-service-name: calling handler <function handle_service_name_alias at 0x7f5bf8335e50>
2025-11-10 10:15:15,589 - DEBUG - botocore.hooks - _emit: Event creating-client-class.s3: calling handler <function add_generate_presigned_post at 0x7f5bf8455610>
2025-11-10 10:15:15,590 - DEBUG - botocore.hooks - _emit: Event creating-client-class.s3: calling handler <function lazy_call.<locals>._handler at 0x7f5be56efad0>
2025-11-10 10:15:15,590 - DEBUG - botocore.hooks - _emit: Event creating-client-class.s3: calling handler <function add_generate_presigned_url at 0x7f5bf8455310>
2025-11-10 10:15:15,597 - DEBUG - botocore.endpoint - create_endpoint: Setting s3 timeout as (60, 60)
2025-11-10 10:15:15,613 - DEBUG - botocore.client - _register_legacy_retries: Registering retry handlers for service: s3
2025-11-10 10:15:15,614 - DEBUG - botocore.utils - register: Registering S3 region redirector handler
2025-11-10 10:15:15,616 - DEBUG - botocore.utils - register: Registering S3Express Identity Resolver
2025-11-10 10:15:15,617 - DEBUG - boto3.resources.factory - load_from_definition: Loading s3:s3
2025-11-10 10:15:15,620 - DEBUG - boto3.resources.factory - load_from_definition: Loading s3:Bucket
2025-11-10 10:15:15,620 - DEBUG - boto3.resources.model - _load_name_with_category: Renaming Bucket attribute name
2025-11-10 10:15:15,627 - DEBUG - botocore.hooks - _emit: Event creating-resource-class.s3.Bucket: calling handler <function lazy_call.<locals>._handler at 0x7f5bdaff8590>
2025-11-10 10:15:15,627 - DEBUG - boto3.resources.action - __call__: Calling s3:create_bucket with {'Bucket': 'convert_bucket', 'ACL': 'public-read-write'}
2025-11-10 10:15:15,629 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.CreateBucket: calling handler <function validate_bucket_name at 0x7f5bf8337d10>
2025-11-10 10:15:15,629 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.CreateBucket: calling handler <function remove_bucket_from_url_paths_from_model at 0x7f5bf83625d0>
2025-11-10 10:15:15,629 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.CreateBucket: calling handler <bound method S3RegionRedirectorv2.annotate_request_context of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:15,630 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.CreateBucket: calling handler <bound method ClientCreator._inject_s3_input_parameters of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:15,630 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.CreateBucket: calling handler <function generate_idempotent_uuid at 0x7f5bf8337ad0>
2025-11-10 10:15:15,630 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <function customize_endpoint_resolver_builtins at 0x7f5bf8362810>
2025-11-10 10:15:15,631 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <bound method S3RegionRedirectorv2.redirect_from_cache of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:15,631 - DEBUG - botocore.regions - construct_endpoint: Calling endpoint provider with parameters: {'Bucket': 'convert_bucket', 'Region': 'yandex', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'http://localhost:9805', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': False, 'DisableAccessPoints': True, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True, 'UseS3ExpressControlEndpoint': True}
2025-11-10 10:15:15,633 - DEBUG - botocore.regions - construct_endpoint: Endpoint provider result: http://localhost:9805/convert_bucket
2025-11-10 10:15:15,633 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None"
2025-11-10 10:15:15,634 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selected auth type "v4" as "v4" with signing context params: {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}
2025-11-10 10:15:15,635 - DEBUG - botocore.hooks - _emit: Event before-call.s3.CreateBucket: calling handler <function add_expect_header at 0x7f5bf83601d0>
2025-11-10 10:15:15,635 - DEBUG - botocore.hooks - _emit: Event before-call.s3.CreateBucket: calling handler <bound method S3ExpressIdentityResolver.apply_signing_cache_key of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:15,635 - DEBUG - botocore.hooks - _emit: Event before-call.s3.CreateBucket: calling handler <function add_recursion_detection_header at 0x7f5bf8336090>
2025-11-10 10:15:15,636 - DEBUG - botocore.hooks - _emit: Event before-call.s3.CreateBucket: calling handler <function inject_api_version_header_if_needed at 0x7f5bf8361c10>
2025-11-10 10:15:15,636 - DEBUG - botocore.endpoint - make_request: Making request for OperationModel(name=CreateBucket) with params: {'url_path': '', 'query_string': {}, 'method': 'PUT', 'headers': {'x-amz-acl': 'public-read-write', 'User-Agent': 'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource'}, 'body': b'', 'auth_path': '/convert_bucket/', 'url': 'http://localhost:9805/convert_bucket', 'context': {'client_region': 'yandex', 'client_config': <botocore.config.Config object at 0x7f5bdaa0f0d0>, 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'convert_bucket', 'params': {'Bucket': 'convert_bucket', 'ACL': 'public-read-write'}}, 'input_params': {'Bucket': 'convert_bucket'}, 'signing': {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}, 'endpoint_properties': {'authSchemes': [{'disableDoubleEncoding': True, 'name': 'sigv4', 'signingName': 's3', 'signingRegion': 'yandex'}]}}}
2025-11-10 10:15:15,637 - DEBUG - botocore.hooks - _emit: Event request-created.s3.CreateBucket: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x7f5bdaa0f9e0>>
2025-11-10 10:15:15,638 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.CreateBucket: calling handler <bound method ClientCreator._default_s3_presign_to_sigv2 of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:15,638 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.CreateBucket: calling handler <function set_operation_specific_signer at 0x7f5bf8337950>
2025-11-10 10:15:15,639 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.CreateBucket: calling handler <function remove_arn_from_signing_path at 0x7f5bf8362750>
2025-11-10 10:15:15,641 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.CreateBucket: calling handler <bound method S3ExpressIdentityResolver.resolve_s3express_identity of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:15,642 - DEBUG - botocore.auth - add_auth: Calculating signature using v4 auth.
2025-11-10 10:15:15,643 - DEBUG - botocore.auth - add_auth: CanonicalRequest:
PUT
/convert_bucket

host:localhost:9805
x-amz-acl:public-read-write
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
x-amz-date:20251110T101515Z

host;x-amz-acl;x-amz-content-sha256;x-amz-date
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
2025-11-10 10:15:15,643 - DEBUG - botocore.auth - add_auth: StringToSign:
AWS4-HMAC-SHA256
20251110T101515Z
20251110/yandex/s3/aws4_request
1312dd6fe7ba0e168be23854bd4df3dade52b915bd757552dc6c1c340d884f28
2025-11-10 10:15:15,643 - DEBUG - botocore.auth - add_auth: Signature:
f455f68f95e70d6ec938d173acd4aae242b63ab3be6d9100b776db253fdb1bd5
2025-11-10 10:15:15,644 - DEBUG - botocore.hooks - _emit: Event request-created.s3.CreateBucket: calling handler <function add_retry_headers at 0x7f5bf8362510>
2025-11-10 10:15:15,644 - DEBUG - botocore.endpoint - _do_get_response: Sending http request: <AWSPreparedRequest stream_output=False, method=PUT, url=http://localhost:9805/convert_bucket, headers={'x-amz-acl': b'public-read-write', 'User-Agent': b'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource', 'X-Amz-Date': b'20251110T101515Z', 'X-Amz-Content-SHA256': b'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 'Authorization': b'AWS4-HMAC-SHA256 Credential=key/20251110/yandex/s3/aws4_request, SignedHeaders=host;x-amz-acl;x-amz-content-sha256;x-amz-date, Signature=f455f68f95e70d6ec938d173acd4aae242b63ab3be6d9100b776db253fdb1bd5', 'amz-sdk-invocation-id': b'e58ae056-ba0c-406b-9e28-c5ef1adcbcdf', 'amz-sdk-request': b'attempt=1', 'Content-Length': '0'}>
2025-11-10 10:15:15,664 - DEBUG - botocore.parsers - parse: Response headers: {'Server': 'Werkzeug/2.2.3 Python/3.12.12', 'Date': 'Mon, 10 Nov 2025 10:15:15 GMT', 'x-amzn-requestid': 'cQCrxYtxGHXGOlmt5SmA8dqgnDYvCxsLhOeiZX4xvmUfG0sna490', 'Content-Type': 'text/html; charset=utf-8', 'Content-Length': '168', 'Access-Control-Allow-Origin': '*', 'Connection': 'close'}
2025-11-10 10:15:15,665 - DEBUG - botocore.parsers - parse: Response body:
b'<CreateBucketResponse xmlns="http://s3.amazonaws.com/doc/2006-03-01"><CreateBucketResponse><Bucket>convert_bucket</Bucket></CreateBucketResponse></CreateBucketResponse>'
2025-11-10 10:15:15,666 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.CreateBucket: calling handler <botocore.retryhandler.RetryHandler object at 0x7f5bdae37990>
2025-11-10 10:15:15,666 - DEBUG - botocore.retryhandler - __call__: No retry needed.
2025-11-10 10:15:15,667 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.CreateBucket: calling handler <bound method S3RegionRedirectorv2.redirect_from_error of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:15,667 - DEBUG - boto3.resources.action - __call__: Response: {'ResponseMetadata': {'RequestId': 'cQCrxYtxGHXGOlmt5SmA8dqgnDYvCxsLhOeiZX4xvmUfG0sna490', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'Werkzeug/2.2.3 Python/3.12.12', 'date': 'Mon, 10 Nov 2025 10:15:15 GMT', 'x-amzn-requestid': 'cQCrxYtxGHXGOlmt5SmA8dqgnDYvCxsLhOeiZX4xvmUfG0sna490', 'content-type': 'text/html; charset=utf-8', 'content-length': '168', 'access-control-allow-origin': '*', 'connection': 'close'}, 'RetryAttempts': 0}}
2025-11-10 10:15:15,668 - DEBUG - root - wait_bootstrap: Wait for node 1 to bootstrap
2025-11-10 10:15:15,717 - DEBUG - root - wait_bootstrap: Node 1 has been bootstrapped
2025-11-10 10:15:15,811 - DEBUG - root - create_query_impl: Request: content {
  type: ANALYTICS
  name: "simple"
  acl {
    visibility: PRIVATE
  }
  limits {
    execution_timeout {
    }
  }
  text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/` with (format=parquet)\n            select * from AS_TABLE([<|foo:123, bar:\"xxx\"u|>,<|foo:456, bar:\"yyy\"u|>]);\n            "
  syntax: YQL_V1
}
execute_mode: RUN
idempotency_key: "94ed9c38-2925-4fc2-9f12-8d347a7f384b"

2025-11-10 10:15:15,856 - DEBUG - root - create_query_impl: Result: query_id: "ptqudsokok98891b44bh"

2025-11-10 10:15:15,866 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokok98891b44bh"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769715
        nanos: 814091000
      }
      modified_at {
        seconds: 1762769715
        nanos: 814091000
      }
      revision: 1
    }
    execute_mode: RUN
    status: STARTING
    last_job_query_revision: 1
    last_job_id: "ptjudsokok9884k268fk-ptqudsokok98891b44bh"
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769715
      nanos: 814091000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/` with (format=parquet)\n            select * from AS_TABLE([<|foo:123, bar:\"xxx\"u|>,<|foo:456, bar:\"yyy\"u|>]);\n            "
    syntax: YQL_V1
  }
}

2025-11-10 10:15:16,389 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokok98891b44bh"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769715
        nanos: 814091000
      }
      modified_at {
        seconds: 1762769715
        nanos: 814091000
      }
      revision: 1
    }
    started_at {
      seconds: 1762769716
      nanos: 185000000
    }
    execute_mode: RUN
    status: RUNNING
    last_job_query_revision: 1
    last_job_id: "ptjudsokok9884k268fk-ptqudsokok98891b44bh"
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769715
      nanos: 814091000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/` with (format=parquet)\n            select * from AS_TABLE([<|foo:123, bar:\"xxx\"u|>,<|foo:456, bar:\"yyy\"u|>]);\n            "
    syntax: YQL_V1
  }
  plan {
    json: "{}"
  }
  statistics {
    json: "{}"
  }
  timeline {
    svg: "<svg width=\'1280\' height=\'0\' xmlns=\'http://www.w3.org/2000/svg\'>\n<clipPath id=\'clipTextPath\'><rect x=\'0\' y=\'0\' width=\'298\' height=\'0\'/></clipPath>\n\n<defs>\n  <g id=\'icon_memory\'>\n    <path fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M5 3C3.89543 3 3 3.89543 3 5H1V7H3V9H1V11H3V13H1V15H3V17H1V19H3C3 20.1046 3.89543 21 5 21H9C10.1046 21 11 20.1046 11 19H13C13 20.1046 13.8954 21 15 21H19C20.1046 21 21 20.1046 21 19H23V17H21V15H23V13H21V11H23V9H21V7H23V5H21C21 3.89543 20.1046 3 19 3H15C13.8954 3 13 3.89543 13 5H11C11 3.89543 10.1046 3 9 3H5ZM11 7V9H13V7H11ZM11 11V13H13V11H11ZM11 15V17H13V15H11ZM5 5H9V19H5V5ZM15 5H19V19H15V5Z\' />\n  </g>\n\n  <g id=\'icon_cpu\'>\n    <path d=\'M13.9802 7.75H10.0102C8.76023 7.75 7.74023 8.76 7.74023 10.02V13.99C7.74023 15.24 8.75023 16.26 10.0102 16.26H13.9802C15.2302 16.26 16.2502 15.25 16.2502 13.99V10.02C16.2502 8.76 15.2402 7.75 13.9802 7.75ZM13.5002 12.98L12.6102 14.53C12.4802 14.76 12.2402 14.88 12.0002 14.88C11.8802 14.88 11.7502 14.85 11.6502 14.79C11.3102 14.6 11.1902 14.17 11.3902 13.83L12.0302 12.72H11.4702C11.0202 12.72 10.6502 12.52 10.4502 12.18C10.2502 11.84 10.2702 11.42 10.5002 11.03L11.3902 9.48C11.5902 9.14 12.0202 9.03 12.3502 9.22C12.6902 9.41 12.8102 9.84 12.6102 10.18L11.9702 11.29H12.5302C12.9802 11.29 13.3502 11.49 13.5502 11.83C13.7502 12.17 13.7302 12.59 13.5002 12.98Z\' />\n    <path d=\'M21.25 12.75C21.67 12.75 22 12.41 22 12C22 11.58 21.67 11.25 21.25 11.25H20V9.05H21.25C21.67 9.05 22 8.72 22 8.3C22 7.89 21.67 7.55 21.25 7.55H19.77C19.29 5.96 18.04 4.71 16.45 4.23V2.75C16.45 2.34 16.11 2 15.7 2C15.29 2 14.95 2.34 14.95 2.75V4H12.75V2.75C12.75 2.34 12.41 2 12 2C11.59 2 11.25 2.34 11.25 2.75V4H9.06V2.75C9.06 2.34 8.72 2 8.31 2C7.89 2 7.56 2.34 7.56 2.75V4.23C5.96 4.71 4.71 5.96 4.23 7.55H2.75C2.34 7.55 2 7.89 2 8.3C2 8.72 2.34 9.05 2.75 9.05H4V11.25H2.75C2.34 11.25 2 11.58 2 12C2 12.41 2.34 12.75 2.75 12.75H4V14.95H2.75C2.34 14.95 2 15.28 2 15.7C2 16.11 2.34 16.45 2.75 16.45H4.23C4.7 18.04 5.96 19.29 7.56 19.77V21.25C7.56 21.66 7.89 22 8.31 22C8.72 22 9.06 21.66 9.06 21.25V20H11.26V21.25C11.26 21.66 11.59 22 12.01 22C12.42 22 12.76 21.66 12.76 21.25V20H14.95V21.25C14.95 21.66 15.29 22 15.7 22C16.11 22 16.45 21.66 16.45 21.25V19.77C18.04 19.29 19.29 18.04 19.77 16.45H21.25C21.67 16.45 22 16.11 22 15.7C22 15.28 21.67 14.95 21.25 14.95H20V12.75H21.25ZM17.26 14.26C17.26 15.91 15.91 17.26 14.26 17.26H9.74C8.09 17.26 6.74 15.91 6.74 14.26V9.74C6.74 8.09 8.09 6.74 9.74 6.74H14.26C15.91 6.74 17.26 8.09 17.26 9.74V14.26Z\' />\n </g>\n\n  <g id=\'icon_ingress\'>\n    <path d=\'M3 6L6 6L6 12L10 12L10 6L13 6V5L8 0L3 5L3 6Z\' />\n    <path d=\'M2 16L14 16V14L2 14V16Z\' />\n  </g>\n\n  <g id=\'icon_egress\'>\n    <path d=\'M13 9H10V16H6V9L3 9V8L8 3L13 8V9Z\' />\n    <path d=\'M14 2H2V0H14V2Z\' />\n  </g>\n\n  <g id=\'icon_input\'>\n    <path d=\"M456.49,264.459L295.206,103.183l56.572-56.572c1.084-1.08,1.456-2.696,0.948-4.14c-0.504-1.448-1.792-2.48-3.316-2.656\n        L4.654,0.027c-1.22-0.144-2.428,0.284-3.292,1.148c-0.864,0.86-1.284,2.068-1.144,3.28L40.01,349.208\n        c0.176,1.52,1.208,2.812,2.656,3.316c1.448,0.508,3.068,0.14,4.144-0.948l56.18-56.18L264.274,456.68\n        c0.748,0.748,1.764,1.172,2.828,1.172c1.06,0,2.076-0.424,2.828-1.172l186.556-186.568\n        C458.05,268.555,458.05,266.027,456.49,264.459z\"/>\n  </g>\n\n  <g id=\'icon_output\'>\n\t<path d=\"M456.494,1.168c-0.864-0.86-2.064-1.284-3.288-1.14l-344.76,39.78c-1.524,0.18-2.812,1.216-3.32,2.656\n        c-0.504,1.456-0.132,3.068,0.948,4.148l56.572,56.576L1.362,264.464c-1.564,1.564-1.564,4.092,0,5.656l186.56,186.556\n        c0.78,0.784,1.804,1.172,2.828,1.172c1.024,0,2.048-0.388,2.828-1.172l161.28-161.28l56.18,56.18\n        c1.084,1.088,2.7,1.452,4.144,0.952c1.448-0.504,2.48-1.796,2.656-3.32L457.63,4.456C457.774,3.248,457.354,2.036,456.494,1.168z\"/>\n  </g>\n\n</defs>\n<style type=\'text/css\'>\n  rect.stage { stroke-width:0; fill:var(--stage-main, #F2F2F2); }\n  rect.clone { stroke-width:0; fill:var(--stage-clone, #D9D9D9); }\n  rect.blocks { stroke-width:0; fill:var(--block-medium, #EACB68); }\n  .texts { text-anchor:start; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .textm { text-anchor:middle; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .texte { text-anchor:end; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  circle.stage { stroke:var(--stage-main, #F2F2F2); stroke-width:1; fill:var(--stage-clone, #D9D9D9); }\n  line.opdiv { stroke-width:1; stroke:var(--stage-grid, #B2B2B2); stroke-dasharray:1,2; }\n  text.clipped { clip-path:url(#clipTextPath); }\n  polygon.conn { stroke-width:0; fill:var(--conn-fill, #BFBFBF); }\n  path.conn { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--conn-fill, #BFBFBF); }\n  path.conn.blocks { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--block-medium, #EACB68); }\n  text.conn { text-anchor:middle; font-family:Verdana; font-size:6px; fill:var(--conn-text, #393939); }\n  rect.background { stroke-width:0; fill:#33FFFF; opacity:0; }\n  g.selected circle.stage { fill:#33FFFF; }\n  g.selected polygon.conn { fill:#33FFFF; }\n  g.selected path.conn { stroke:#33FFFF; fill:#33FFFF; }\n  g.selected rect.stage { fill:#33FFFF; }\n  g.selected rect.clone { fill:#33FFFF; }\n  g.selected rect.background { opacity:1; }\n  g.selected path.blocks { stroke:#33FFFF; }\n</style>\n\n<script type=\"text/ecmascript\">\n<![CDATA[\n    var selectedNode;\n\n    function find_selectable(node) {\n\t\tvar parent = node.parentElement;\n\t\tif (!parent) return;\n\t\tif (parent.classList.contains(\"selectable\")) return parent;\n\t\treturn find_selectable(parent);\n\t}\n\n    window.onload = function() {\n        selectedNode = document.querySelector(\".selected\");\n    }\n\n    window.addEventListener(\"click\", function(e) {\n\t\tvar target = find_selectable(e.target);\n        if (target) {\n            if (selectedNode) {\n                selectedNode.classList.remove(\"selected\");\n            }\n            if (target == selectedNode) {\n                selectedNode = null;\n            } else {\n                selectedNode = target;\n                selectedNode.classList.add(\"selected\");\n            }\n        }\n\t}, false)\n]]>\n</script>\n\n<line x1=\'600\' y1=\'0\' x2=\'600\' y2=\'0\' stroke-width=\'1\' stroke=\'var(--stage-grid, #B2B2B2)\' stroke-dasharray=\'1,2\'/>\n\n</svg>\n"
  }
}

2025-11-10 10:15:16,903 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokok98891b44bh"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769715
        nanos: 814091000
      }
      modified_at {
        seconds: 1762769715
        nanos: 814091000
      }
      revision: 1
    }
    started_at {
      seconds: 1762769716
      nanos: 185000000
    }
    finished_at {
      seconds: 1762769716
      nanos: 441000000
    }
    execute_mode: RUN
    status: COMPLETED
    last_job_query_revision: 1
    last_job_id: "ptjudsokok9884k268fk-ptqudsokok98891b44bh"
    result_expire_at {
      seconds: 1762856116
      nanos: 166626000
    }
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769715
      nanos: 814091000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/` with (format=parquet)\n            select * from AS_TABLE([<|foo:123, bar:\"xxx\"u|>,<|foo:456, bar:\"yyy\"u|>]);\n            "
    syntax: YQL_V1
  }
  plan {
    json: "{\"Plan\":{\"Plans\":[{\"PlanNodeId\":2,\"Operators\":[{\"Extension\":\".parquet\",\"ExternalDataSource\":\"h3665268702917336644_test_convertsbucket\",\"Inputs\":[],\"Name\":\"Write h3665268702917336644_test_convertsbucket\",\"SinkType\":\"s3\"}],\"Plans\":[{\"PlanNodeId\":1,\"Node Type\":\"Stage\"}],\"Node Type\":\"Sink\"}],\"Node Type\":\"Query\",\"PlanNodeType\":\"Query\"},\"meta\":{\"version\":\"0.2\",\"type\":\"query\"}}"
  }
  statistics {
    json: "{\"Sink\":{\"Tasks\":{\"sum\":1,\"count\":1,\"avg\":1,\"max\":1,\"min\":1},\"CpuTimeUs\":{\"sum\":\"151us\",\"count\":1,\"avg\":\"151us\",\"max\":\"151us\",\"min\":\"151us\"},\"EgressBytes\":{\"sum\":533,\"count\":1,\"avg\":533,\"max\":533,\"min\":533},\"EgressRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"MaxMemoryUsage\":{\"sum\":1048576,\"count\":1,\"avg\":1048576,\"max\":1048576,\"min\":1048576}}}"
  }
  ast {
    data: "(\n(let $1 (S3SinkSettings \'\"parquet_1_csv_with_names_v2/\" \'(\'(\'\"multipart\" \'\"true\") \'(\'\"block_output\" \'\"true\")) (SecureParam \'\"cluster:default_/local/h3665268702917336644_test_convertsbucket\") \'\".parquet\" (StructType \'(\'\"bar\" (DataType \'Utf8)) \'(\'\"foo\" (DataType \'Int32)))))\n(let $2 (DqPhyStage \'() (lambda \'() (block \'(\n  (let $3 (lambda \'($4) (Member $4 \'\"bar\") (Member $4 \'\"foo\")))\n  (return (WideToBlocks (FromFlow (ExpandMap (ToFlow (AsList (AsStruct \'(\'\"bar\" (Utf8 \'\"xxx\")) \'(\'\"foo\" (Int32 \'\"123\"))) (AsStruct \'(\'\"bar\" (Utf8 \'\"yyy\")) \'(\'\"foo\" (Int32 \'\"456\"))))) $3))))\n))) \'(\'(\'\"_logical_id\" \'273) \'(\'\"_id\" \'\"c630b9c-3f1ce276-1927ab89-14469738\")) \'((DqSink \'0 (DataSink \'\"s3\" \'\"/local/h3665268702917336644_test_convertsbucket\") $1))))\n(return (KqpPhysicalQuery \'((KqpPhysicalTx \'($2) \'() \'() \'(\'(\'\"type\" \'\"generic\") \'(\'\"with_effects\")))) \'() \'(\'(\'\"type\" \'\"script\"))))\n)\n"
  }
  timeline {
    svg: "<svg width=\'1280\' height=\'61\' xmlns=\'http://www.w3.org/2000/svg\'>\n<clipPath id=\'clipTextPath\'><rect x=\'0\' y=\'0\' width=\'298\' height=\'61\'/></clipPath>\n\n<defs>\n  <g id=\'icon_memory\'>\n    <path fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M5 3C3.89543 3 3 3.89543 3 5H1V7H3V9H1V11H3V13H1V15H3V17H1V19H3C3 20.1046 3.89543 21 5 21H9C10.1046 21 11 20.1046 11 19H13C13 20.1046 13.8954 21 15 21H19C20.1046 21 21 20.1046 21 19H23V17H21V15H23V13H21V11H23V9H21V7H23V5H21C21 3.89543 20.1046 3 19 3H15C13.8954 3 13 3.89543 13 5H11C11 3.89543 10.1046 3 9 3H5ZM11 7V9H13V7H11ZM11 11V13H13V11H11ZM11 15V17H13V15H11ZM5 5H9V19H5V5ZM15 5H19V19H15V5Z\' />\n  </g>\n\n  <g id=\'icon_cpu\'>\n    <path d=\'M13.9802 7.75H10.0102C8.76023 7.75 7.74023 8.76 7.74023 10.02V13.99C7.74023 15.24 8.75023 16.26 10.0102 16.26H13.9802C15.2302 16.26 16.2502 15.25 16.2502 13.99V10.02C16.2502 8.76 15.2402 7.75 13.9802 7.75ZM13.5002 12.98L12.6102 14.53C12.4802 14.76 12.2402 14.88 12.0002 14.88C11.8802 14.88 11.7502 14.85 11.6502 14.79C11.3102 14.6 11.1902 14.17 11.3902 13.83L12.0302 12.72H11.4702C11.0202 12.72 10.6502 12.52 10.4502 12.18C10.2502 11.84 10.2702 11.42 10.5002 11.03L11.3902 9.48C11.5902 9.14 12.0202 9.03 12.3502 9.22C12.6902 9.41 12.8102 9.84 12.6102 10.18L11.9702 11.29H12.5302C12.9802 11.29 13.3502 11.49 13.5502 11.83C13.7502 12.17 13.7302 12.59 13.5002 12.98Z\' />\n    <path d=\'M21.25 12.75C21.67 12.75 22 12.41 22 12C22 11.58 21.67 11.25 21.25 11.25H20V9.05H21.25C21.67 9.05 22 8.72 22 8.3C22 7.89 21.67 7.55 21.25 7.55H19.77C19.29 5.96 18.04 4.71 16.45 4.23V2.75C16.45 2.34 16.11 2 15.7 2C15.29 2 14.95 2.34 14.95 2.75V4H12.75V2.75C12.75 2.34 12.41 2 12 2C11.59 2 11.25 2.34 11.25 2.75V4H9.06V2.75C9.06 2.34 8.72 2 8.31 2C7.89 2 7.56 2.34 7.56 2.75V4.23C5.96 4.71 4.71 5.96 4.23 7.55H2.75C2.34 7.55 2 7.89 2 8.3C2 8.72 2.34 9.05 2.75 9.05H4V11.25H2.75C2.34 11.25 2 11.58 2 12C2 12.41 2.34 12.75 2.75 12.75H4V14.95H2.75C2.34 14.95 2 15.28 2 15.7C2 16.11 2.34 16.45 2.75 16.45H4.23C4.7 18.04 5.96 19.29 7.56 19.77V21.25C7.56 21.66 7.89 22 8.31 22C8.72 22 9.06 21.66 9.06 21.25V20H11.26V21.25C11.26 21.66 11.59 22 12.01 22C12.42 22 12.76 21.66 12.76 21.25V20H14.95V21.25C14.95 21.66 15.29 22 15.7 22C16.11 22 16.45 21.66 16.45 21.25V19.77C18.04 19.29 19.29 18.04 19.77 16.45H21.25C21.67 16.45 22 16.11 22 15.7C22 15.28 21.67 14.95 21.25 14.95H20V12.75H21.25ZM17.26 14.26C17.26 15.91 15.91 17.26 14.26 17.26H9.74C8.09 17.26 6.74 15.91 6.74 14.26V9.74C6.74 8.09 8.09 6.74 9.74 6.74H14.26C15.91 6.74 17.26 8.09 17.26 9.74V14.26Z\' />\n </g>\n\n  <g id=\'icon_ingress\'>\n    <path d=\'M3 6L6 6L6 12L10 12L10 6L13 6V5L8 0L3 5L3 6Z\' />\n    <path d=\'M2 16L14 16V14L2 14V16Z\' />\n  </g>\n\n  <g id=\'icon_egress\'>\n    <path d=\'M13 9H10V16H6V9L3 9V8L8 3L13 8V9Z\' />\n    <path d=\'M14 2H2V0H14V2Z\' />\n  </g>\n\n  <g id=\'icon_input\'>\n    <path d=\"M456.49,264.459L295.206,103.183l56.572-56.572c1.084-1.08,1.456-2.696,0.948-4.14c-0.504-1.448-1.792-2.48-3.316-2.656\n        L4.654,0.027c-1.22-0.144-2.428,0.284-3.292,1.148c-0.864,0.86-1.284,2.068-1.144,3.28L40.01,349.208\n        c0.176,1.52,1.208,2.812,2.656,3.316c1.448,0.508,3.068,0.14,4.144-0.948l56.18-56.18L264.274,456.68\n        c0.748,0.748,1.764,1.172,2.828,1.172c1.06,0,2.076-0.424,2.828-1.172l186.556-186.568\n        C458.05,268.555,458.05,266.027,456.49,264.459z\"/>\n  </g>\n\n  <g id=\'icon_output\'>\n\t<path d=\"M456.494,1.168c-0.864-0.86-2.064-1.284-3.288-1.14l-344.76,39.78c-1.524,0.18-2.812,1.216-3.32,2.656\n        c-0.504,1.456-0.132,3.068,0.948,4.148l56.572,56.576L1.362,264.464c-1.564,1.564-1.564,4.092,0,5.656l186.56,186.556\n        c0.78,0.784,1.804,1.172,2.828,1.172c1.024,0,2.048-0.388,2.828-1.172l161.28-161.28l56.18,56.18\n        c1.084,1.088,2.7,1.452,4.144,0.952c1.448-0.504,2.48-1.796,2.656-3.32L457.63,4.456C457.774,3.248,457.354,2.036,456.494,1.168z\"/>\n  </g>\n\n</defs>\n<style type=\'text/css\'>\n  rect.stage { stroke-width:0; fill:var(--stage-main, #F2F2F2); }\n  rect.clone { stroke-width:0; fill:var(--stage-clone, #D9D9D9); }\n  rect.blocks { stroke-width:0; fill:var(--block-medium, #EACB68); }\n  .texts { text-anchor:start; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .textm { text-anchor:middle; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .texte { text-anchor:end; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  circle.stage { stroke:var(--stage-main, #F2F2F2); stroke-width:1; fill:var(--stage-clone, #D9D9D9); }\n  line.opdiv { stroke-width:1; stroke:var(--stage-grid, #B2B2B2); stroke-dasharray:1,2; }\n  text.clipped { clip-path:url(#clipTextPath); }\n  polygon.conn { stroke-width:0; fill:var(--conn-fill, #BFBFBF); }\n  path.conn { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--conn-fill, #BFBFBF); }\n  path.conn.blocks { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--block-medium, #EACB68); }\n  text.conn { text-anchor:middle; font-family:Verdana; font-size:6px; fill:var(--conn-text, #393939); }\n  rect.background { stroke-width:0; fill:#33FFFF; opacity:0; }\n  g.selected circle.stage { fill:#33FFFF; }\n  g.selected polygon.conn { fill:#33FFFF; }\n  g.selected path.conn { stroke:#33FFFF; fill:#33FFFF; }\n  g.selected rect.stage { fill:#33FFFF; }\n  g.selected rect.clone { fill:#33FFFF; }\n  g.selected rect.background { opacity:1; }\n  g.selected path.blocks { stroke:#33FFFF; }\n</style>\n\n<script type=\"text/ecmascript\">\n<![CDATA[\n    var selectedNode;\n\n    function find_selectable(node) {\n\t\tvar parent = node.parentElement;\n\t\tif (!parent) return;\n\t\tif (parent.classList.contains(\"selectable\")) return parent;\n\t\treturn find_selectable(parent);\n\t}\n\n    window.onload = function() {\n        selectedNode = document.querySelector(\".selected\");\n    }\n\n    window.addEventListener(\"click\", function(e) {\n\t\tvar target = find_selectable(e.target);\n        if (target) {\n            if (selectedNode) {\n                selectedNode.classList.remove(\"selected\");\n            }\n            if (target == selectedNode) {\n                selectedNode = null;\n            } else {\n                selectedNode = target;\n                selectedNode.classList.add(\"selected\");\n            }\n        }\n\t}, false)\n]]>\n</script>\n<g class=\'selectable\'><title>Stage 0</title>\n<rect x=\'0\' y=\'27\' width=\'298\' height=\'34\' class=\'stage\'/>\n<rect x=\'301\' y=\'27\' width=\'64\' height=\'34\' class=\'stage\'/>\n<rect x=\'395\' y=\'27\' width=\'200\' height=\'34\' class=\'stage\'/>\n<rect x=\'368\' y=\'27\' width=\'24\' height=\'34\' class=\'stage\'/>\n<rect x=\'598\' y=\'27\' width=\'682\' height=\'34\' class=\'stage\'/>\n<g><title>Stage: </title><text x=\'18\' y=\'38\' class=\'texts clipped\'>Stage</text>\n<text x=\'26\' y=\'48\' class=\'texts clipped\'></text>\n</g>\n<circle cx=\'8\' cy=\'44\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'48\' class=\'textm\'>0</text>\n<g><title>Memory 100%, 1.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 29) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'29\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,29 503,29 593,29 593,43 413,43\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'32\' width=\'33\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'40\'>1.00MB</text>\n</g>\n<g><title>CPU Usage 100%, 151us</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 45) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'45\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,45 503,45 593,45 593,59 413,59\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'48\' width=\'28\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'56\'>151us</text>\n</g>\n<g><title>Stage 0, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'27\' x2=\'371\' y2=\'61\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'48\' class=\'texte\'>1</text>\n</g>\n</g>\n<g class=\'selectable\'><title>Result: Sink</title>\n<rect x=\'0\' y=\'3\' width=\'298\' height=\'24\' class=\'background\'/>\n<text x=\'0\' y=\'11\' class=\'texts\'>Sink</text>\n</g>\n\n<line x1=\'600\' y1=\'0\' x2=\'600\' y2=\'61\' stroke-width=\'1\' stroke=\'var(--stage-grid, #B2B2B2)\' stroke-dasharray=\'1,2\'/>\n<text x=\'602\' y=\'11\' class=\'texts\'>0:00</text>\n<text x=\'303\' y=\'11\' class=\'texts\'>Operators</text>\n<text x=\'397\' y=\'11\' class=\'texts\'>Stages</text>\n<text x=\'390\' y=\'11\' class=\'texte\'>Tasks</text>\n<text x=\'390\' y=\'22\' class=\'texte\'>1</text>\n<g><title>Ingress 0B, Rows 0, Avg 0B/s</title>\n  <rect x=\'395\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'397\' y=\'22\'>0B</text>\n</g>\n<g><title>CPU Usage 151us, Avg 0.00 CPU/s</title>\n  <rect x=\'462\' y=\'14\' width=\'66\' height=\'10\' stroke-width=\'0\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'464\' y=\'22\'>151us</text>\n</g>\n<g><title>Memory 1.00MB</title>\n  <rect x=\'530\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'532\' y=\'22\'>1.00MB</text>\n</g>\n<g><title>Duration: 1.00, Total 1.00</title>\n  <rect x=\'1215\' y=\'3\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--stage-grid, #B2B2B2)\'/>\n  <text text-anchor=\'end\' font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-inv, #FFFFFF)\' x=\'1278\' y=\'11\'>1.00</text>\n</g>\n\n</svg>\n"
  }
}

2025-11-10 10:15:16,914 - DEBUG - root - describe_query: Result: ... (repeated, see above) ...
2025-11-10 10:15:16,915 - DEBUG - root - create_query_impl: Request: content {
  type: ANALYTICS
  name: "simple"
  acl {
    visibility: PRIVATE
  }
  limits {
    execution_timeout {
    }
  }
  text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/` with (format=csv_with_names)\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/*` with (format=parquet, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
  syntax: YQL_V1
}
execute_mode: RUN
idempotency_key: "0a787702-2eba-46c9-a538-a6511f6c2894"

2025-11-10 10:15:16,941 - DEBUG - root - create_query_impl: Result: query_id: "ptqudsokoj7hd49o04fd"

2025-11-10 10:15:16,949 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokoj7hd49o04fd"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769716
        nanos: 918827000
      }
      modified_at {
        seconds: 1762769716
        nanos: 918827000
      }
      revision: 1
    }
    execute_mode: RUN
    status: STARTING
    last_job_query_revision: 1
    last_job_id: "ptjudsokoj7hcusft0jo-ptqudsokoj7hd49o04fd"
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769716
      nanos: 918827000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/` with (format=csv_with_names)\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/*` with (format=parquet, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
    syntax: YQL_V1
  }
}

2025-11-10 10:15:17,458 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokoj7hd49o04fd"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769716
        nanos: 918827000
      }
      modified_at {
        seconds: 1762769716
        nanos: 918827000
      }
      revision: 1
    }
    started_at {
      seconds: 1762769717
      nanos: 195000000
    }
    execute_mode: RUN
    status: RUNNING
    last_job_query_revision: 1
    last_job_id: "ptjudsokoj7hcusft0jo-ptqudsokoj7hd49o04fd"
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769716
      nanos: 918827000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/` with (format=csv_with_names)\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/*` with (format=parquet, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
    syntax: YQL_V1
  }
  plan {
    json: "{}"
  }
  statistics {
    json: "{}"
  }
  timeline {
    svg: "<svg width=\'1280\' height=\'0\' xmlns=\'http://www.w3.org/2000/svg\'>\n<clipPath id=\'clipTextPath\'><rect x=\'0\' y=\'0\' width=\'298\' height=\'0\'/></clipPath>\n\n<defs>\n  <g id=\'icon_memory\'>\n    <path fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M5 3C3.89543 3 3 3.89543 3 5H1V7H3V9H1V11H3V13H1V15H3V17H1V19H3C3 20.1046 3.89543 21 5 21H9C10.1046 21 11 20.1046 11 19H13C13 20.1046 13.8954 21 15 21H19C20.1046 21 21 20.1046 21 19H23V17H21V15H23V13H21V11H23V9H21V7H23V5H21C21 3.89543 20.1046 3 19 3H15C13.8954 3 13 3.89543 13 5H11C11 3.89543 10.1046 3 9 3H5ZM11 7V9H13V7H11ZM11 11V13H13V11H11ZM11 15V17H13V15H11ZM5 5H9V19H5V5ZM15 5H19V19H15V5Z\' />\n  </g>\n\n  <g id=\'icon_cpu\'>\n    <path d=\'M13.9802 7.75H10.0102C8.76023 7.75 7.74023 8.76 7.74023 10.02V13.99C7.74023 15.24 8.75023 16.26 10.0102 16.26H13.9802C15.2302 16.26 16.2502 15.25 16.2502 13.99V10.02C16.2502 8.76 15.2402 7.75 13.9802 7.75ZM13.5002 12.98L12.6102 14.53C12.4802 14.76 12.2402 14.88 12.0002 14.88C11.8802 14.88 11.7502 14.85 11.6502 14.79C11.3102 14.6 11.1902 14.17 11.3902 13.83L12.0302 12.72H11.4702C11.0202 12.72 10.6502 12.52 10.4502 12.18C10.2502 11.84 10.2702 11.42 10.5002 11.03L11.3902 9.48C11.5902 9.14 12.0202 9.03 12.3502 9.22C12.6902 9.41 12.8102 9.84 12.6102 10.18L11.9702 11.29H12.5302C12.9802 11.29 13.3502 11.49 13.5502 11.83C13.7502 12.17 13.7302 12.59 13.5002 12.98Z\' />\n    <path d=\'M21.25 12.75C21.67 12.75 22 12.41 22 12C22 11.58 21.67 11.25 21.25 11.25H20V9.05H21.25C21.67 9.05 22 8.72 22 8.3C22 7.89 21.67 7.55 21.25 7.55H19.77C19.29 5.96 18.04 4.71 16.45 4.23V2.75C16.45 2.34 16.11 2 15.7 2C15.29 2 14.95 2.34 14.95 2.75V4H12.75V2.75C12.75 2.34 12.41 2 12 2C11.59 2 11.25 2.34 11.25 2.75V4H9.06V2.75C9.06 2.34 8.72 2 8.31 2C7.89 2 7.56 2.34 7.56 2.75V4.23C5.96 4.71 4.71 5.96 4.23 7.55H2.75C2.34 7.55 2 7.89 2 8.3C2 8.72 2.34 9.05 2.75 9.05H4V11.25H2.75C2.34 11.25 2 11.58 2 12C2 12.41 2.34 12.75 2.75 12.75H4V14.95H2.75C2.34 14.95 2 15.28 2 15.7C2 16.11 2.34 16.45 2.75 16.45H4.23C4.7 18.04 5.96 19.29 7.56 19.77V21.25C7.56 21.66 7.89 22 8.31 22C8.72 22 9.06 21.66 9.06 21.25V20H11.26V21.25C11.26 21.66 11.59 22 12.01 22C12.42 22 12.76 21.66 12.76 21.25V20H14.95V21.25C14.95 21.66 15.29 22 15.7 22C16.11 22 16.45 21.66 16.45 21.25V19.77C18.04 19.29 19.29 18.04 19.77 16.45H21.25C21.67 16.45 22 16.11 22 15.7C22 15.28 21.67 14.95 21.25 14.95H20V12.75H21.25ZM17.26 14.26C17.26 15.91 15.91 17.26 14.26 17.26H9.74C8.09 17.26 6.74 15.91 6.74 14.26V9.74C6.74 8.09 8.09 6.74 9.74 6.74H14.26C15.91 6.74 17.26 8.09 17.26 9.74V14.26Z\' />\n </g>\n\n  <g id=\'icon_ingress\'>\n    <path d=\'M3 6L6 6L6 12L10 12L10 6L13 6V5L8 0L3 5L3 6Z\' />\n    <path d=\'M2 16L14 16V14L2 14V16Z\' />\n  </g>\n\n  <g id=\'icon_egress\'>\n    <path d=\'M13 9H10V16H6V9L3 9V8L8 3L13 8V9Z\' />\n    <path d=\'M14 2H2V0H14V2Z\' />\n  </g>\n\n  <g id=\'icon_input\'>\n    <path d=\"M456.49,264.459L295.206,103.183l56.572-56.572c1.084-1.08,1.456-2.696,0.948-4.14c-0.504-1.448-1.792-2.48-3.316-2.656\n        L4.654,0.027c-1.22-0.144-2.428,0.284-3.292,1.148c-0.864,0.86-1.284,2.068-1.144,3.28L40.01,349.208\n        c0.176,1.52,1.208,2.812,2.656,3.316c1.448,0.508,3.068,0.14,4.144-0.948l56.18-56.18L264.274,456.68\n        c0.748,0.748,1.764,1.172,2.828,1.172c1.06,0,2.076-0.424,2.828-1.172l186.556-186.568\n        C458.05,268.555,458.05,266.027,456.49,264.459z\"/>\n  </g>\n\n  <g id=\'icon_output\'>\n\t<path d=\"M456.494,1.168c-0.864-0.86-2.064-1.284-3.288-1.14l-344.76,39.78c-1.524,0.18-2.812,1.216-3.32,2.656\n        c-0.504,1.456-0.132,3.068,0.948,4.148l56.572,56.576L1.362,264.464c-1.564,1.564-1.564,4.092,0,5.656l186.56,186.556\n        c0.78,0.784,1.804,1.172,2.828,1.172c1.024,0,2.048-0.388,2.828-1.172l161.28-161.28l56.18,56.18\n        c1.084,1.088,2.7,1.452,4.144,0.952c1.448-0.504,2.48-1.796,2.656-3.32L457.63,4.456C457.774,3.248,457.354,2.036,456.494,1.168z\"/>\n  </g>\n\n</defs>\n<style type=\'text/css\'>\n  rect.stage { stroke-width:0; fill:var(--stage-main, #F2F2F2); }\n  rect.clone { stroke-width:0; fill:var(--stage-clone, #D9D9D9); }\n  rect.blocks { stroke-width:0; fill:var(--block-medium, #EACB68); }\n  .texts { text-anchor:start; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .textm { text-anchor:middle; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .texte { text-anchor:end; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  circle.stage { stroke:var(--stage-main, #F2F2F2); stroke-width:1; fill:var(--stage-clone, #D9D9D9); }\n  line.opdiv { stroke-width:1; stroke:var(--stage-grid, #B2B2B2); stroke-dasharray:1,2; }\n  text.clipped { clip-path:url(#clipTextPath); }\n  polygon.conn { stroke-width:0; fill:var(--conn-fill, #BFBFBF); }\n  path.conn { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--conn-fill, #BFBFBF); }\n  path.conn.blocks { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--block-medium, #EACB68); }\n  text.conn { text-anchor:middle; font-family:Verdana; font-size:6px; fill:var(--conn-text, #393939); }\n  rect.background { stroke-width:0; fill:#33FFFF; opacity:0; }\n  g.selected circle.stage { fill:#33FFFF; }\n  g.selected polygon.conn { fill:#33FFFF; }\n  g.selected path.conn { stroke:#33FFFF; fill:#33FFFF; }\n  g.selected rect.stage { fill:#33FFFF; }\n  g.selected rect.clone { fill:#33FFFF; }\n  g.selected rect.background { opacity:1; }\n  g.selected path.blocks { stroke:#33FFFF; }\n</style>\n\n<script type=\"text/ecmascript\">\n<![CDATA[\n    var selectedNode;\n\n    function find_selectable(node) {\n\t\tvar parent = node.parentElement;\n\t\tif (!parent) return;\n\t\tif (parent.classList.contains(\"selectable\")) return parent;\n\t\treturn find_selectable(parent);\n\t}\n\n    window.onload = function() {\n        selectedNode = document.querySelector(\".selected\");\n    }\n\n    window.addEventListener(\"click\", function(e) {\n\t\tvar target = find_selectable(e.target);\n        if (target) {\n            if (selectedNode) {\n                selectedNode.classList.remove(\"selected\");\n            }\n            if (target == selectedNode) {\n                selectedNode = null;\n            } else {\n                selectedNode = target;\n                selectedNode.classList.add(\"selected\");\n            }\n        }\n\t}, false)\n]]>\n</script>\n\n<line x1=\'600\' y1=\'0\' x2=\'600\' y2=\'0\' stroke-width=\'1\' stroke=\'var(--stage-grid, #B2B2B2)\' stroke-dasharray=\'1,2\'/>\n\n</svg>\n"
  }
}

2025-11-10 10:15:17,969 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokoj7hd49o04fd"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769716
        nanos: 918827000
      }
      modified_at {
        seconds: 1762769716
        nanos: 918827000
      }
      revision: 1
    }
    started_at {
      seconds: 1762769717
      nanos: 195000000
    }
    finished_at {
      seconds: 1762769717
      nanos: 544000000
    }
    execute_mode: RUN
    status: COMPLETED
    last_job_query_revision: 1
    last_job_id: "ptjudsokoj7hcusft0jo-ptqudsokoj7hd49o04fd"
    result_expire_at {
      seconds: 1762856117
      nanos: 180562000
    }
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769716
      nanos: 918827000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            insert into `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/` with (format=csv_with_names)\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_1_csv_with_names_v2/*` with (format=parquet, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
    syntax: YQL_V1
  }
  plan {
    json: "{\"Plan\":{\"Plans\":[{\"PlanNodeId\":5,\"Operators\":[{\"Extension\":\".csv\",\"ExternalDataSource\":\"h3665268702917336644_test_convertsbucket\",\"Inputs\":[],\"Name\":\"Write h3665268702917336644_test_convertsbucket\",\"SinkType\":\"s3\"}],\"Plans\":[{\"PlanNodeId\":4,\"Plans\":[{\"Blocks\":\"True\",\"PlanNodeId\":3,\"Plans\":[{\"PlanNodeId\":2,\"Plans\":[{\"PlanNodeId\":1,\"Operators\":[{\"E-Size\":\"0\",\"Format\":\"parquet\",\"Name\":\"h3665268702917336644_test_convertsbucket.parquet_1_csv_with_names_v2/* \",\"Inputs\":[],\"Path\":\"parquet_1_csv_with_names_v2/* \",\"E-Rows\":\"0\",\"ExternalDataSource\":\"h3665268702917336644_test_convertsbucket\",\"ReadColumns\":[\"bar\",\"foo\"],\"SourceType\":\"s3\",\"E-Cost\":\"0\"}],\"Node Type\":\"Source\"}],\"Node Type\":\"Stage\"}],\"Node Type\":\"Map\",\"PlanNodeType\":\"Connection\"}],\"Node Type\":\"Stage\"}],\"Node Type\":\"Sink\"}],\"Node Type\":\"Query\",\"PlanNodeType\":\"Query\"},\"meta\":{\"version\":\"0.2\",\"type\":\"query\"}}"
  }
  statistics {
    json: "{\"Sink\":{\"Tasks\":{\"sum\":2,\"count\":2,\"avg\":1,\"max\":1,\"min\":1},\"CpuTimeUs\":{\"sum\":\"1ms\",\"count\":2,\"avg\":\"689us\",\"max\":\"786us\",\"min\":\"593us\"},\"IngressBytes\":{\"sum\":735,\"count\":1,\"avg\":735,\"max\":735,\"min\":735},\"IngressRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"InputBytes\":{\"sum\":34,\"count\":1,\"avg\":34,\"max\":34,\"min\":34},\"InputRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"OutputBytes\":{\"sum\":34,\"count\":1,\"avg\":34,\"max\":34,\"min\":34},\"OutputRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"EgressBytes\":{\"sum\":32,\"count\":1,\"avg\":32,\"max\":32,\"min\":32},\"EgressRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"MaxMemoryUsage\":{\"sum\":211812352,\"count\":2,\"avg\":105906176,\"max\":210763776,\"min\":1048576}}}"
  }
  ast {
    data: "(\n(let $1 \'\"/local/h3665268702917336644_test_convertsbucket\")\n(let $2 (DataSource \'\"s3\" $1))\n(let $3 \'\"Paths {\\n  Name: \\\"parquet_1_csv_with_names_v2\\\"\\n  Children {\\n    Name: \\\"ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet\\\"\\n    Size: 533\\n    Read: true\\n  }\\n  IsDirectory: true\\n}\\n\")\n(let $4 (Bool \'\"true\"))\n(let $5 (SecureParam \'\"cluster:default_/local/h3665268702917336644_test_convertsbucket\"))\n(let $6 (StructType \'(\'\"bar\" (DataType \'String)) \'(\'\"foo\" (DataType \'Int32))))\n(let $7 (S3ParseSettings world \'(\'((String $3) $4 (AsStruct))) $5 \'\"\" \'\"parquet_1_csv_with_names_v2/* \" \'\"parquet\" $6 (lambda \'($13) $4) \'()))\n(let $8 \'(\'(\'\"_logical_id\" \'362) \'(\'\"_id\" \'\"9a208561-4ffca976-d8de59b3-3c95081e\") \'(\'\"_wide_channels\" $6)))\n(let $9 (DqPhyStage \'((DqSource $2 $7)) (lambda \'($14) (FromFlow (DqSourceWideBlockWrap $14 $2 $6 \'(\'(\'format \'\"parquet\"))))) $8))\n(let $10 (DqCnMap (TDqOutput $9 \'\"0\")))\n(let $11 (S3SinkSettings \'\"parquet_2_csv_with_names_v2/\" \'(\'(\'\"multipart\" \'\"true\")) $5 \'\".csv\" $6))\n(let $12 (DqPhyStage \'($10) (lambda \'($15) (block \'(\n  (let $16 \'(\'(\'\"data.datetime.formatname\" \'\"POSIX\") \'(\'\"data.timestamp.formatname\" \'\"POSIX\") \'(\'\"file_size_limit\" \'\"52428800\")))\n  (return (FromFlow (S3SinkOutput (NarrowMap (ToFlow (WideFromBlocks $15)) (lambda \'($17 $18) (AsStruct \'(\'\"bar\" $17) \'(\'\"foo\" $18)))) \'\"csv_with_names\" \'() $16)))\n))) \'(\'(\'\"_logical_id\" \'439) \'(\'\"_id\" \'\"fec0b3ef-e5feef53-968e3657-2d8e4f7d\")) \'((DqSink \'\"0\" (DataSink \'\"s3\" $1) $11))))\n(return (KqpPhysicalQuery \'((KqpPhysicalTx \'($9 $12) \'() \'() \'(\'(\'\"type\" \'\"generic\") \'(\'\"with_effects\")))) \'() \'(\'(\'\"type\" \'\"script\"))))\n)\n"
  }
  timeline {
    svg: "<svg width=\'1280\' height=\'146\' xmlns=\'http://www.w3.org/2000/svg\'>\n<clipPath id=\'clipTextPath\'><rect x=\'0\' y=\'0\' width=\'298\' height=\'146\'/></clipPath>\n\n<defs>\n  <g id=\'icon_memory\'>\n    <path fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M5 3C3.89543 3 3 3.89543 3 5H1V7H3V9H1V11H3V13H1V15H3V17H1V19H3C3 20.1046 3.89543 21 5 21H9C10.1046 21 11 20.1046 11 19H13C13 20.1046 13.8954 21 15 21H19C20.1046 21 21 20.1046 21 19H23V17H21V15H23V13H21V11H23V9H21V7H23V5H21C21 3.89543 20.1046 3 19 3H15C13.8954 3 13 3.89543 13 5H11C11 3.89543 10.1046 3 9 3H5ZM11 7V9H13V7H11ZM11 11V13H13V11H11ZM11 15V17H13V15H11ZM5 5H9V19H5V5ZM15 5H19V19H15V5Z\' />\n  </g>\n\n  <g id=\'icon_cpu\'>\n    <path d=\'M13.9802 7.75H10.0102C8.76023 7.75 7.74023 8.76 7.74023 10.02V13.99C7.74023 15.24 8.75023 16.26 10.0102 16.26H13.9802C15.2302 16.26 16.2502 15.25 16.2502 13.99V10.02C16.2502 8.76 15.2402 7.75 13.9802 7.75ZM13.5002 12.98L12.6102 14.53C12.4802 14.76 12.2402 14.88 12.0002 14.88C11.8802 14.88 11.7502 14.85 11.6502 14.79C11.3102 14.6 11.1902 14.17 11.3902 13.83L12.0302 12.72H11.4702C11.0202 12.72 10.6502 12.52 10.4502 12.18C10.2502 11.84 10.2702 11.42 10.5002 11.03L11.3902 9.48C11.5902 9.14 12.0202 9.03 12.3502 9.22C12.6902 9.41 12.8102 9.84 12.6102 10.18L11.9702 11.29H12.5302C12.9802 11.29 13.3502 11.49 13.5502 11.83C13.7502 12.17 13.7302 12.59 13.5002 12.98Z\' />\n    <path d=\'M21.25 12.75C21.67 12.75 22 12.41 22 12C22 11.58 21.67 11.25 21.25 11.25H20V9.05H21.25C21.67 9.05 22 8.72 22 8.3C22 7.89 21.67 7.55 21.25 7.55H19.77C19.29 5.96 18.04 4.71 16.45 4.23V2.75C16.45 2.34 16.11 2 15.7 2C15.29 2 14.95 2.34 14.95 2.75V4H12.75V2.75C12.75 2.34 12.41 2 12 2C11.59 2 11.25 2.34 11.25 2.75V4H9.06V2.75C9.06 2.34 8.72 2 8.31 2C7.89 2 7.56 2.34 7.56 2.75V4.23C5.96 4.71 4.71 5.96 4.23 7.55H2.75C2.34 7.55 2 7.89 2 8.3C2 8.72 2.34 9.05 2.75 9.05H4V11.25H2.75C2.34 11.25 2 11.58 2 12C2 12.41 2.34 12.75 2.75 12.75H4V14.95H2.75C2.34 14.95 2 15.28 2 15.7C2 16.11 2.34 16.45 2.75 16.45H4.23C4.7 18.04 5.96 19.29 7.56 19.77V21.25C7.56 21.66 7.89 22 8.31 22C8.72 22 9.06 21.66 9.06 21.25V20H11.26V21.25C11.26 21.66 11.59 22 12.01 22C12.42 22 12.76 21.66 12.76 21.25V20H14.95V21.25C14.95 21.66 15.29 22 15.7 22C16.11 22 16.45 21.66 16.45 21.25V19.77C18.04 19.29 19.29 18.04 19.77 16.45H21.25C21.67 16.45 22 16.11 22 15.7C22 15.28 21.67 14.95 21.25 14.95H20V12.75H21.25ZM17.26 14.26C17.26 15.91 15.91 17.26 14.26 17.26H9.74C8.09 17.26 6.74 15.91 6.74 14.26V9.74C6.74 8.09 8.09 6.74 9.74 6.74H14.26C15.91 6.74 17.26 8.09 17.26 9.74V14.26Z\' />\n </g>\n\n  <g id=\'icon_ingress\'>\n    <path d=\'M3 6L6 6L6 12L10 12L10 6L13 6V5L8 0L3 5L3 6Z\' />\n    <path d=\'M2 16L14 16V14L2 14V16Z\' />\n  </g>\n\n  <g id=\'icon_egress\'>\n    <path d=\'M13 9H10V16H6V9L3 9V8L8 3L13 8V9Z\' />\n    <path d=\'M14 2H2V0H14V2Z\' />\n  </g>\n\n  <g id=\'icon_input\'>\n    <path d=\"M456.49,264.459L295.206,103.183l56.572-56.572c1.084-1.08,1.456-2.696,0.948-4.14c-0.504-1.448-1.792-2.48-3.316-2.656\n        L4.654,0.027c-1.22-0.144-2.428,0.284-3.292,1.148c-0.864,0.86-1.284,2.068-1.144,3.28L40.01,349.208\n        c0.176,1.52,1.208,2.812,2.656,3.316c1.448,0.508,3.068,0.14,4.144-0.948l56.18-56.18L264.274,456.68\n        c0.748,0.748,1.764,1.172,2.828,1.172c1.06,0,2.076-0.424,2.828-1.172l186.556-186.568\n        C458.05,268.555,458.05,266.027,456.49,264.459z\"/>\n  </g>\n\n  <g id=\'icon_output\'>\n\t<path d=\"M456.494,1.168c-0.864-0.86-2.064-1.284-3.288-1.14l-344.76,39.78c-1.524,0.18-2.812,1.216-3.32,2.656\n        c-0.504,1.456-0.132,3.068,0.948,4.148l56.572,56.576L1.362,264.464c-1.564,1.564-1.564,4.092,0,5.656l186.56,186.556\n        c0.78,0.784,1.804,1.172,2.828,1.172c1.024,0,2.048-0.388,2.828-1.172l161.28-161.28l56.18,56.18\n        c1.084,1.088,2.7,1.452,4.144,0.952c1.448-0.504,2.48-1.796,2.656-3.32L457.63,4.456C457.774,3.248,457.354,2.036,456.494,1.168z\"/>\n  </g>\n\n</defs>\n<style type=\'text/css\'>\n  rect.stage { stroke-width:0; fill:var(--stage-main, #F2F2F2); }\n  rect.clone { stroke-width:0; fill:var(--stage-clone, #D9D9D9); }\n  rect.blocks { stroke-width:0; fill:var(--block-medium, #EACB68); }\n  .texts { text-anchor:start; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .textm { text-anchor:middle; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .texte { text-anchor:end; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  circle.stage { stroke:var(--stage-main, #F2F2F2); stroke-width:1; fill:var(--stage-clone, #D9D9D9); }\n  line.opdiv { stroke-width:1; stroke:var(--stage-grid, #B2B2B2); stroke-dasharray:1,2; }\n  text.clipped { clip-path:url(#clipTextPath); }\n  polygon.conn { stroke-width:0; fill:var(--conn-fill, #BFBFBF); }\n  path.conn { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--conn-fill, #BFBFBF); }\n  path.conn.blocks { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--block-medium, #EACB68); }\n  text.conn { text-anchor:middle; font-family:Verdana; font-size:6px; fill:var(--conn-text, #393939); }\n  rect.background { stroke-width:0; fill:#33FFFF; opacity:0; }\n  g.selected circle.stage { fill:#33FFFF; }\n  g.selected polygon.conn { fill:#33FFFF; }\n  g.selected path.conn { stroke:#33FFFF; fill:#33FFFF; }\n  g.selected rect.stage { fill:#33FFFF; }\n  g.selected rect.clone { fill:#33FFFF; }\n  g.selected rect.background { opacity:1; }\n  g.selected path.blocks { stroke:#33FFFF; }\n</style>\n\n<script type=\"text/ecmascript\">\n<![CDATA[\n    var selectedNode;\n\n    function find_selectable(node) {\n\t\tvar parent = node.parentElement;\n\t\tif (!parent) return;\n\t\tif (parent.classList.contains(\"selectable\")) return parent;\n\t\treturn find_selectable(parent);\n\t}\n\n    window.onload = function() {\n        selectedNode = document.querySelector(\".selected\");\n    }\n\n    window.addEventListener(\"click\", function(e) {\n\t\tvar target = find_selectable(e.target);\n        if (target) {\n            if (selectedNode) {\n                selectedNode.classList.remove(\"selected\");\n            }\n            if (target == selectedNode) {\n                selectedNode = null;\n            } else {\n                selectedNode = target;\n                selectedNode.classList.add(\"selected\");\n            }\n        }\n\t}, false)\n]]>\n</script>\n<g class=\'selectable\'><title>Stage 1</title>\n<rect x=\'0\' y=\'27\' width=\'298\' height=\'50\' class=\'stage\'/>\n<rect x=\'301\' y=\'27\' width=\'64\' height=\'50\' class=\'stage\'/>\n<rect x=\'395\' y=\'27\' width=\'200\' height=\'50\' class=\'stage\'/>\n<rect x=\'368\' y=\'27\' width=\'24\' height=\'50\' class=\'stage\'/>\n<rect x=\'598\' y=\'27\' width=\'682\' height=\'50\' class=\'stage\'/>\n<g><title>Stage: </title><text x=\'18\' y=\'38\' class=\'texts clipped\'>Stage</text>\n<text x=\'26\' y=\'48\' class=\'texts clipped\'></text>\n</g>\n<circle cx=\'8\' cy=\'52\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'56\' class=\'textm\'>1</text>\n<g><title>Memory 0%, 1.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 29) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'29\' width=\'1\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,29 413,29 414,29 414,43 413,43\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'32\' width=\'33\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'40\'>1.00MB</text>\n</g>\n<g><title>Max MEM 1.00MB</title>\n<path d=\'M609,42c0,0,0,-13,0,-13c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--mem-medium, #7E4E5B)\' fill=\'var(--mem-medium, #7E4E5B)\' />\n</g>\n<g><title>CPU Usage 43%, 593us</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 45) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'45\' width=\'135\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,45 480,45 548,45 548,59 413,59\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'48\' width=\'28\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'56\'>593us</text>\n</g>\n<g><title>Stage 1, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'27\' x2=\'371\' y2=\'77\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'56\' class=\'texte\'>1</text>\n</g>\n</g>\n<g class=\'selectable\'><title>Stage 0</title>\n<rect x=\'0\' y=\'80\' width=\'298\' height=\'66\' class=\'stage\'/>\n<rect x=\'301\' y=\'80\' width=\'64\' height=\'66\' class=\'stage\'/>\n<rect x=\'395\' y=\'80\' width=\'200\' height=\'66\' class=\'stage\'/>\n<rect x=\'368\' y=\'80\' width=\'24\' height=\'66\' class=\'stage\'/>\n<rect x=\'598\' y=\'80\' width=\'682\' height=\'66\' class=\'stage\'/>\n<g><title>Stage:  Blocks: True</title><rect x=\'0\' y=\'83\' width=\'24\' height=\'18\' class=\'blocks\'/>\n<text x=\'18\' y=\'91\' class=\'texts clipped\'>Stage</text>\n<text x=\'26\' y=\'101\' class=\'texts clipped\'></text>\n<g><title>Output Rows 50%, 2</title>\n  <rect x=\'303\' y=\'86\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,86 333,86 363,86 363,100 303,100\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'89\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'97\'>2</text>\n</g>\n</g>\n<line x1=\'18\' y1=\'103\' x2=\'298\' y2=\'103\' class=\'opdiv\' />\n<g><title>Source s3: h3665268702917336644_test_convertsbucket.parquet_1_csv_with_names_v2/* (bar, foo)</title><text x=\'18\' y=\'111\' class=\'texts clipped\'>Source s3</text>\n<text x=\'26\' y=\'121\' class=\'texts clipped\'>h3665268702917336644_test_convertsbucket.parquet_1_csv_with_names_v2/* (bar, foo)</text>\n<g><title>Output Rows 50%, 2, Est: 0 Rows: 0 Size: 0B</title>\n  <rect x=\'303\' y=\'106\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,106 333,106 363,106 363,120 303,120\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'109\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'117\'>2</text>\n</g>\n</g>\n<circle cx=\'8\' cy=\'113\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'117\' class=\'textm\'>0</text>\n<g><title>Memory 99%, 201.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 98) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'98\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,98 503,98 593,98 593,112 413,112\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'101\' width=\'44\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'109\'>201.00MB</text>\n</g>\n<g><title>Max MEM 201.00MB</title>\n<path d=\'M598,111c0,0,0,-13,0,-13c4,0,8,0,12,0c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--mem-medium, #7E4E5B)\' fill=\'var(--mem-medium, #7E4E5B)\' />\n</g>\n<g><title>CPU Usage 56%, 786us</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 114) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'114\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,114 503,114 593,114 593,128 413,128\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'117\' width=\'28\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'125\'>786us</text>\n</g>\n<g><title>Max CPU 1.23</title>\n<path d=\'M598,127c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,-13,1,-13c0,0,0,13,1,13c0,0,0,0,0,0z\' stroke-width=\'1\' stroke=\'var(--cpu-medium, #A36D7B)\' fill=\'var(--cpu-light, #B78C98)\' />\n</g>\n<g><title>Stage 0, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'80\' x2=\'371\' y2=\'146\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'117\' class=\'texte\'>1</text>\n</g>\n<g><title>Ingress 100%, 735B, Rows 100%, 2, Width 367B</title>\n<use href=\'#icon_ingress\' transform=\'translate(395 130) scale(0.9 0.9)\' fill=\'var(--ingress-medium, #466364)\'/>\n  <rect x=\'413\' y=\'130\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--ingress-light, #5A8183)\'/>  <polygon points=\'413,130 503,130 593,130 593,144 413,144\' stroke=\'none\' fill=\'var(--ingress-medium, #466364)\'/>\n<rect x=\'413\' y=\'133\' width=\'22\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'141\'>735B</text>\n</g>\n<g><title>Ingress, Duration: 0.00 (0.01 | 0.01 | 0.01 - 0.01 | 0.01 | 0.01)</title><rect x=\'609\' y=\'130\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n</g>\n</g>\n<g class=\'selectable\'><title>Result: Sink</title>\n<rect x=\'0\' y=\'3\' width=\'298\' height=\'24\' class=\'background\'/>\n<text x=\'0\' y=\'11\' class=\'texts\'>Sink</text>\n</g>\n<g class=\'selectable\'><title>Connection: Map Blocks: True</title>\n  <path d=\'M16,94l-16,0l0,-14l8,-4l8,4z\' class=\'conn blocks\' />\n<text x=\'8\' y=\'90\' class=\'conn\'>Ma</text>\n<g><title>Input 100%, 34B, Rows 100%, 2, Width 17B</title>\n<rect x=\'395\' y=\'61\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_input\' transform=\'translate(395 61) scale(0.0325 0.0325)\' fill=\'var(--input-light, #7CA3A5)\'/>\n<text x=\'403\' y=\'72\' class=\'textm\'>0</text>\n  <rect x=\'413\' y=\'61\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--input-light, #7CA3A5)\'/>  <polygon points=\'413,61 503,61 593,61 593,75 413,75\' stroke=\'none\' fill=\'var(--input-medium, #5A8183)\'/>\n<rect x=\'413\' y=\'64\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'72\'>34B</text>\n</g>\n<g><title>Input, Duration: 0.00 (0.01 | 0.01 | 0.01 - 0.01 | 0.01 | 0.01)</title><rect x=\'598\' y=\'61\' width=\'682\' height=\'14\' class=\'background\'/>\n<rect x=\'609\' y=\'61\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--input-medium, #5A8183)\'/>\n</g>\n<g><title>Output 100%, 34B, Rows 100%, 2</title>\n<rect x=\'395\' y=\'82\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_output\' transform=\'translate(395 82) scale(0.0325 0.0325)\' fill=\'var(--output-light, #6F93C3)\'/>\n<text x=\'403\' y=\'93\' class=\'textm\'>1</text>\n  <rect x=\'413\' y=\'82\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'413,82 503,82 593,82 593,96 413,96\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'413\' y=\'85\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'93\'>34B</text>\n</g>\n<g><title>Output, Duration: 0.00 (0.01 | 0.01 | 0.01 - 0.01 | 0.01 | 0.01)</title><rect x=\'598\' y=\'82\' width=\'682\' height=\'14\' class=\'background\'/>\n<rect x=\'609\' y=\'82\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-medium, #5781B9)\'/>\n</g>\n</g>\n\n<line x1=\'600\' y1=\'0\' x2=\'600\' y2=\'146\' stroke-width=\'1\' stroke=\'var(--stage-grid, #B2B2B2)\' stroke-dasharray=\'1,2\'/>\n<text x=\'602\' y=\'11\' class=\'texts\'>0:00</text>\n<text x=\'303\' y=\'11\' class=\'texts\'>Operators</text>\n<text x=\'397\' y=\'11\' class=\'texts\'>Stages</text>\n<text x=\'390\' y=\'11\' class=\'texte\'>Tasks</text>\n<text x=\'390\' y=\'22\' class=\'texte\'>2</text>\n<g><title>Ingress 735B, Rows 2, Width 367B, Avg 735B/s</title>\n  <rect x=\'395\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'397\' y=\'22\'>735B</text>\n</g>\n<g><title>CPU Usage 1ms, Avg 0.00 CPU/s</title>\n  <rect x=\'462\' y=\'14\' width=\'66\' height=\'10\' stroke-width=\'0\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'464\' y=\'22\'>1ms</text>\n</g>\n<g><title>Memory 202.00MB</title>\n  <rect x=\'530\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'532\' y=\'22\'>202.00MB</text>\n</g>\n<g><title>Duration: 1.00, Total 1.00</title>\n  <rect x=\'1215\' y=\'3\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--stage-grid, #B2B2B2)\'/>\n  <text text-anchor=\'end\' font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-inv, #FFFFFF)\' x=\'1278\' y=\'11\'>1.00</text>\n</g>\n<g><title>Max CPU 1.30</title>\n<path d=\'M598,26c0,0,0,-6,0,-6c0,0,0,6,0,6c0,0,0,-13,0,-13c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--cpu-medium, #A36D7B)\' fill=\'var(--cpu-light, #B78C98)\' />\n</g>\n\n</svg>\n"
  }
}

2025-11-10 10:15:17,978 - DEBUG - root - describe_query: Result: ... (repeated, see above) ...
2025-11-10 10:15:17,981 - DEBUG - root - create_query_impl: Request: content {
  type: ANALYTICS
  name: "simple"
  acl {
    visibility: PRIVATE
  }
  limits {
    execution_timeout {
    }
  }
  text: "\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/*` with (format=csv_with_names, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
  syntax: YQL_V1
}
execute_mode: RUN
idempotency_key: "07a96c05-df9e-4709-8538-ad15c0896608"

2025-11-10 10:15:18,008 - DEBUG - root - create_query_impl: Result: query_id: "ptqudsokoi71k4ubclim"

2025-11-10 10:15:18,014 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokoi71k4ubclim"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769717
        nanos: 983549000
      }
      modified_at {
        seconds: 1762769717
        nanos: 983549000
      }
      revision: 1
    }
    execute_mode: RUN
    status: STARTING
    last_job_query_revision: 1
    last_job_id: "ptjudsokoi71jvf7diq8-ptqudsokoi71k4ubclim"
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769717
      nanos: 983549000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/*` with (format=csv_with_names, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
    syntax: YQL_V1
  }
}

2025-11-10 10:15:18,522 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokoi71k4ubclim"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769717
        nanos: 983549000
      }
      modified_at {
        seconds: 1762769717
        nanos: 983549000
      }
      revision: 1
    }
    started_at {
      seconds: 1762769718
      nanos: 186000000
    }
    execute_mode: RUN
    status: COMPLETING
    last_job_query_revision: 1
    last_job_id: "ptjudsokoi71jvf7diq8-ptqudsokoi71k4ubclim"
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769717
      nanos: 983549000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/*` with (format=csv_with_names, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
    syntax: YQL_V1
  }
  plan {
    json: "{\"Plan\":{\"Plans\":[{\"PlanNodeId\":5,\"Plans\":[{\"PlanNodeId\":4,\"Plans\":[{\"PlanNodeId\":3,\"Plans\":[{\"PlanNodeId\":2,\"Plans\":[{\"PlanNodeId\":1,\"Operators\":[{\"E-Size\":\"0\",\"Format\":\"csv_with_names\",\"Name\":\"h3665268702917336644_test_convertsbucket.parquet_2_csv_with_names_v2/* \",\"Inputs\":[],\"Path\":\"parquet_2_csv_with_names_v2/* \",\"E-Rows\":\"0\",\"ExternalDataSource\":\"h3665268702917336644_test_convertsbucket\",\"ReadColumns\":[\"bar\",\"foo\"],\"SourceType\":\"s3\",\"E-Cost\":\"0\"}],\"Node Type\":\"Source\"}],\"Node Type\":\"Stage\"}],\"Node Type\":\"UnionAll\",\"PlanNodeType\":\"Connection\"}],\"Node Type\":\"Collect\"}],\"Node Type\":\"ResultSet\",\"PlanNodeType\":\"ResultSet\"}],\"Node Type\":\"Query\",\"PlanNodeType\":\"Query\"},\"meta\":{\"version\":\"0.2\",\"type\":\"query\"}}"
  }
  statistics {
    json: "{\"ResultSet\":{\"Tasks\":{\"sum\":2,\"count\":2,\"avg\":1,\"max\":1,\"min\":1},\"CpuTimeUs\":{\"sum\":\"2ms\",\"count\":2,\"avg\":\"1ms\",\"max\":\"1ms\",\"min\":\"321us\"},\"IngressBytes\":{\"sum\":32,\"count\":1,\"avg\":32,\"max\":32,\"min\":32},\"IngressRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"InputBytes\":{\"sum\":17,\"count\":1,\"avg\":17,\"max\":17,\"min\":17},\"InputRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"OutputBytes\":{\"sum\":34,\"count\":2,\"avg\":17,\"max\":17,\"min\":17},\"OutputRows\":{\"sum\":4,\"count\":2,\"avg\":2,\"max\":2,\"min\":2},\"ResultBytes\":{\"sum\":17,\"count\":1,\"avg\":17,\"max\":17,\"min\":17},\"ResultRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"MaxMemoryUsage\":{\"sum\":211812352,\"count\":2,\"avg\":105906176,\"max\":210763776,\"min\":1048576}}}"
  }
  ast {
    data: "(\n(let $1 (DataSource \'\"s3\" \'\"/local/h3665268702917336644_test_convertsbucket\"))\n(let $2 \'\"Paths {\\n  Name: \\\"parquet_2_csv_with_names_v2\\\"\\n  Children {\\n    Name: \\\"ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv\\\"\\n    Size: 32\\n    Read: true\\n  }\\n  IsDirectory: true\\n}\\n\")\n(let $3 (Bool \'\"true\"))\n(let $4 (StructType \'(\'\"bar\" (DataType \'String)) \'(\'\"foo\" (DataType \'Int32))))\n(let $5 (S3ParseSettings world \'(\'((String $2) $3 (AsStruct))) (SecureParam \'\"cluster:default_/local/h3665268702917336644_test_convertsbucket\") \'\"\" \'\"parquet_2_csv_with_names_v2/* \" \'\"csv_with_names\" $4 (lambda \'($10) $3) \'()))\n(let $6 (DqPhyStage \'((DqSource $1 $5)) (lambda \'($11) (block \'(\n  (let $12 (DqSourceWideWrap $11 $1 $4 \'(\'(\'format \'\"csv_with_names\"))))\n  (return (FromFlow (NarrowMap $12 (lambda \'($13 $14) (AsStruct \'(\'\"bar\" $13) \'(\'\"foo\" $14))))))\n))) \'(\'(\'\"_logical_id\" \'378) \'(\'\"_id\" \'\"d32c90c3-c4f0b43b-865bd9e8-3a4d68f0\"))))\n(let $7 (DqCnUnionAll (TDqOutput $6 \'\"0\")))\n(let $8 (DqPhyStage \'($7) (lambda \'($15) $15) \'(\'(\'\"_logical_id\" \'434) \'(\'\"_id\" \'\"f3310ace-c7869948-ca8f7210-652d0de3\"))))\n(let $9 (DqCnResult (TDqOutput $8 \'\"0\") \'(\'\"foo\" \'\"bar\")))\n(return (KqpPhysicalQuery \'((KqpPhysicalTx \'($6 $8) \'($9) \'() \'(\'(\'\"type\" \'\"generic\")))) \'((KqpTxResultBinding (ListType $4) \'\"0\" \'\"0\")) \'(\'(\'\"type\" \'\"script\"))))\n)\n"
  }
  timeline {
    svg: "<svg width=\'1280\' height=\'162\' xmlns=\'http://www.w3.org/2000/svg\'>\n<clipPath id=\'clipTextPath\'><rect x=\'0\' y=\'0\' width=\'298\' height=\'162\'/></clipPath>\n\n<defs>\n  <g id=\'icon_memory\'>\n    <path fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M5 3C3.89543 3 3 3.89543 3 5H1V7H3V9H1V11H3V13H1V15H3V17H1V19H3C3 20.1046 3.89543 21 5 21H9C10.1046 21 11 20.1046 11 19H13C13 20.1046 13.8954 21 15 21H19C20.1046 21 21 20.1046 21 19H23V17H21V15H23V13H21V11H23V9H21V7H23V5H21C21 3.89543 20.1046 3 19 3H15C13.8954 3 13 3.89543 13 5H11C11 3.89543 10.1046 3 9 3H5ZM11 7V9H13V7H11ZM11 11V13H13V11H11ZM11 15V17H13V15H11ZM5 5H9V19H5V5ZM15 5H19V19H15V5Z\' />\n  </g>\n\n  <g id=\'icon_cpu\'>\n    <path d=\'M13.9802 7.75H10.0102C8.76023 7.75 7.74023 8.76 7.74023 10.02V13.99C7.74023 15.24 8.75023 16.26 10.0102 16.26H13.9802C15.2302 16.26 16.2502 15.25 16.2502 13.99V10.02C16.2502 8.76 15.2402 7.75 13.9802 7.75ZM13.5002 12.98L12.6102 14.53C12.4802 14.76 12.2402 14.88 12.0002 14.88C11.8802 14.88 11.7502 14.85 11.6502 14.79C11.3102 14.6 11.1902 14.17 11.3902 13.83L12.0302 12.72H11.4702C11.0202 12.72 10.6502 12.52 10.4502 12.18C10.2502 11.84 10.2702 11.42 10.5002 11.03L11.3902 9.48C11.5902 9.14 12.0202 9.03 12.3502 9.22C12.6902 9.41 12.8102 9.84 12.6102 10.18L11.9702 11.29H12.5302C12.9802 11.29 13.3502 11.49 13.5502 11.83C13.7502 12.17 13.7302 12.59 13.5002 12.98Z\' />\n    <path d=\'M21.25 12.75C21.67 12.75 22 12.41 22 12C22 11.58 21.67 11.25 21.25 11.25H20V9.05H21.25C21.67 9.05 22 8.72 22 8.3C22 7.89 21.67 7.55 21.25 7.55H19.77C19.29 5.96 18.04 4.71 16.45 4.23V2.75C16.45 2.34 16.11 2 15.7 2C15.29 2 14.95 2.34 14.95 2.75V4H12.75V2.75C12.75 2.34 12.41 2 12 2C11.59 2 11.25 2.34 11.25 2.75V4H9.06V2.75C9.06 2.34 8.72 2 8.31 2C7.89 2 7.56 2.34 7.56 2.75V4.23C5.96 4.71 4.71 5.96 4.23 7.55H2.75C2.34 7.55 2 7.89 2 8.3C2 8.72 2.34 9.05 2.75 9.05H4V11.25H2.75C2.34 11.25 2 11.58 2 12C2 12.41 2.34 12.75 2.75 12.75H4V14.95H2.75C2.34 14.95 2 15.28 2 15.7C2 16.11 2.34 16.45 2.75 16.45H4.23C4.7 18.04 5.96 19.29 7.56 19.77V21.25C7.56 21.66 7.89 22 8.31 22C8.72 22 9.06 21.66 9.06 21.25V20H11.26V21.25C11.26 21.66 11.59 22 12.01 22C12.42 22 12.76 21.66 12.76 21.25V20H14.95V21.25C14.95 21.66 15.29 22 15.7 22C16.11 22 16.45 21.66 16.45 21.25V19.77C18.04 19.29 19.29 18.04 19.77 16.45H21.25C21.67 16.45 22 16.11 22 15.7C22 15.28 21.67 14.95 21.25 14.95H20V12.75H21.25ZM17.26 14.26C17.26 15.91 15.91 17.26 14.26 17.26H9.74C8.09 17.26 6.74 15.91 6.74 14.26V9.74C6.74 8.09 8.09 6.74 9.74 6.74H14.26C15.91 6.74 17.26 8.09 17.26 9.74V14.26Z\' />\n </g>\n\n  <g id=\'icon_ingress\'>\n    <path d=\'M3 6L6 6L6 12L10 12L10 6L13 6V5L8 0L3 5L3 6Z\' />\n    <path d=\'M2 16L14 16V14L2 14V16Z\' />\n  </g>\n\n  <g id=\'icon_egress\'>\n    <path d=\'M13 9H10V16H6V9L3 9V8L8 3L13 8V9Z\' />\n    <path d=\'M14 2H2V0H14V2Z\' />\n  </g>\n\n  <g id=\'icon_input\'>\n    <path d=\"M456.49,264.459L295.206,103.183l56.572-56.572c1.084-1.08,1.456-2.696,0.948-4.14c-0.504-1.448-1.792-2.48-3.316-2.656\n        L4.654,0.027c-1.22-0.144-2.428,0.284-3.292,1.148c-0.864,0.86-1.284,2.068-1.144,3.28L40.01,349.208\n        c0.176,1.52,1.208,2.812,2.656,3.316c1.448,0.508,3.068,0.14,4.144-0.948l56.18-56.18L264.274,456.68\n        c0.748,0.748,1.764,1.172,2.828,1.172c1.06,0,2.076-0.424,2.828-1.172l186.556-186.568\n        C458.05,268.555,458.05,266.027,456.49,264.459z\"/>\n  </g>\n\n  <g id=\'icon_output\'>\n\t<path d=\"M456.494,1.168c-0.864-0.86-2.064-1.284-3.288-1.14l-344.76,39.78c-1.524,0.18-2.812,1.216-3.32,2.656\n        c-0.504,1.456-0.132,3.068,0.948,4.148l56.572,56.576L1.362,264.464c-1.564,1.564-1.564,4.092,0,5.656l186.56,186.556\n        c0.78,0.784,1.804,1.172,2.828,1.172c1.024,0,2.048-0.388,2.828-1.172l161.28-161.28l56.18,56.18\n        c1.084,1.088,2.7,1.452,4.144,0.952c1.448-0.504,2.48-1.796,2.656-3.32L457.63,4.456C457.774,3.248,457.354,2.036,456.494,1.168z\"/>\n  </g>\n\n</defs>\n<style type=\'text/css\'>\n  rect.stage { stroke-width:0; fill:var(--stage-main, #F2F2F2); }\n  rect.clone { stroke-width:0; fill:var(--stage-clone, #D9D9D9); }\n  rect.blocks { stroke-width:0; fill:var(--block-medium, #EACB68); }\n  .texts { text-anchor:start; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .textm { text-anchor:middle; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .texte { text-anchor:end; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  circle.stage { stroke:var(--stage-main, #F2F2F2); stroke-width:1; fill:var(--stage-clone, #D9D9D9); }\n  line.opdiv { stroke-width:1; stroke:var(--stage-grid, #B2B2B2); stroke-dasharray:1,2; }\n  text.clipped { clip-path:url(#clipTextPath); }\n  polygon.conn { stroke-width:0; fill:var(--conn-fill, #BFBFBF); }\n  path.conn { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--conn-fill, #BFBFBF); }\n  path.conn.blocks { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--block-medium, #EACB68); }\n  text.conn { text-anchor:middle; font-family:Verdana; font-size:6px; fill:var(--conn-text, #393939); }\n  rect.background { stroke-width:0; fill:#33FFFF; opacity:0; }\n  g.selected circle.stage { fill:#33FFFF; }\n  g.selected polygon.conn { fill:#33FFFF; }\n  g.selected path.conn { stroke:#33FFFF; fill:#33FFFF; }\n  g.selected rect.stage { fill:#33FFFF; }\n  g.selected rect.clone { fill:#33FFFF; }\n  g.selected rect.background { opacity:1; }\n  g.selected path.blocks { stroke:#33FFFF; }\n</style>\n\n<script type=\"text/ecmascript\">\n<![CDATA[\n    var selectedNode;\n\n    function find_selectable(node) {\n\t\tvar parent = node.parentElement;\n\t\tif (!parent) return;\n\t\tif (parent.classList.contains(\"selectable\")) return parent;\n\t\treturn find_selectable(parent);\n\t}\n\n    window.onload = function() {\n        selectedNode = document.querySelector(\".selected\");\n    }\n\n    window.addEventListener(\"click\", function(e) {\n\t\tvar target = find_selectable(e.target);\n        if (target) {\n            if (selectedNode) {\n                selectedNode.classList.remove(\"selected\");\n            }\n            if (target == selectedNode) {\n                selectedNode = null;\n            } else {\n                selectedNode = target;\n                selectedNode.classList.add(\"selected\");\n            }\n        }\n\t}, false)\n]]>\n</script>\n<g class=\'selectable\'><title>Stage 1</title>\n<rect x=\'0\' y=\'27\' width=\'298\' height=\'66\' class=\'stage\'/>\n<rect x=\'301\' y=\'27\' width=\'64\' height=\'66\' class=\'stage\'/>\n<rect x=\'395\' y=\'27\' width=\'200\' height=\'66\' class=\'stage\'/>\n<rect x=\'368\' y=\'27\' width=\'24\' height=\'66\' class=\'stage\'/>\n<rect x=\'598\' y=\'27\' width=\'682\' height=\'66\' class=\'stage\'/>\n<g><title>Collect: </title><text x=\'18\' y=\'38\' class=\'texts clipped\'>Collect</text>\n<text x=\'26\' y=\'48\' class=\'texts clipped\'></text>\n<g><title>Output Rows 33%, 2</title>\n  <rect x=\'303\' y=\'33\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,33 333,33 363,33 363,47 303,47\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'36\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'44\'>2</text>\n</g>\n</g>\n<circle cx=\'8\' cy=\'60\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'64\' class=\'textm\'>1</text>\n<g><title>Memory 0%, 1.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 45) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'45\' width=\'1\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,45 413,45 414,45 414,59 413,59\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'48\' width=\'33\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'56\'>1.00MB</text>\n</g>\n<g><title>Max MEM 1.00MB</title>\n<path d=\'M603,58c0,0,0,-13,0,-13c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--mem-medium, #7E4E5B)\' fill=\'var(--mem-medium, #7E4E5B)\' />\n</g>\n<g><title>CPU Usage 84%, 1ms</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 61) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'61\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,61 503,61 593,61 593,75 413,75\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'64\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'72\'>1ms</text>\n</g>\n<g><title>Stage 1, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'27\' x2=\'371\' y2=\'93\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'64\' class=\'texte\'>1</text>\n</g>\n</g>\n<g class=\'selectable\'><title>Stage 0</title>\n<rect x=\'0\' y=\'96\' width=\'298\' height=\'66\' class=\'stage\'/>\n<rect x=\'301\' y=\'96\' width=\'64\' height=\'66\' class=\'stage\'/>\n<rect x=\'395\' y=\'96\' width=\'200\' height=\'66\' class=\'stage\'/>\n<rect x=\'368\' y=\'96\' width=\'24\' height=\'66\' class=\'stage\'/>\n<rect x=\'598\' y=\'96\' width=\'682\' height=\'66\' class=\'stage\'/>\n<g><title>Stage: </title><text x=\'18\' y=\'107\' class=\'texts clipped\'>Stage</text>\n<text x=\'26\' y=\'117\' class=\'texts clipped\'></text>\n<g><title>Output Rows 33%, 2</title>\n  <rect x=\'303\' y=\'102\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,102 333,102 363,102 363,116 303,116\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'105\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'113\'>2</text>\n</g>\n</g>\n<line x1=\'18\' y1=\'119\' x2=\'298\' y2=\'119\' class=\'opdiv\' />\n<g><title>Source s3: h3665268702917336644_test_convertsbucket.parquet_2_csv_with_names_v2/* (bar, foo)</title><text x=\'18\' y=\'127\' class=\'texts clipped\'>Source s3</text>\n<text x=\'26\' y=\'137\' class=\'texts clipped\'>h3665268702917336644_test_convertsbucket.parquet_2_csv_with_names_v2/* (bar, foo)</text>\n<g><title>Output Rows 33%, 2, Est: 0 Rows: 0 Size: 0B</title>\n  <rect x=\'303\' y=\'122\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,122 333,122 363,122 363,136 303,136\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'125\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'133\'>2</text>\n</g>\n</g>\n<circle cx=\'8\' cy=\'129\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'133\' class=\'textm\'>0</text>\n<g><title>Memory 99%, 201.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 114) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'114\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,114 503,114 593,114 593,128 413,128\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'117\' width=\'44\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'125\'>201.00MB</text>\n</g>\n<g><title>Max MEM 201.00MB</title>\n<path d=\'M598,127c0,0,0,-13,0,-13c1,0,3,0,5,0c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--mem-medium, #7E4E5B)\' fill=\'var(--mem-medium, #7E4E5B)\' />\n</g>\n<g><title>CPU Usage 15%, 321us</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 130) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'130\' width=\'33\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,130 429,130 446,130 446,144 413,144\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'133\' width=\'28\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'141\'>321us</text>\n</g>\n<g><title>Max CPU 0.74</title>\n<path d=\'M598,143c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,-13,0,-13c0,0,0,13,1,13c0,0,0,0,0,0z\' stroke-width=\'1\' stroke=\'var(--cpu-medium, #A36D7B)\' fill=\'var(--cpu-light, #B78C98)\' />\n</g>\n<g><title>Stage 0, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'96\' x2=\'371\' y2=\'162\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'133\' class=\'texte\'>1</text>\n</g>\n<g><title>Ingress 100%, 32B, Rows 100%, 2, Width 16B</title>\n<use href=\'#icon_ingress\' transform=\'translate(395 146) scale(0.9 0.9)\' fill=\'var(--ingress-medium, #466364)\'/>\n  <rect x=\'413\' y=\'146\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--ingress-light, #5A8183)\'/>  <polygon points=\'413,146 503,146 593,146 593,160 413,160\' stroke=\'none\' fill=\'var(--ingress-medium, #466364)\'/>\n<rect x=\'413\' y=\'149\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'157\'>32B</text>\n</g>\n<g><title>Ingress, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'603\' y=\'146\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n</g>\n</g>\n<g class=\'selectable\'><title>Result: ResultSet</title>\n<rect x=\'0\' y=\'3\' width=\'298\' height=\'24\' class=\'background\'/>\n<text x=\'0\' y=\'11\' class=\'texts\'>ResultSet</text>\n<g><title>Output 50%, 17B, Rows 50%, 2</title>\n<rect x=\'395\' y=\'29\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_output\' transform=\'translate(395 29) scale(0.0325 0.0325)\' fill=\'var(--output-light, #6F93C3)\'/>\n  <rect x=\'413\' y=\'29\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'413,29 503,29 593,29 593,43 413,43\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'413\' y=\'32\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'40\'>17B</text>\n</g>\n<g><title>Output, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'603\' y=\'29\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-medium, #5781B9)\'/>\n</g>\n</g>\n<g class=\'selectable\'><title>Connection: UnionAll</title>\n  <path d=\'M16,110l-16,0l0,-14l8,-4l8,4z\' class=\'conn\' />\n<text x=\'8\' y=\'106\' class=\'conn\'>U</text>\n<g><title>Input 100%, 17B, Rows 100%, 2, Width 8B</title>\n<rect x=\'395\' y=\'77\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_input\' transform=\'translate(395 77) scale(0.0325 0.0325)\' fill=\'var(--input-light, #7CA3A5)\'/>\n<text x=\'403\' y=\'88\' class=\'textm\'>0</text>\n  <rect x=\'413\' y=\'77\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--input-light, #7CA3A5)\'/>  <polygon points=\'413,77 503,77 593,77 593,91 413,91\' stroke=\'none\' fill=\'var(--input-medium, #5A8183)\'/>\n<rect x=\'413\' y=\'80\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'88\'>17B</text>\n</g>\n<g><title>Input, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'598\' y=\'77\' width=\'682\' height=\'14\' class=\'background\'/>\n<rect x=\'603\' y=\'77\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--input-medium, #5A8183)\'/>\n</g>\n<g><title>Output 50%, 17B, Rows 50%, 2</title>\n<rect x=\'395\' y=\'98\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_output\' transform=\'translate(395 98) scale(0.0325 0.0325)\' fill=\'var(--output-light, #6F93C3)\'/>\n<text x=\'403\' y=\'109\' class=\'textm\'>1</text>\n  <rect x=\'413\' y=\'98\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'413,98 503,98 593,98 593,112 413,112\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'413\' y=\'101\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'109\'>17B</text>\n</g>\n<g><title>Output, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'598\' y=\'98\' width=\'682\' height=\'14\' class=\'background\'/>\n<rect x=\'603\' y=\'98\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-medium, #5781B9)\'/>\n</g>\n</g>\n\n<line x1=\'600\' y1=\'0\' x2=\'600\' y2=\'162\' stroke-width=\'1\' stroke=\'var(--stage-grid, #B2B2B2)\' stroke-dasharray=\'1,2\'/>\n<text x=\'602\' y=\'11\' class=\'texts\'>0:00</text>\n<text x=\'303\' y=\'11\' class=\'texts\'>Operators</text>\n<text x=\'397\' y=\'11\' class=\'texts\'>Stages</text>\n<text x=\'390\' y=\'11\' class=\'texte\'>Tasks</text>\n<text x=\'390\' y=\'22\' class=\'texte\'>2</text>\n<g><title>Ingress 32B, Rows 2, Width 16B, Avg 32B/s</title>\n  <rect x=\'395\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'397\' y=\'22\'>32B</text>\n</g>\n<g><title>CPU Usage 2ms, Avg 0.00 CPU/s</title>\n  <rect x=\'462\' y=\'14\' width=\'66\' height=\'10\' stroke-width=\'0\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'464\' y=\'22\'>2ms</text>\n</g>\n<g><title>Memory 202.00MB</title>\n  <rect x=\'530\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'532\' y=\'22\'>202.00MB</text>\n</g>\n<g><title>Duration: 1.00, Total 1.00</title>\n  <rect x=\'1215\' y=\'3\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--stage-grid, #B2B2B2)\'/>\n  <text text-anchor=\'end\' font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-inv, #FFFFFF)\' x=\'1278\' y=\'11\'>1.00</text>\n</g>\n<g><title>Max CPU 6.73</title>\n<path d=\'M598,26c0,0,0,-13,0,-13c0,0,0,13,0,13c0,0,0,0,0,0z\' stroke-width=\'1\' stroke=\'var(--cpu-medium, #A36D7B)\' fill=\'var(--cpu-light, #B78C98)\' />\n</g>\n\n</svg>\n"
  }
}

2025-11-10 10:15:19,039 - DEBUG - root - describe_query: Result: query {
  meta {
    common {
      id: "ptqudsokoi71k4ubclim"
      created_by: "root@builtin"
      modified_by: "root@builtin"
      created_at {
        seconds: 1762769717
        nanos: 983549000
      }
      modified_at {
        seconds: 1762769717
        nanos: 983549000
      }
      revision: 1
    }
    started_at {
      seconds: 1762769718
      nanos: 186000000
    }
    finished_at {
      seconds: 1762769718
      nanos: 575000000
    }
    execute_mode: RUN
    status: COMPLETED
    last_job_query_revision: 1
    last_job_id: "ptjudsokoi71jvf7diq8-ptqudsokoi71k4ubclim"
    result_expire_at {
      seconds: 1762856118
      nanos: 173107000
    }
    started_by: "root@builtin"
    submitted_at {
      seconds: 1762769717
      nanos: 983549000
    }
  }
  content {
    type: ANALYTICS
    name: "simple"
    acl {
      visibility: PRIVATE
    }
    limits {
      execution_timeout {
      }
    }
    text: "\n            select foo, bar from `h3665268702917336644_test_convertsbucket`.`parquet_2_csv_with_names_v2/*` with (format=csv_with_names, schema(\n                foo Int NOT NULL,\n                bar String NOT NULL\n            ))\n            "
    syntax: YQL_V1
  }
  plan {
    json: "{\"Plan\":{\"Plans\":[{\"PlanNodeId\":5,\"Plans\":[{\"PlanNodeId\":4,\"Plans\":[{\"PlanNodeId\":3,\"Plans\":[{\"PlanNodeId\":2,\"Plans\":[{\"PlanNodeId\":1,\"Operators\":[{\"E-Size\":\"0\",\"Format\":\"csv_with_names\",\"Name\":\"h3665268702917336644_test_convertsbucket.parquet_2_csv_with_names_v2/* \",\"Inputs\":[],\"Path\":\"parquet_2_csv_with_names_v2/* \",\"E-Rows\":\"0\",\"ExternalDataSource\":\"h3665268702917336644_test_convertsbucket\",\"ReadColumns\":[\"bar\",\"foo\"],\"SourceType\":\"s3\",\"E-Cost\":\"0\"}],\"Node Type\":\"Source\"}],\"Node Type\":\"Stage\"}],\"Node Type\":\"UnionAll\",\"PlanNodeType\":\"Connection\"}],\"Node Type\":\"Collect\"}],\"Node Type\":\"ResultSet\",\"PlanNodeType\":\"ResultSet\"}],\"Node Type\":\"Query\",\"PlanNodeType\":\"Query\"},\"meta\":{\"version\":\"0.2\",\"type\":\"query\"}}"
  }
  statistics {
    json: "{\"ResultSet\":{\"Tasks\":{\"sum\":2,\"count\":2,\"avg\":1,\"max\":1,\"min\":1},\"CpuTimeUs\":{\"sum\":\"2ms\",\"count\":2,\"avg\":\"1ms\",\"max\":\"1ms\",\"min\":\"321us\"},\"IngressBytes\":{\"sum\":32,\"count\":1,\"avg\":32,\"max\":32,\"min\":32},\"IngressRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"InputBytes\":{\"sum\":17,\"count\":1,\"avg\":17,\"max\":17,\"min\":17},\"InputRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"OutputBytes\":{\"sum\":34,\"count\":2,\"avg\":17,\"max\":17,\"min\":17},\"OutputRows\":{\"sum\":4,\"count\":2,\"avg\":2,\"max\":2,\"min\":2},\"ResultBytes\":{\"sum\":17,\"count\":1,\"avg\":17,\"max\":17,\"min\":17},\"ResultRows\":{\"sum\":2,\"count\":1,\"avg\":2,\"max\":2,\"min\":2},\"MaxMemoryUsage\":{\"sum\":211812352,\"count\":2,\"avg\":105906176,\"max\":210763776,\"min\":1048576}}}"
  }
  result_set_meta {
    column {
      name: "foo"
      type {
        type_id: INT32
      }
    }
    column {
      name: "bar"
      type {
        type_id: STRING
      }
    }
    rows_count: 2
  }
  ast {
    data: "(\n(let $1 (DataSource \'\"s3\" \'\"/local/h3665268702917336644_test_convertsbucket\"))\n(let $2 \'\"Paths {\\n  Name: \\\"parquet_2_csv_with_names_v2\\\"\\n  Children {\\n    Name: \\\"ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv\\\"\\n    Size: 32\\n    Read: true\\n  }\\n  IsDirectory: true\\n}\\n\")\n(let $3 (Bool \'\"true\"))\n(let $4 (StructType \'(\'\"bar\" (DataType \'String)) \'(\'\"foo\" (DataType \'Int32))))\n(let $5 (S3ParseSettings world \'(\'((String $2) $3 (AsStruct))) (SecureParam \'\"cluster:default_/local/h3665268702917336644_test_convertsbucket\") \'\"\" \'\"parquet_2_csv_with_names_v2/* \" \'\"csv_with_names\" $4 (lambda \'($10) $3) \'()))\n(let $6 (DqPhyStage \'((DqSource $1 $5)) (lambda \'($11) (block \'(\n  (let $12 (DqSourceWideWrap $11 $1 $4 \'(\'(\'format \'\"csv_with_names\"))))\n  (return (FromFlow (NarrowMap $12 (lambda \'($13 $14) (AsStruct \'(\'\"bar\" $13) \'(\'\"foo\" $14))))))\n))) \'(\'(\'\"_logical_id\" \'378) \'(\'\"_id\" \'\"d32c90c3-c4f0b43b-865bd9e8-3a4d68f0\"))))\n(let $7 (DqCnUnionAll (TDqOutput $6 \'\"0\")))\n(let $8 (DqPhyStage \'($7) (lambda \'($15) $15) \'(\'(\'\"_logical_id\" \'434) \'(\'\"_id\" \'\"f3310ace-c7869948-ca8f7210-652d0de3\"))))\n(let $9 (DqCnResult (TDqOutput $8 \'\"0\") \'(\'\"foo\" \'\"bar\")))\n(return (KqpPhysicalQuery \'((KqpPhysicalTx \'($6 $8) \'($9) \'() \'(\'(\'\"type\" \'\"generic\")))) \'((KqpTxResultBinding (ListType $4) \'\"0\" \'\"0\")) \'(\'(\'\"type\" \'\"script\"))))\n)\n"
  }
  timeline {
    svg: "<svg width=\'1280\' height=\'162\' xmlns=\'http://www.w3.org/2000/svg\'>\n<clipPath id=\'clipTextPath\'><rect x=\'0\' y=\'0\' width=\'298\' height=\'162\'/></clipPath>\n\n<defs>\n  <g id=\'icon_memory\'>\n    <path fill-rule=\'evenodd\' clip-rule=\'evenodd\' d=\'M5 3C3.89543 3 3 3.89543 3 5H1V7H3V9H1V11H3V13H1V15H3V17H1V19H3C3 20.1046 3.89543 21 5 21H9C10.1046 21 11 20.1046 11 19H13C13 20.1046 13.8954 21 15 21H19C20.1046 21 21 20.1046 21 19H23V17H21V15H23V13H21V11H23V9H21V7H23V5H21C21 3.89543 20.1046 3 19 3H15C13.8954 3 13 3.89543 13 5H11C11 3.89543 10.1046 3 9 3H5ZM11 7V9H13V7H11ZM11 11V13H13V11H11ZM11 15V17H13V15H11ZM5 5H9V19H5V5ZM15 5H19V19H15V5Z\' />\n  </g>\n\n  <g id=\'icon_cpu\'>\n    <path d=\'M13.9802 7.75H10.0102C8.76023 7.75 7.74023 8.76 7.74023 10.02V13.99C7.74023 15.24 8.75023 16.26 10.0102 16.26H13.9802C15.2302 16.26 16.2502 15.25 16.2502 13.99V10.02C16.2502 8.76 15.2402 7.75 13.9802 7.75ZM13.5002 12.98L12.6102 14.53C12.4802 14.76 12.2402 14.88 12.0002 14.88C11.8802 14.88 11.7502 14.85 11.6502 14.79C11.3102 14.6 11.1902 14.17 11.3902 13.83L12.0302 12.72H11.4702C11.0202 12.72 10.6502 12.52 10.4502 12.18C10.2502 11.84 10.2702 11.42 10.5002 11.03L11.3902 9.48C11.5902 9.14 12.0202 9.03 12.3502 9.22C12.6902 9.41 12.8102 9.84 12.6102 10.18L11.9702 11.29H12.5302C12.9802 11.29 13.3502 11.49 13.5502 11.83C13.7502 12.17 13.7302 12.59 13.5002 12.98Z\' />\n    <path d=\'M21.25 12.75C21.67 12.75 22 12.41 22 12C22 11.58 21.67 11.25 21.25 11.25H20V9.05H21.25C21.67 9.05 22 8.72 22 8.3C22 7.89 21.67 7.55 21.25 7.55H19.77C19.29 5.96 18.04 4.71 16.45 4.23V2.75C16.45 2.34 16.11 2 15.7 2C15.29 2 14.95 2.34 14.95 2.75V4H12.75V2.75C12.75 2.34 12.41 2 12 2C11.59 2 11.25 2.34 11.25 2.75V4H9.06V2.75C9.06 2.34 8.72 2 8.31 2C7.89 2 7.56 2.34 7.56 2.75V4.23C5.96 4.71 4.71 5.96 4.23 7.55H2.75C2.34 7.55 2 7.89 2 8.3C2 8.72 2.34 9.05 2.75 9.05H4V11.25H2.75C2.34 11.25 2 11.58 2 12C2 12.41 2.34 12.75 2.75 12.75H4V14.95H2.75C2.34 14.95 2 15.28 2 15.7C2 16.11 2.34 16.45 2.75 16.45H4.23C4.7 18.04 5.96 19.29 7.56 19.77V21.25C7.56 21.66 7.89 22 8.31 22C8.72 22 9.06 21.66 9.06 21.25V20H11.26V21.25C11.26 21.66 11.59 22 12.01 22C12.42 22 12.76 21.66 12.76 21.25V20H14.95V21.25C14.95 21.66 15.29 22 15.7 22C16.11 22 16.45 21.66 16.45 21.25V19.77C18.04 19.29 19.29 18.04 19.77 16.45H21.25C21.67 16.45 22 16.11 22 15.7C22 15.28 21.67 14.95 21.25 14.95H20V12.75H21.25ZM17.26 14.26C17.26 15.91 15.91 17.26 14.26 17.26H9.74C8.09 17.26 6.74 15.91 6.74 14.26V9.74C6.74 8.09 8.09 6.74 9.74 6.74H14.26C15.91 6.74 17.26 8.09 17.26 9.74V14.26Z\' />\n </g>\n\n  <g id=\'icon_ingress\'>\n    <path d=\'M3 6L6 6L6 12L10 12L10 6L13 6V5L8 0L3 5L3 6Z\' />\n    <path d=\'M2 16L14 16V14L2 14V16Z\' />\n  </g>\n\n  <g id=\'icon_egress\'>\n    <path d=\'M13 9H10V16H6V9L3 9V8L8 3L13 8V9Z\' />\n    <path d=\'M14 2H2V0H14V2Z\' />\n  </g>\n\n  <g id=\'icon_input\'>\n    <path d=\"M456.49,264.459L295.206,103.183l56.572-56.572c1.084-1.08,1.456-2.696,0.948-4.14c-0.504-1.448-1.792-2.48-3.316-2.656\n        L4.654,0.027c-1.22-0.144-2.428,0.284-3.292,1.148c-0.864,0.86-1.284,2.068-1.144,3.28L40.01,349.208\n        c0.176,1.52,1.208,2.812,2.656,3.316c1.448,0.508,3.068,0.14,4.144-0.948l56.18-56.18L264.274,456.68\n        c0.748,0.748,1.764,1.172,2.828,1.172c1.06,0,2.076-0.424,2.828-1.172l186.556-186.568\n        C458.05,268.555,458.05,266.027,456.49,264.459z\"/>\n  </g>\n\n  <g id=\'icon_output\'>\n\t<path d=\"M456.494,1.168c-0.864-0.86-2.064-1.284-3.288-1.14l-344.76,39.78c-1.524,0.18-2.812,1.216-3.32,2.656\n        c-0.504,1.456-0.132,3.068,0.948,4.148l56.572,56.576L1.362,264.464c-1.564,1.564-1.564,4.092,0,5.656l186.56,186.556\n        c0.78,0.784,1.804,1.172,2.828,1.172c1.024,0,2.048-0.388,2.828-1.172l161.28-161.28l56.18,56.18\n        c1.084,1.088,2.7,1.452,4.144,0.952c1.448-0.504,2.48-1.796,2.656-3.32L457.63,4.456C457.774,3.248,457.354,2.036,456.494,1.168z\"/>\n  </g>\n\n</defs>\n<style type=\'text/css\'>\n  rect.stage { stroke-width:0; fill:var(--stage-main, #F2F2F2); }\n  rect.clone { stroke-width:0; fill:var(--stage-clone, #D9D9D9); }\n  rect.blocks { stroke-width:0; fill:var(--block-medium, #EACB68); }\n  .texts { text-anchor:start; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .textm { text-anchor:middle; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  .texte { text-anchor:end; font-family:Verdana; font-size:8px; fill:var(--stage-text, #262626); }\n  circle.stage { stroke:var(--stage-main, #F2F2F2); stroke-width:1; fill:var(--stage-clone, #D9D9D9); }\n  line.opdiv { stroke-width:1; stroke:var(--stage-grid, #B2B2B2); stroke-dasharray:1,2; }\n  text.clipped { clip-path:url(#clipTextPath); }\n  polygon.conn { stroke-width:0; fill:var(--conn-fill, #BFBFBF); }\n  path.conn { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--conn-fill, #BFBFBF); }\n  path.conn.blocks { stroke-width:1; stroke:var(--conn-fill, #BFBFBF); fill:var(--block-medium, #EACB68); }\n  text.conn { text-anchor:middle; font-family:Verdana; font-size:6px; fill:var(--conn-text, #393939); }\n  rect.background { stroke-width:0; fill:#33FFFF; opacity:0; }\n  g.selected circle.stage { fill:#33FFFF; }\n  g.selected polygon.conn { fill:#33FFFF; }\n  g.selected path.conn { stroke:#33FFFF; fill:#33FFFF; }\n  g.selected rect.stage { fill:#33FFFF; }\n  g.selected rect.clone { fill:#33FFFF; }\n  g.selected rect.background { opacity:1; }\n  g.selected path.blocks { stroke:#33FFFF; }\n</style>\n\n<script type=\"text/ecmascript\">\n<![CDATA[\n    var selectedNode;\n\n    function find_selectable(node) {\n\t\tvar parent = node.parentElement;\n\t\tif (!parent) return;\n\t\tif (parent.classList.contains(\"selectable\")) return parent;\n\t\treturn find_selectable(parent);\n\t}\n\n    window.onload = function() {\n        selectedNode = document.querySelector(\".selected\");\n    }\n\n    window.addEventListener(\"click\", function(e) {\n\t\tvar target = find_selectable(e.target);\n        if (target) {\n            if (selectedNode) {\n                selectedNode.classList.remove(\"selected\");\n            }\n            if (target == selectedNode) {\n                selectedNode = null;\n            } else {\n                selectedNode = target;\n                selectedNode.classList.add(\"selected\");\n            }\n        }\n\t}, false)\n]]>\n</script>\n<g class=\'selectable\'><title>Stage 1</title>\n<rect x=\'0\' y=\'27\' width=\'298\' height=\'66\' class=\'stage\'/>\n<rect x=\'301\' y=\'27\' width=\'64\' height=\'66\' class=\'stage\'/>\n<rect x=\'395\' y=\'27\' width=\'200\' height=\'66\' class=\'stage\'/>\n<rect x=\'368\' y=\'27\' width=\'24\' height=\'66\' class=\'stage\'/>\n<rect x=\'598\' y=\'27\' width=\'682\' height=\'66\' class=\'stage\'/>\n<g><title>Collect: </title><text x=\'18\' y=\'38\' class=\'texts clipped\'>Collect</text>\n<text x=\'26\' y=\'48\' class=\'texts clipped\'></text>\n<g><title>Output Rows 33%, 2</title>\n  <rect x=\'303\' y=\'33\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,33 333,33 363,33 363,47 303,47\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'36\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'44\'>2</text>\n</g>\n</g>\n<circle cx=\'8\' cy=\'60\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'64\' class=\'textm\'>1</text>\n<g><title>Memory 0%, 1.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 45) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'45\' width=\'1\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,45 413,45 414,45 414,59 413,59\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'48\' width=\'33\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'56\'>1.00MB</text>\n</g>\n<g><title>Max MEM 1.00MB</title>\n<path d=\'M603,58c0,0,0,-13,0,-13c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--mem-medium, #7E4E5B)\' fill=\'var(--mem-medium, #7E4E5B)\' />\n</g>\n<g><title>CPU Usage 84%, 1ms</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 61) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'61\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,61 503,61 593,61 593,75 413,75\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'64\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'72\'>1ms</text>\n</g>\n<g><title>Stage 1, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'27\' x2=\'371\' y2=\'93\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'64\' class=\'texte\'>1</text>\n</g>\n</g>\n<g class=\'selectable\'><title>Stage 0</title>\n<rect x=\'0\' y=\'96\' width=\'298\' height=\'66\' class=\'stage\'/>\n<rect x=\'301\' y=\'96\' width=\'64\' height=\'66\' class=\'stage\'/>\n<rect x=\'395\' y=\'96\' width=\'200\' height=\'66\' class=\'stage\'/>\n<rect x=\'368\' y=\'96\' width=\'24\' height=\'66\' class=\'stage\'/>\n<rect x=\'598\' y=\'96\' width=\'682\' height=\'66\' class=\'stage\'/>\n<g><title>Stage: </title><text x=\'18\' y=\'107\' class=\'texts clipped\'>Stage</text>\n<text x=\'26\' y=\'117\' class=\'texts clipped\'></text>\n<g><title>Output Rows 33%, 2</title>\n  <rect x=\'303\' y=\'102\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,102 333,102 363,102 363,116 303,116\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'105\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'113\'>2</text>\n</g>\n</g>\n<line x1=\'18\' y1=\'119\' x2=\'298\' y2=\'119\' class=\'opdiv\' />\n<g><title>Source s3: h3665268702917336644_test_convertsbucket.parquet_2_csv_with_names_v2/* (bar, foo)</title><text x=\'18\' y=\'127\' class=\'texts clipped\'>Source s3</text>\n<text x=\'26\' y=\'137\' class=\'texts clipped\'>h3665268702917336644_test_convertsbucket.parquet_2_csv_with_names_v2/* (bar, foo)</text>\n<g><title>Output Rows 33%, 2, Est: 0 Rows: 0 Size: 0B</title>\n  <rect x=\'303\' y=\'122\' width=\'60\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'303,122 333,122 363,122 363,136 303,136\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'303\' y=\'125\' width=\'5\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'303\' y=\'133\'>2</text>\n</g>\n</g>\n<circle cx=\'8\' cy=\'129\' r=\'7\' class=\'stage\' />\n<text x=\'8\' y=\'133\' class=\'textm\'>0</text>\n<g><title>Memory 99%, 201.00MB</title>\n<use href=\'#icon_memory\' transform=\'translate(395 114) scale(0.6 0.6)\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <rect x=\'413\' y=\'114\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--mem-light, #AA7785)\'/>  <polygon points=\'413,114 503,114 593,114 593,128 413,128\' stroke=\'none\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n<rect x=\'413\' y=\'117\' width=\'44\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'125\'>201.00MB</text>\n</g>\n<g><title>Max MEM 201.00MB</title>\n<path d=\'M598,127c0,0,0,-13,0,-13c1,0,3,0,5,0c0,0,0,13,0,13z\' stroke-width=\'1\' stroke=\'var(--mem-medium, #7E4E5B)\' fill=\'var(--mem-medium, #7E4E5B)\' />\n</g>\n<g><title>CPU Usage 15%, 321us</title>\n<use href=\'#icon_cpu\' transform=\'translate(395 130) scale(0.6 0.6)\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <rect x=\'413\' y=\'130\' width=\'33\' height=\'14\' stroke-width=\'0\' fill=\'var(--cpu-light, #B78C98)\'/>  <polygon points=\'413,130 429,130 446,130 446,144 413,144\' stroke=\'none\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n<rect x=\'413\' y=\'133\' width=\'28\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'141\'>321us</text>\n</g>\n<g><title>Max CPU 0.74</title>\n<path d=\'M598,143c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,0,1,0c0,0,0,-13,0,-13c0,0,0,13,1,13c0,0,0,0,0,0z\' stroke-width=\'1\' stroke=\'var(--cpu-medium, #A36D7B)\' fill=\'var(--cpu-light, #B78C98)\' />\n</g>\n<g><title>Stage 0, tasks: 1, finished: 1</title>\n<line x1=\'371\' y1=\'96\' x2=\'371\' y2=\'162\' stroke-width=\'6\' stroke=\'var(--stage-text, #262626)\' stroke-dasharray=\'1,1\' />\n  <text x=\'390\' y=\'133\' class=\'texte\'>1</text>\n</g>\n<g><title>Ingress 100%, 32B, Rows 100%, 2, Width 16B</title>\n<use href=\'#icon_ingress\' transform=\'translate(395 146) scale(0.9 0.9)\' fill=\'var(--ingress-medium, #466364)\'/>\n  <rect x=\'413\' y=\'146\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--ingress-light, #5A8183)\'/>  <polygon points=\'413,146 503,146 593,146 593,160 413,160\' stroke=\'none\' fill=\'var(--ingress-medium, #466364)\'/>\n<rect x=\'413\' y=\'149\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'157\'>32B</text>\n</g>\n<g><title>Ingress, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'603\' y=\'146\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n</g>\n</g>\n<g class=\'selectable\'><title>Result: ResultSet</title>\n<rect x=\'0\' y=\'3\' width=\'298\' height=\'24\' class=\'background\'/>\n<text x=\'0\' y=\'11\' class=\'texts\'>ResultSet</text>\n<g><title>Output 50%, 17B, Rows 50%, 2</title>\n<rect x=\'395\' y=\'29\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_output\' transform=\'translate(395 29) scale(0.0325 0.0325)\' fill=\'var(--output-light, #6F93C3)\'/>\n  <rect x=\'413\' y=\'29\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'413,29 503,29 593,29 593,43 413,43\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'413\' y=\'32\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'40\'>17B</text>\n</g>\n<g><title>Output, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'603\' y=\'29\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-medium, #5781B9)\'/>\n</g>\n</g>\n<g class=\'selectable\'><title>Connection: UnionAll</title>\n  <path d=\'M16,110l-16,0l0,-14l8,-4l8,4z\' class=\'conn\' />\n<text x=\'8\' y=\'106\' class=\'conn\'>U</text>\n<g><title>Input 100%, 17B, Rows 100%, 2, Width 8B</title>\n<rect x=\'395\' y=\'77\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_input\' transform=\'translate(395 77) scale(0.0325 0.0325)\' fill=\'var(--input-light, #7CA3A5)\'/>\n<text x=\'403\' y=\'88\' class=\'textm\'>0</text>\n  <rect x=\'413\' y=\'77\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--input-light, #7CA3A5)\'/>  <polygon points=\'413,77 503,77 593,77 593,91 413,91\' stroke=\'none\' fill=\'var(--input-medium, #5A8183)\'/>\n<rect x=\'413\' y=\'80\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'88\'>17B</text>\n</g>\n<g><title>Input, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'598\' y=\'77\' width=\'682\' height=\'14\' class=\'background\'/>\n<rect x=\'603\' y=\'77\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--input-medium, #5A8183)\'/>\n</g>\n<g><title>Output 50%, 17B, Rows 50%, 2</title>\n<rect x=\'395\' y=\'98\' width=\'200\' height=\'14\' class=\'background\'/>\n<use href=\'#icon_output\' transform=\'translate(395 98) scale(0.0325 0.0325)\' fill=\'var(--output-light, #6F93C3)\'/>\n<text x=\'403\' y=\'109\' class=\'textm\'>1</text>\n  <rect x=\'413\' y=\'98\' width=\'180\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-light, #6F93C3)\'/>  <polygon points=\'413,98 503,98 593,98 593,112 413,112\' stroke=\'none\' fill=\'var(--output-medium, #5781B9)\'/>\n<rect x=\'413\' y=\'101\' width=\'16\' height=\'9\' stroke-width=\'0\' opacity=\'0.5\' fill=\'var(--stage-main, #F2F2F2)\'/>\n<text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-summary, #262626)\' x=\'413\' y=\'109\'>17B</text>\n</g>\n<g><title>Output, Duration: 0.00 (0.00 | 0.00 | 0.00 - 0.00 | 0.00 | 0.00)</title><rect x=\'598\' y=\'98\' width=\'682\' height=\'14\' class=\'background\'/>\n<rect x=\'603\' y=\'98\' width=\'0\' height=\'14\' stroke-width=\'0\' fill=\'var(--output-medium, #5781B9)\'/>\n</g>\n</g>\n\n<line x1=\'600\' y1=\'0\' x2=\'600\' y2=\'162\' stroke-width=\'1\' stroke=\'var(--stage-grid, #B2B2B2)\' stroke-dasharray=\'1,2\'/>\n<text x=\'602\' y=\'11\' class=\'texts\'>0:00</text>\n<text x=\'303\' y=\'11\' class=\'texts\'>Operators</text>\n<text x=\'397\' y=\'11\' class=\'texts\'>Stages</text>\n<text x=\'390\' y=\'11\' class=\'texte\'>Tasks</text>\n<text x=\'390\' y=\'22\' class=\'texte\'>2</text>\n<g><title>Ingress 32B, Rows 2, Width 16B, Avg 32B/s</title>\n  <rect x=\'395\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--ingress-medium, #466364)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'397\' y=\'22\'>32B</text>\n</g>\n<g><title>CPU Usage 2ms, Avg 0.00 CPU/s</title>\n  <rect x=\'462\' y=\'14\' width=\'66\' height=\'10\' stroke-width=\'0\' fill=\'var(--cpu-medium, #A36D7B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'464\' y=\'22\'>2ms</text>\n</g>\n<g><title>Memory 202.00MB</title>\n  <rect x=\'530\' y=\'14\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--mem-medium, #7E4E5B)\'/>\n  <text font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-light, #FFFFFF)\' x=\'532\' y=\'22\'>202.00MB</text>\n</g>\n<g><title>Duration: 1.00, Total 1.00</title>\n  <rect x=\'1215\' y=\'3\' width=\'65\' height=\'10\' stroke-width=\'0\' fill=\'var(--stage-grid, #B2B2B2)\'/>\n  <text text-anchor=\'end\' font-family=\'Verdana\' font-size=\'8px\' fill=\'var(--text-inv, #FFFFFF)\' x=\'1278\' y=\'11\'>1.00</text>\n</g>\n<g><title>Max CPU 6.73</title>\n<path d=\'M598,26c0,0,0,-13,0,-13c0,0,0,13,0,13c0,0,0,0,0,0z\' stroke-width=\'1\' stroke=\'var(--cpu-medium, #A36D7B)\' fill=\'var(--cpu-light, #B78C98)\' />\n</g>\n\n</svg>\n"
  }
}

2025-11-10 10:15:19,049 - DEBUG - root - describe_query: Result: ... (repeated, see above) ...
2025-11-10 10:15:19,050 - DEBUG - boto3.resources.collection - pages: Calling paginated s3:list_objects with {'Bucket': 'convert_bucket'}
2025-11-10 10:15:19,051 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.ListObjects: calling handler <function set_list_objects_encoding_type_url at 0x7f5bf8361610>
2025-11-10 10:15:19,051 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.ListObjects: calling handler <function validate_bucket_name at 0x7f5bf8337d10>
2025-11-10 10:15:19,052 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.ListObjects: calling handler <function remove_bucket_from_url_paths_from_model at 0x7f5bf83625d0>
2025-11-10 10:15:19,052 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.ListObjects: calling handler <bound method S3RegionRedirectorv2.annotate_request_context of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,052 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.ListObjects: calling handler <bound method ClientCreator._inject_s3_input_parameters of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:19,056 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.ListObjects: calling handler <function generate_idempotent_uuid at 0x7f5bf8337ad0>
2025-11-10 10:15:19,057 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <function customize_endpoint_resolver_builtins at 0x7f5bf8362810>
2025-11-10 10:15:19,058 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <bound method S3RegionRedirectorv2.redirect_from_cache of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,058 - DEBUG - botocore.regions - construct_endpoint: Calling endpoint provider with parameters: {'Bucket': 'convert_bucket', 'Region': 'yandex', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'http://localhost:9805', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': False, 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True}
2025-11-10 10:15:19,059 - DEBUG - botocore.regions - construct_endpoint: Endpoint provider result: http://localhost:9805/convert_bucket
2025-11-10 10:15:19,060 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None"
2025-11-10 10:15:19,060 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selected auth type "v4" as "v4" with signing context params: {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}
2025-11-10 10:15:19,065 - DEBUG - botocore.hooks - _emit: Event before-call.s3.ListObjects: calling handler <function add_expect_header at 0x7f5bf83601d0>
2025-11-10 10:15:19,066 - DEBUG - botocore.hooks - _emit: Event before-call.s3.ListObjects: calling handler <bound method S3ExpressIdentityResolver.apply_signing_cache_key of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:19,066 - DEBUG - botocore.hooks - _emit: Event before-call.s3.ListObjects: calling handler <function add_recursion_detection_header at 0x7f5bf8336090>
2025-11-10 10:15:19,066 - DEBUG - botocore.hooks - _emit: Event before-call.s3.ListObjects: calling handler <function inject_api_version_header_if_needed at 0x7f5bf8361c10>
2025-11-10 10:15:19,066 - DEBUG - botocore.endpoint - make_request: Making request for OperationModel(name=ListObjects) with params: {'url_path': '', 'query_string': {'encoding-type': 'url'}, 'method': 'GET', 'headers': {'User-Agent': 'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource'}, 'body': b'', 'auth_path': '/convert_bucket/', 'url': 'http://localhost:9805/convert_bucket?encoding-type=url', 'context': {'client_region': 'yandex', 'client_config': <botocore.config.Config object at 0x7f5bdaa0f0d0>, 'has_streaming_input': False, 'auth_type': 'v4', 'encoding_type_auto_set': True, 's3_redirect': {'redirected': False, 'bucket': 'convert_bucket', 'params': {'Bucket': 'convert_bucket', 'EncodingType': 'url'}}, 'input_params': {'Bucket': 'convert_bucket'}, 'signing': {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}, 'endpoint_properties': {'authSchemes': [{'disableDoubleEncoding': True, 'name': 'sigv4', 'signingName': 's3', 'signingRegion': 'yandex'}]}}}
2025-11-10 10:15:19,068 - DEBUG - botocore.hooks - _emit: Event request-created.s3.ListObjects: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x7f5bdaa0f9e0>>
2025-11-10 10:15:19,080 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.ListObjects: calling handler <bound method ClientCreator._default_s3_presign_to_sigv2 of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:19,081 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.ListObjects: calling handler <function set_operation_specific_signer at 0x7f5bf8337950>
2025-11-10 10:15:19,081 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.ListObjects: calling handler <function remove_arn_from_signing_path at 0x7f5bf8362750>
2025-11-10 10:15:19,086 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.ListObjects: calling handler <bound method S3ExpressIdentityResolver.resolve_s3express_identity of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:19,086 - DEBUG - botocore.auth - add_auth: Calculating signature using v4 auth.
2025-11-10 10:15:19,087 - DEBUG - botocore.auth - add_auth: CanonicalRequest:
GET
/convert_bucket
encoding-type=url
host:localhost:9805
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
x-amz-date:20251110T101519Z

host;x-amz-content-sha256;x-amz-date
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
2025-11-10 10:15:19,087 - DEBUG - botocore.auth - add_auth: StringToSign:
AWS4-HMAC-SHA256
20251110T101519Z
20251110/yandex/s3/aws4_request
5076eb7a764402e53edbbeb0d3263ffaf4b74754294e9b374d0199d302de9cad
2025-11-10 10:15:19,087 - DEBUG - botocore.auth - add_auth: Signature:
b548cb107ea650f445dfa24a35f383cb4687d980e0443f9c21baf3c727abbb5a
2025-11-10 10:15:19,088 - DEBUG - botocore.hooks - _emit: Event request-created.s3.ListObjects: calling handler <function add_retry_headers at 0x7f5bf8362510>
2025-11-10 10:15:19,089 - DEBUG - botocore.endpoint - _do_get_response: Sending http request: <AWSPreparedRequest stream_output=False, method=GET, url=http://localhost:9805/convert_bucket?encoding-type=url, headers={'User-Agent': b'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource', 'X-Amz-Date': b'20251110T101519Z', 'X-Amz-Content-SHA256': b'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 'Authorization': b'AWS4-HMAC-SHA256 Credential=key/20251110/yandex/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=b548cb107ea650f445dfa24a35f383cb4687d980e0443f9c21baf3c727abbb5a', 'amz-sdk-invocation-id': b'64a78633-3970-42e2-aeea-ef5e4709aeb0', 'amz-sdk-request': b'attempt=1'}>
2025-11-10 10:15:19,101 - DEBUG - botocore.parsers - parse: Response headers: {'Server': 'Werkzeug/2.2.3 Python/3.12.12', 'Date': 'Mon, 10 Nov 2025 10:15:19 GMT', 'x-amzn-requestid': 'IQ4QPVi3j2K5UDxydiJ2ywhB5GiKBX8sIKUXeKzqucxj0lIbpA86', 'Content-Type': 'text/html; charset=utf-8', 'Content-Length': '9932', 'Access-Control-Allow-Origin': '*', 'Connection': 'close'}
2025-11-10 10:15:19,102 - DEBUG - botocore.parsers - parse: Response body:
b'<?xml version="1.0" encoding="UTF-8"?><ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Name>convert_bucket</Name><MaxKeys>1000</MaxKeys><EncodingType>url</EncodingType><IsTruncated>false</IsTruncated><Contents><Key>csv_with_names_1_csv_with_names_v2/ptjudsokoog6tka7hprl_0_gtR59oi8akSXVZeP1UKlL3VddveCx3h5.csv</Key><LastModified>2025-11-10T10:15:12.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>csv_with_names_1_json_each_row_v2/ptjudsokp7a93ep8odic_0_9Vmf0LrBtUyWcEdtSFZiRd4zkTOUbpzk.csv</Key><LastModified>2025-11-10T10:14:56.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>csv_with_names_1_json_list_v2/ptjudsokpmv3edikie80_0__iK1Yk34VUmyMYAWrWT7CZoVUE17dPCu.csv</Key><LastModified>2025-11-10T10:14:40.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>csv_with_names_2_csv_with_names_v2/ptjudsokomv2m711ss61_0_KHd4bcBma0iHG-Qbn-C6L5qhUiddOKbl.csv</Key><LastModified>2025-11-10T10:15:13.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>csv_with_names_2_json_each_row_v2/ptjudsokp69bbrpg4lme_0_g0Jy5an-G0KNr0Zn45s8Ea3D3acNwVnI.json</Key><LastModified>2025-11-10T10:14:57.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>csv_with_names_2_json_list_v2/ptjudsokpltp7a61ou72_0_AAPHUMQITU6f7_D-d4ZWx1BBksryc-hW.json</Key><LastModified>2025-11-10T10:14:41.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_each_row_1_csv_with_names_v2/ptjudsokosaajsre8rmf_0_ZwQ_pPPeKUiSaBl-w90NiQzYHNbIyiRL.json</Key><LastModified>2025-11-10T10:15:08.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_each_row_1_json_each_row_v2/ptjudsokpblvm0dj5uot_0_2L8KYi1HmE2oiD9iSZOS5iGd9-oWgqFb.json</Key><LastModified>2025-11-10T10:14:52.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_each_row_1_json_list_v2/ptjudsokprj2fc1js3ln_0_DD4tGZzGrU6eLn2DlycBLLjPyWtzYhPP.json</Key><LastModified>2025-11-10T10:14:35.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_each_row_2_csv_with_names_v2/ptjudsokor8h3jj8ossm_0_tq-hQPW43UiCk2Wc9xNz6Wfe0mRi0Tne.csv</Key><LastModified>2025-11-10T10:15:09.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_each_row_2_json_each_row_v2/ptjudsokpa522jb7h22v_0_7hnb0om9r06-yzcn-q8AUHyapgbS-zTs.json</Key><LastModified>2025-11-10T10:14:53.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_each_row_2_json_list_v2/ptjudsokpqiahad8gni7_0_9Rb3We1ScUifmVnq5iBWFngiv9nrxCZp.json</Key><LastModified>2025-11-10T10:14:36.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_list_1_csv_with_names_v2/ptjudsokovte207njdls_0_9z4oPNi-20WODr_xAlV6UWCBvgMhLBbV.json</Key><LastModified>2025-11-10T10:15:04.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_list_1_json_each_row_v2/ptjudsokpf9mfkn6ei94_0_3vIpkfWIDEaDiULCLr2ulovlmFaRckRg.json</Key><LastModified>2025-11-10T10:14:48.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_list_1_json_list_v2/ptjudsokpvo0cscjaatm_0_NBtpsFRUxk6_tOUueFQLrDT0ShtaVwSY.json</Key><LastModified>2025-11-10T10:14:31.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_list_2_csv_with_names_v2/ptjudsokoush4cmram3n_0_I7RYjPU4m0GCPZrZzydrYmxckBcO5SpN.csv</Key><LastModified>2025-11-10T10:15:05.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_list_2_json_each_row_v2/ptjudsokpe93898tvrv0_0_CjCUi-zokUO6repF2zDjwAw3fqCTXvS2.json</Key><LastModified>2025-11-10T10:14:49.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>json_list_2_json_list_v2/ptjudsokpu7269jv415d_0_bRjSubqCuk2e3er4DSyzL4DezoXqeqko.json</Key><LastModified>2025-11-10T10:14:32.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet</Key><LastModified>2025-11-10T10:15:16.000Z</LastModified><ETag>&#34;938ee549036fc083f3ad0112127f9622&#34;</ETag><Size>533</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>parquet_1_json_each_row_v2/ptjudsokp461rupt4oi5_0__9NzszOMY0q9j_hIMxXEOFc-fFR-CGTF.parquet</Key><LastModified>2025-11-10T10:15:00.000Z</LastModified><ETag>&#34;938ee549036fc083f3ad0112127f9622&#34;</ETag><Size>533</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>parquet_1_json_list_v2/ptjudsokpjc625saund7_0_9Z51Tim2AE6YlIMHwbZBRpCUdoTLHd21.parquet</Key><LastModified>2025-11-10T10:14:44.000Z</LastModified><ETag>&#34;938ee549036fc083f3ad0112127f9622&#34;</ETag><Size>533</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv</Key><LastModified>2025-11-10T10:15:17.000Z</LastModified><ETag>&#34;b11a078e95b84e19937572f9018e592d&#34;</ETag><Size>32</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>parquet_2_json_each_row_v2/ptjudsokp2krram5t1me_0_BTdrUXvD9U2xfhCvL-f0auIoWaaXP_pW.json</Key><LastModified>2025-11-10T10:15:01.000Z</LastModified><ETag>&#34;8c77c177a307b4819bb1a45e6b5aebac&#34;</ETag><Size>48</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents><Contents><Key>parquet_2_json_list_v2/ptjudsokphrp1qfin25p_0_2mRk8iiEyku3EvEBLQcZo9Mce-giK9Y0.json</Key><LastModified>2025-11-10T10:14:45.000Z</LastModified><ETag>&#34;cbb9a78213607d6448a6602cba86e5cb&#34;</ETag><Size>49</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>webfile</DisplayName></Owner></Contents></ListBucketResult>'
2025-11-10 10:15:19,116 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.ListObjects: calling handler <botocore.retryhandler.RetryHandler object at 0x7f5bdae37990>
2025-11-10 10:15:19,119 - DEBUG - botocore.retryhandler - __call__: No retry needed.
2025-11-10 10:15:19,120 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.ListObjects: calling handler <bound method S3RegionRedirectorv2.redirect_from_error of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,120 - DEBUG - botocore.hooks - _emit: Event after-call.s3.ListObjects: calling handler <function decode_list_object at 0x7f5bf83616d0>
2025-11-10 10:15:19,121 - DEBUG - boto3.resources.factory - load_from_definition: Loading s3:ObjectSummary
2025-11-10 10:15:19,121 - DEBUG - boto3.resources.model - _load_name_with_category: Renaming ObjectSummary attribute key
2025-11-10 10:15:19,129 - DEBUG - botocore.hooks - _emit: Event creating-resource-class.s3.ObjectSummary: calling handler <function lazy_call.<locals>._handler at 0x7f5bdaff8710>
2025-11-10 10:15:19,131 - DEBUG - boto3.resources.factory - load_from_definition: Loading s3:Object
2025-11-10 10:15:19,138 - DEBUG - botocore.hooks - _emit: Event creating-resource-class.s3.Object: calling handler <function lazy_call.<locals>._handler at 0x7f5bdaff8650>
2025-11-10 10:15:19,141 - DEBUG - boto3.resources.action - __call__: Calling s3:head_object with {'Bucket': 'convert_bucket', 'Key': 'parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet'}
2025-11-10 10:15:19,149 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function sse_md5 at 0x7f5bf8337dd0>
2025-11-10 10:15:19,149 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function validate_bucket_name at 0x7f5bf8337d10>
2025-11-10 10:15:19,150 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function remove_bucket_from_url_paths_from_model at 0x7f5bf83625d0>
2025-11-10 10:15:19,156 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <bound method S3RegionRedirectorv2.annotate_request_context of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,156 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <bound method ClientCreator._inject_s3_input_parameters of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:19,156 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function generate_idempotent_uuid at 0x7f5bf8337ad0>
2025-11-10 10:15:19,158 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <function customize_endpoint_resolver_builtins at 0x7f5bf8362810>
2025-11-10 10:15:19,160 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <bound method S3RegionRedirectorv2.redirect_from_cache of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,161 - DEBUG - botocore.regions - construct_endpoint: Calling endpoint provider with parameters: {'Bucket': 'convert_bucket', 'Region': 'yandex', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'http://localhost:9805', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': False, 'Key': 'parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet', 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True}
2025-11-10 10:15:19,162 - DEBUG - botocore.regions - construct_endpoint: Endpoint provider result: http://localhost:9805/convert_bucket
2025-11-10 10:15:19,163 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None"
2025-11-10 10:15:19,163 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selected auth type "v4" as "v4" with signing context params: {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}
2025-11-10 10:15:19,164 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <function add_expect_header at 0x7f5bf83601d0>
2025-11-10 10:15:19,165 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <bound method S3ExpressIdentityResolver.apply_signing_cache_key of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:19,165 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <function add_recursion_detection_header at 0x7f5bf8336090>
2025-11-10 10:15:19,165 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <function inject_api_version_header_if_needed at 0x7f5bf8361c10>
2025-11-10 10:15:19,165 - DEBUG - botocore.endpoint - make_request: Making request for OperationModel(name=HeadObject) with params: {'url_path': '/parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource'}, 'body': b'', 'auth_path': '/convert_bucket/parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet', 'url': 'http://localhost:9805/convert_bucket/parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet', 'context': {'client_region': 'yandex', 'client_config': <botocore.config.Config object at 0x7f5bdaa0f0d0>, 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'convert_bucket', 'params': {'Bucket': 'convert_bucket', 'Key': 'parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet'}}, 'input_params': {'Bucket': 'convert_bucket', 'Key': 'parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet'}, 'signing': {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}, 'endpoint_properties': {'authSchemes': [{'disableDoubleEncoding': True, 'name': 'sigv4', 'signingName': 's3', 'signingRegion': 'yandex'}]}}}
2025-11-10 10:15:19,168 - DEBUG - botocore.hooks - _emit: Event request-created.s3.HeadObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x7f5bdaa0f9e0>>
2025-11-10 10:15:19,169 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.HeadObject: calling handler <bound method ClientCreator._default_s3_presign_to_sigv2 of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:19,169 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.HeadObject: calling handler <function set_operation_specific_signer at 0x7f5bf8337950>
2025-11-10 10:15:19,170 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.HeadObject: calling handler <function remove_arn_from_signing_path at 0x7f5bf8362750>
2025-11-10 10:15:19,170 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.HeadObject: calling handler <bound method S3ExpressIdentityResolver.resolve_s3express_identity of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:19,171 - DEBUG - botocore.auth - add_auth: Calculating signature using v4 auth.
2025-11-10 10:15:19,171 - DEBUG - botocore.auth - add_auth: CanonicalRequest:
HEAD
/convert_bucket/parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet

host:localhost:9805
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
x-amz-date:20251110T101519Z

host;x-amz-content-sha256;x-amz-date
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
2025-11-10 10:15:19,171 - DEBUG - botocore.auth - add_auth: StringToSign:
AWS4-HMAC-SHA256
20251110T101519Z
20251110/yandex/s3/aws4_request
cc56b1013dab9cd95b1317a7727ed02c006f0dd48e02881c34a1bdab9454c9ec
2025-11-10 10:15:19,172 - DEBUG - botocore.auth - add_auth: Signature:
04399ea77b8c594ddf23e0084356bc2ff0f65030f4f9fb154c0e23a3fa3eae53
2025-11-10 10:15:19,172 - DEBUG - botocore.hooks - _emit: Event request-created.s3.HeadObject: calling handler <function add_retry_headers at 0x7f5bf8362510>
2025-11-10 10:15:19,173 - DEBUG - botocore.endpoint - _do_get_response: Sending http request: <AWSPreparedRequest stream_output=False, method=HEAD, url=http://localhost:9805/convert_bucket/parquet_1_csv_with_names_v2/ptjudsokok9884k268fk_0_nPAphtzYREqvt5WMDaOCcvZuqszfmXPX.parquet, headers={'User-Agent': b'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource', 'X-Amz-Date': b'20251110T101519Z', 'X-Amz-Content-SHA256': b'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 'Authorization': b'AWS4-HMAC-SHA256 Credential=key/20251110/yandex/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=04399ea77b8c594ddf23e0084356bc2ff0f65030f4f9fb154c0e23a3fa3eae53', 'amz-sdk-invocation-id': b'693a12bb-6b0d-41e4-afba-5e72aecb575a', 'amz-sdk-request': b'attempt=1'}>
2025-11-10 10:15:19,183 - DEBUG - botocore.parsers - parse: Response headers: {'Server': 'Werkzeug/2.2.3 Python/3.12.12', 'Date': 'Mon, 10 Nov 2025 10:15:19 GMT', 'content-type': 'binary/octet-stream', 'ETag': '"938ee549036fc083f3ad0112127f9622"', 'last-modified': 'Mon, 10 Nov 2025 10:15:16 GMT', 'Content-Length': '533', 'Accept-Ranges': 'bytes', 'x-amzn-requestid': 'HsxDfVRVFYYbksFsHOjwXW3qZEpXSni9xCVZtF5Nr3FHeiRcyygz', 'Access-Control-Allow-Origin': '*', 'Connection': 'close'}
2025-11-10 10:15:19,183 - DEBUG - botocore.parsers - parse: Response body:
b''
2025-11-10 10:15:19,185 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.HeadObject: calling handler <botocore.retryhandler.RetryHandler object at 0x7f5bdae37990>
2025-11-10 10:15:19,185 - DEBUG - botocore.retryhandler - __call__: No retry needed.
2025-11-10 10:15:19,186 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.HeadObject: calling handler <bound method S3RegionRedirectorv2.redirect_from_error of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,186 - DEBUG - boto3.resources.action - __call__: Response: {'ResponseMetadata': {'RequestId': 'HsxDfVRVFYYbksFsHOjwXW3qZEpXSni9xCVZtF5Nr3FHeiRcyygz', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'Werkzeug/2.2.3 Python/3.12.12', 'date': 'Mon, 10 Nov 2025 10:15:19 GMT', 'content-type': 'binary/octet-stream', 'etag': '"938ee549036fc083f3ad0112127f9622"', 'last-modified': 'Mon, 10 Nov 2025 10:15:16 GMT', 'content-length': '533', 'accept-ranges': 'bytes', 'x-amzn-requestid': 'HsxDfVRVFYYbksFsHOjwXW3qZEpXSni9xCVZtF5Nr3FHeiRcyygz', 'access-control-allow-origin': '*', 'connection': 'close'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 11, 10, 10, 15, 16, tzinfo=tzutc()), 'ContentLength': 533, 'ETag': '"938ee549036fc083f3ad0112127f9622"', 'ContentType': 'binary/octet-stream', 'Metadata': {}}
2025-11-10 10:15:19,187 - DEBUG - boto3.resources.factory - load_from_definition: Loading s3:Object
2025-11-10 10:15:19,190 - DEBUG - botocore.hooks - _emit: Event creating-resource-class.s3.Object: calling handler <function lazy_call.<locals>._handler at 0x7f5bdaff8650>
2025-11-10 10:15:19,191 - DEBUG - boto3.resources.action - __call__: Calling s3:head_object with {'Bucket': 'convert_bucket', 'Key': 'parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv'}
2025-11-10 10:15:19,191 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function sse_md5 at 0x7f5bf8337dd0>
2025-11-10 10:15:19,191 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function validate_bucket_name at 0x7f5bf8337d10>
2025-11-10 10:15:19,191 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function remove_bucket_from_url_paths_from_model at 0x7f5bf83625d0>
2025-11-10 10:15:19,192 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <bound method S3RegionRedirectorv2.annotate_request_context of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,192 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <bound method ClientCreator._inject_s3_input_parameters of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:19,192 - DEBUG - botocore.hooks - _emit: Event before-parameter-build.s3.HeadObject: calling handler <function generate_idempotent_uuid at 0x7f5bf8337ad0>
2025-11-10 10:15:19,192 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <function customize_endpoint_resolver_builtins at 0x7f5bf8362810>
2025-11-10 10:15:19,193 - DEBUG - botocore.hooks - _emit: Event before-endpoint-resolution.s3: calling handler <bound method S3RegionRedirectorv2.redirect_from_cache of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,193 - DEBUG - botocore.regions - construct_endpoint: Calling endpoint provider with parameters: {'Bucket': 'convert_bucket', 'Region': 'yandex', 'UseFIPS': False, 'UseDualStack': False, 'Endpoint': 'http://localhost:9805', 'ForcePathStyle': True, 'Accelerate': False, 'UseGlobalEndpoint': False, 'Key': 'parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv', 'DisableMultiRegionAccessPoints': False, 'UseArnRegion': True}
2025-11-10 10:15:19,195 - DEBUG - botocore.regions - construct_endpoint: Endpoint provider result: http://localhost:9805/convert_bucket
2025-11-10 10:15:19,195 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selecting from endpoint provider's list of auth schemes: "sigv4". User selected auth scheme is: "None"
2025-11-10 10:15:19,195 - DEBUG - botocore.regions - auth_schemes_to_signing_ctx: Selected auth type "v4" as "v4" with signing context params: {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}
2025-11-10 10:15:19,196 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <function add_expect_header at 0x7f5bf83601d0>
2025-11-10 10:15:19,196 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <bound method S3ExpressIdentityResolver.apply_signing_cache_key of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:19,197 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <function add_recursion_detection_header at 0x7f5bf8336090>
2025-11-10 10:15:19,197 - DEBUG - botocore.hooks - _emit: Event before-call.s3.HeadObject: calling handler <function inject_api_version_header_if_needed at 0x7f5bf8361c10>
2025-11-10 10:15:19,197 - DEBUG - botocore.endpoint - make_request: Making request for OperationModel(name=HeadObject) with params: {'url_path': '/parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv', 'query_string': {}, 'method': 'HEAD', 'headers': {'User-Agent': 'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource'}, 'body': b'', 'auth_path': '/convert_bucket/parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv', 'url': 'http://localhost:9805/convert_bucket/parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv', 'context': {'client_region': 'yandex', 'client_config': <botocore.config.Config object at 0x7f5bdaa0f0d0>, 'has_streaming_input': False, 'auth_type': 'v4', 's3_redirect': {'redirected': False, 'bucket': 'convert_bucket', 'params': {'Bucket': 'convert_bucket', 'Key': 'parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv'}}, 'input_params': {'Bucket': 'convert_bucket', 'Key': 'parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv'}, 'signing': {'region': 'yandex', 'signing_name': 's3', 'disableDoubleEncoding': True}, 'endpoint_properties': {'authSchemes': [{'disableDoubleEncoding': True, 'name': 'sigv4', 'signingName': 's3', 'signingRegion': 'yandex'}]}}}
2025-11-10 10:15:19,198 - DEBUG - botocore.hooks - _emit: Event request-created.s3.HeadObject: calling handler <bound method RequestSigner.handler of <botocore.signers.RequestSigner object at 0x7f5bdaa0f9e0>>
2025-11-10 10:15:19,198 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.HeadObject: calling handler <bound method ClientCreator._default_s3_presign_to_sigv2 of <botocore.client.ClientCreator object at 0x7f5bf8008920>>
2025-11-10 10:15:19,198 - DEBUG - botocore.hooks - _emit: Event choose-signer.s3.HeadObject: calling handler <function set_operation_specific_signer at 0x7f5bf8337950>
2025-11-10 10:15:19,198 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.HeadObject: calling handler <function remove_arn_from_signing_path at 0x7f5bf8362750>
2025-11-10 10:15:19,199 - DEBUG - botocore.hooks - _emit: Event before-sign.s3.HeadObject: calling handler <bound method S3ExpressIdentityResolver.resolve_s3express_identity of <botocore.utils.S3ExpressIdentityResolver object at 0x7f5bdae37030>>
2025-11-10 10:15:19,199 - DEBUG - botocore.auth - add_auth: Calculating signature using v4 auth.
2025-11-10 10:15:19,199 - DEBUG - botocore.auth - add_auth: CanonicalRequest:
HEAD
/convert_bucket/parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv

host:localhost:9805
x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
x-amz-date:20251110T101519Z

host;x-amz-content-sha256;x-amz-date
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
2025-11-10 10:15:19,199 - DEBUG - botocore.auth - add_auth: StringToSign:
AWS4-HMAC-SHA256
20251110T101519Z
20251110/yandex/s3/aws4_request
041d27e9e0224de5d6f7cb75396edbb332e9a4186501808f536340b8fee1ed64
2025-11-10 10:15:19,200 - DEBUG - botocore.auth - add_auth: Signature:
0cdb139a3c638f751ec1679a3c83f6cd7434c706d50b95b610ae6b1a1ff96ed6
2025-11-10 10:15:19,200 - DEBUG - botocore.hooks - _emit: Event request-created.s3.HeadObject: calling handler <function add_retry_headers at 0x7f5bf8362510>
2025-11-10 10:15:19,200 - DEBUG - botocore.endpoint - _do_get_response: Sending http request: <AWSPreparedRequest stream_output=False, method=HEAD, url=http://localhost:9805/convert_bucket/parquet_2_csv_with_names_v2/ptjudsokoj7hcusft0jo_0_mMwYLE3d9UatQRZMJWAsqkoQnroskQnp.csv, headers={'User-Agent': b'Boto3/1.34.89 md/Botocore#1.34.89 ua/2.0 os/linux#5.15.0-157-generic md/arch#x86_64 lang/python#3.12.12 md/pyimpl#CPython cfg/retry-mode#legacy Botocore/1.34.89 Resource', 'X-Amz-Date': b'20251110T101519Z', 'X-Amz-Content-SHA256': b'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 'Authorization': b'AWS4-HMAC-SHA256 Credential=key/20251110/yandex/s3/aws4_request, SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=0cdb139a3c638f751ec1679a3c83f6cd7434c706d50b95b610ae6b1a1ff96ed6', 'amz-sdk-invocation-id': b'd471b6c4-9b05-405e-a234-c8a6a6de5b47', 'amz-sdk-request': b'attempt=1'}>
2025-11-10 10:15:19,209 - DEBUG - botocore.parsers - parse: Response headers: {'Server': 'Werkzeug/2.2.3 Python/3.12.12', 'Date': 'Mon, 10 Nov 2025 10:15:19 GMT', 'content-type': 'binary/octet-stream', 'ETag': '"b11a078e95b84e19937572f9018e592d"', 'last-modified': 'Mon, 10 Nov 2025 10:15:17 GMT', 'Content-Length': '32', 'Accept-Ranges': 'bytes', 'x-amzn-requestid': 'FxKyUCdA7GDbh390LagRTmdHDHhMjgnjxqwHeX88d6jKaGPsT78s', 'Access-Control-Allow-Origin': '*', 'Connection': 'close'}
2025-11-10 10:15:19,210 - DEBUG - botocore.parsers - parse: Response body:
b''
2025-11-10 10:15:19,211 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.HeadObject: calling handler <botocore.retryhandler.RetryHandler object at 0x7f5bdae37990>
2025-11-10 10:15:19,211 - DEBUG - botocore.retryhandler - __call__: No retry needed.
2025-11-10 10:15:19,211 - DEBUG - botocore.hooks - _emit: Event needs-retry.s3.HeadObject: calling handler <bound method S3RegionRedirectorv2.redirect_from_error of <botocore.utils.S3RegionRedirectorv2 object at 0x7f5bdd19a630>>
2025-11-10 10:15:19,212 - DEBUG - boto3.resources.action - __call__: Response: {'ResponseMetadata': {'RequestId': 'FxKyUCdA7GDbh390LagRTmdHDHhMjgnjxqwHeX88d6jKaGPsT78s', 'HTTPStatusCode': 200, 'HTTPHeaders': {'server': 'Werkzeug/2.2.3 Python/3.12.12', 'date': 'Mon, 10 Nov 2025 10:15:19 GMT', 'content-type': 'binary/octet-stream', 'etag': '"b11a078e95b84e19937572f9018e592d"', 'last-modified': 'Mon, 10 Nov 2025 10:15:17 GMT', 'content-length': '32', 'accept-ranges': 'bytes', 'x-amzn-requestid': 'FxKyUCdA7GDbh390LagRTmdHDHhMjgnjxqwHeX88d6jKaGPsT78s', 'access-control-allow-origin': '*', 'connection': 'close'}, 'RetryAttempts': 0}, 'AcceptRanges': 'bytes', 'LastModified': datetime.datetime(2025, 11, 10, 10, 15, 17, tzinfo=tzutc()), 'ContentLength': 32, 'ETag': '"b11a078e95b84e19937572f9018e592d"', 'ContentType': 'binary/octet-stream', 'Metadata': {}}
2025-11-10 10:15:19,219 - INFO - ya.test - pytest_runtest_teardown: Test teardown
