Skip to content

bug: delegation token parameter should be renamed when using WebHDFS as storage #16742

Closed
@jason-heo

Description

@jason-heo

Search before asking

  • I had searched in the issues and found no similar issues.

Version

v1.2.615-a8da519a63(rust-1.81.0-nightly-2024-08-19T03:29:16.412442905Z)

What's Wrong?

Hello, Im new to Databend.

I'm trying to test Databend with my data on secure hadoop.

I've setup Query node as describe in Deploying with HDFS using WebHDFS

My current setting is like this:

[storage.webhdfs]
endpoint_url = "https://<hostname>:<port>"
root = "/path/to"
# if your webhdfs needs authentication, uncomment and set with your value
delegation = "<token>"

When I run INSERT INTO I got an error:

error: APIError: ResponseError with 3002: PermissionDenied (persistent) at Writer::close, context: {
  uri: https://<hostname>:<port>/webhdfs/v1/path/to/xxx.parquet?op=CREATE&...&delegation_token=<token>,
  response: Parts {
    status: 401,
    version: HTTP/1.1,
    headers: {
      ...
    }
  }
}

I think delegation_token should be renamed to delegation.

You can see not delegation_token but delegation on WebHDFS REST API -> Authentication

image

I've tested using curl and confirm that following url worked well.

$ curl -i "https://<hostname>:<port>/webhdfs/v1/path/to?op=LISTSTATUS&delegation=<token>"

How to Reproduce?

Described above.

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-bugCategory: something isn't workinggood first issueCategory: good first issue

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions