2013-03-24 13 views
15

Ich habe andere Beiträge gesehen, die sagen, doppelter Bindestrich - sollte ein Stockkommentar sein. Aber zumindest innerhalb des Hive CLI, das nicht richtig funktioniert;Kommentare funktionieren nicht im Bienenstock CLI

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

Auch in Eduardo Capriolo Buch sagt er gleich:

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! 

Die Version ist anscheinend 0.8.1 (Ich verwende neuesten Amazon EMR)

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

Antwort

4

fand ich eine middling Abhilfe:

Ort Semikolon nach jeder Kommentarzeile wie so:

-- some comment ; 

Dann Was geschieht - der CLI einen Fehler herausgibt (noch!), Aber zumindest mangle nicht die folgenden Codezeilen.

Ich benutze diese Technik jetzt in ein paar Hive-Skripten, es erlaubt mir, Ausschnitte auszuschneiden und in die CLI einzufügen (mit dem erwähnten Vorbehalt).

9

Fall ist einfach Hive akzeptiert Kommentare, aber nicht als einzelne Zeile. Wenn Sie versuchen:

--comment 
show tables; 

oder

show tables 
--comment; 

wird alles in Ordnung sein. GL mit Hive Kampf!

+1

Im Allgemeinen ist das wahr, aber ich habe festgestellt, dass Sie '--komment [Zeilenumbruch] SET hivevar: foo = bar;' in der CLI nicht tun können (ich denke, da 'SET' muss der Beginn einer sein Erklärung). In diesem Fall musste ich entweder den Kommentar entfernen oder mit dem Fehler leben, indem ich das Semikolon einbezog - --komment; [linebreak] SET hivevar: foo = bar; '(was, wie javadba zeigt, tatsächlich harmlos ist - wenn nervig - Fehler) –

Verwandte Themen