Executing steps even when your stream is empty
As you must know, a Kettle transformation is a group of linked steps through which data flows. Each step is meant to receive rows of data, process the data somehow, and deliver those rows to the next step or steps. If there are no rows coming to the step, the step will not be executed.
This seems reasonable, but on occasions, it can be a problem. To get an idea of that kind of situation, look at the following scenarios:
- You have a very simple transformation that reads a file, does some calculations, and finally updates a table with the system date and the number of processed rows. If the file doesn't exist or if it is empty, then no rows will go out from the file input step. Consequently and contrary ...