I encountered an encoding issue while importing a Netezza table containing ISO-8859-15 encoded VARCHAR. Using direct mode, non ASCII chars are corrupted. That does not occur using non-direct mode.
Actually, direct mode uses a Netezza "external table", i.e. it flushes the table into a stream using "internal" encoding (in my case, it is ISO-8859-15).
But Sqoop import mapper reads this stream as an UTF-8 one.
That problem does not occur using non direct mode since it uses Netezza JDBC driver to map fields directly to Java types (no stream encoding involved).
To have that issue fixed in my environment, I modified sqood netezza connector and added a parameter to specify netezza varchar encoding. Default value will be UTF-8 of course. I will make a pull request on github to propose that enhancement.