2013-03-24 13 views
15

Widziałem inne posty, które mówią, że podwójny łącznik - powinien być komentarzem roju. Ale przynajmniej w CLI wiersza, który nie działa poprawnie;Komentarze nie działa w ulu CLI

hive> -- some comment; 
FAILED: Parse Error: line 0:-1 cannot recognize input near '<EOF>' '<EOF>' '<EOF>' 

Nawet w książce Eduardo CAPRIOLO on mówi to samo:

As of Hive v0.8.0, you can embed lines of comments that start with the string --, 
for example: 
-- Copyright (c) 2012 Megacorp, LLC. 
-- This is the best Hive script evar! 

Wersja widocznie 0.8.1 (używam najnowszego Amazon EMR)

[email protected]:~$ hive 
bin is /home/hadoop/.versions/hive-0.8.1/bin 

Odpowiedz

4

znalazłem średnio Obejście:

miejsce średnik po każdym wierszu komentarza podobny sposób:

-- some comment ; 

to co się dzieje - CLI ma wydać błąd (jeszcze!), Ale przynajmniej nie magiel kolejne linie kodu.

Używam tej techniki w kilku skryptach ulowych, teraz pozwala mi wycinać i wklejać fragmenty do CLI (z wymienionym zastrzeżeniem).

9

Sprawa jest prosta Hive akceptuje komentarze, ale nie jako pojedynczą linię. Jeśli spróbujesz:

--comment 
show tables; 

lub

show tables 
--comment; 

wszystko będzie w porządku. GL z walką ula!

+1

Generalnie jest to prawda, ale odkryłem, że nie można wykonać polecenia "--comment [linebreak] SET hivevar: foo = bar;" w CLI (domyślam się, że 'SET' musi być początkiem komunikat). W takim przypadku musiałem usunąć komentarz lub żyć z błędem, włączając średnik "--comment; [linebreak] SET hivevar: foo = bar;" (co jak wskazuje javadba, jest w rzeczywistości nieszkodliwe - jeśli irytujący - błąd) –