If the sqlbuffer contains an invalid SQL statement and one calls from Command mode the \sqlexport command without mentioning a table name, the full exception is printed.
The full exception should not be printed, but instead a shorten message should appear like it happens in GUI FluidShell.
Example:
INPUT
invalidselect
sqlexport file
OUTPUT
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'invalidselect' at line 1
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:406)
at com.mysql.jdbc.Util.getInstance(Util.java:381)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1030)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3536)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3468)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1957)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2107)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2642)
at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2571)
at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1451)
at \\...\\ .\\हिñçêČάй語简�?한\\.cꁨᛎꀮꏰ enum 10.executeQuery(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.yᠩꏠ᠅ꆞ while 10.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.yᠩꏠ᠅ꆞ while 10.run(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Sꀨᢊꄭ⠪ break.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.yᡌ⣫ꑖ final.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Aᛈꋗᛃꉄ public.execute(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Iᡟꈰꅆꁕ protected volatile.run(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.j⡃ꎖꁒᡘ.co(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.nꎀꉫᚢꋏ super.execute(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.yᠶꉌꍌꌂ 1.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.hꎄꉖꃅꇊ instanceof interface.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.T̍⢀ꋗ⣛.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Hꋲꁉꎓꎥ byte.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.W⢱ꈷ⠡ᛣ do double.co(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.nꎀꉫᚢꋏ super.execute(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Vꀍꐬꀖꂣ extends.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Vꀍꐬꀖꂣ extends.a(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Gꇴꐼꈱꎦ instanceof private.aQa(Unknown Source)
at \\...\\ .\\हिñçêČάй語简�?한\\.Gꇴꐼꈱꎦ instanceof private.execute(Unknown Source)
at com.aquafold.datastudio.RunFluidShell.main(Unknown Source)
That exception is supposed to go to the log file; however, since the Command mode hard-wired the logger to console, hence the exception is printed to the console.
Reassign this issue to Niels to decide whether we want to change the logger configuration in the Command mode.