Свинья проблема с загрузкой файла со сложным именем

мне нужно загрузить файл в свинью, который имеет длинное и сложное имя:

dealnews-2011-04-01T12:00:00:00.211-02:00.csv

Свин пожаловался:

ERROR org.apache.pig.tools.grunt.Grunt - ERROR 2999: Unexpected internal error. java.net.URISyntaxException: Relative path in absolute URI:

кто-нибудь знает в чем проблема? Спасибо.


person ohana    schedule 20.04.2011    source источник


Ответы (2)


Если он формирует из этого URI, : является зарезервированным символом.

Подумайте об этом: file://a:b ... это будет воспринято как логин FTP.

Ваше сообщение об ошибке, кажется, жалуется на то, что после анализа строки остается относительный путь (я думаю, 00.csv после последнего двоеточия). Очевидно, это уже не полное имя файла.

Вам нужно будет избегать любых зарезервированных символов в имени файла перед формированием URI. Вы можете сделать это в командной строке, например: ls | sed -e 's/:/%3A/g'

для преобразования двоеточий в имени файла.

Или вы можете переименовать любые файлы в каталоге, которые используют любой из ";?:@&=+,$"

person Erik Olson    schedule 20.04.2011

не совсем тот случай, но у нас получилось:

ERROR 2999: Unexpected internal error. java.net.URISyntaxException cannot be cast to java.lang.Error
java.lang.ClassCastException: java.net.URISyntaxException cannot be cast to java.lang.Error

для всего, что мы пытались загрузить, и проблема заключалась в том, что переменная env PIG_CONF_DIR указывала на несуществующую папку. Мы сбросили его в .bash_profile в папку с действительными core-site.xml и mapred-site.xml, и теперь все хорошо.

export PIG_CONF_DIR=/my_good_folder
person ihadanny    schedule 24.06.2012