title: Does throwing an exception in an EvalFunc pig UDF skip just that line, or stop completely?
body: <p>I have a User Defined Function (UDF) written in Java to parse lines in a log file and return information back to pig, so it can do all the processing.</p>
  
  <p>It looks something like this:</p>
  
  <pre><code>public abstract class Foo extends EvalFunc&lt;Tuple&gt; {
      public Foo() {
          super();
      }
  
      public Tuple exec(Tuple input) throws IOException {
          try {
              // do stuff with input
          } catch (Exception e) {
              throw WrappedIOException.wrap("Error with line", e);
          }
      }
  }
  </code></pre>
  
  <p>My question is: if it throws the IOException, will it stop completely, or will it return results for the rest of the lines that don't throw an exception?</p>
  
  <p>Example: I run this in pig</p>
  
  <pre><code>REGISTER myjar.jar
  DEFINE Extractor com.namespace.Extractor();
  
  logs = LOAD '$IN' USING TextLoader AS (line: chararray);
  events = FOREACH logs GENERATE FLATTEN(Extractor(line));
  </code></pre>
  
  <p>With this input:</p>
  
  <pre><code>1.5 7 "Valid Line"
  1.3 gghyhtt Inv"alid line"" I throw an exceptioN!!
  1.8 10 "Valid Line 2"
  </code></pre>
  
  <p>Will it process the two lines and will 'logs' have 2 tuples, or will it just die in a fire?</p>