Exception in a tap will stop the tapped stream from sinking data.
We experienced this when streaming data from a rabbit queue to hdfs. The stream was tapped and we had a groovy processor on the tap stream. Any exceptions in the processor stopped the main stream from writing data to the hdfs sink.
1: Create a groovy script that throws an exception in modules/processor/scripts/exceptionthrower.groovy. Code below
2: Create a sample main stream
3: Tail the log to confirm the data is going to the sink. We see 'sink.ticktock' appearing in the log as expected.
4: Add a tap to the stream that will throw an exception.
5: Tail the log and we see that there are no more 'sink.ticktock' strings being logged. Looks like the main stream is no longer sending messages to the sink.