Конечная точка добавления WebHDFS не работает так, как задокументировано
Я следую этой документации о моей версии webHDFS (2.6) и пытаюсь добавить файл в систему, которая уже существует.
Меня смущает проблема, заключающаяся в том, что в документах говорится, что я получу перенаправление на соответствующий датодель после выполнения первоначального POST, однако на самом деле я получаю 200, и любые данные, которые я передаю в теле, корректно добавляются при первом запросе.,
$ curl -i -X POST "http://localhost:50075/webhdfs/v1/user/d1/c7/d1c78e73d6734c71abb055667abca170?op=APPEND&namenoderpcaddress=localhost:9000&user.name=zach"
HTTP/1.1 200 OK
Cache-Control: no-cache
Expires: Fri, 06 Mar 2015 17:54:26 GMT
Date: Fri, 06 Mar 2015 17:54:26 GMT
Pragma: no-cache
Expires: Fri, 06 Mar 2015 17:54:26 GMT
Date: Fri, 06 Mar 2015 17:54:26 GMT
Pragma: no-cache
Content-Type: application/octet-stream
Content-Length: 0
Server: Jetty(6.1.26)
Это все замечательно, если мне просто нужно сделать один запрос, но я хочу убедиться, что он будет работать в других средах hadoop, и меня беспокоит, что я не получаю ответ 307, обещанный в документах. Я бегу в распределенном режиме (хотя только на моей локальной машине). Кто-нибудь сталкивался с этим раньше?
1 ответ
Извините за шум, только что понял, что я разговаривал с webHDFS, работающей на узле данных, а не в namenode, и, поскольку это один и тот же вызов API для обоих, я действительно просто выполнял второй запрос, и он всегда работал, так как у меня только одни данные узел.