IMPORT FROM CSV creates extra connection if multiple files are specified for the first server
Details
| Detail name | Value |
|---|---|
| Changelog Number | 6451 |
| Type | Bug |
| Status | Resolved |
| Affected Versions | EXASOL 6.0.0 |
| Fix Versions | Exasol 6.1.0, Exasol 6.0.13 |
| Resolution Date | 2018-10-12 |
Background
IMPORT FROM CSV allows you to use multiple HTTP/FTP servers. For each server multiple files can be specified.
Problem
If you specify multiple files for the first server, an additional connection will be created which may be used to read the first row of the file before it is closed again and the loading of the complete file is started with a new connection.
This will have a negative impact in case you are using fake TCP servers instead of real HTTP or FTP servers.
Workaround
Instead of specifying multiple files for the first server, use only one file for this server and specify this server again as a second server with the remaining files.
Example
-- breaking variant
IMPORT INTO parallel_import FROM CSV
AT 'http://example.com'
FILE '27.1.0.48:33979/000.csv'
FILE '27.1.0.48:43722/001.csv'
FILE '27.1.0.30:39097/002.csv'
FILE '27.1.0.48:43371/003.csv'
FILE '27.1.0.47:41189/004.csv'
;
-- woraround
IMPORT INTO parallel_import FROM CSV
AT 'http://example.com'
FILE '27.1.0.48:33979/000.csv'
AT 'http://example.com'
FILE '27.1.0.48:43722/001.csv'
FILE '27.1.0.30:39097/002.csv'
FILE '27.1.0.48:43371/003.csv'
FILE '27.1.0.47:41189/004.csv'
;