[ https://issues.apache.org/jira/browse/SQOOP-3042?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16740394#comment-16740394 ]
Szabolcs Vasas commented on SQOOP-3042: --------------------------------------- The error means that the generated source file cannot be moved to the code output directory, which is the current directory by default but can be overridden with the --outdir option. So depending on the use case it could be a real error because I can imagine in some cases the user needs these generated files but in most of the cases they care about the import only which is not impacted by this error. So we could argue for both keeping this behavior and restore the original one but I think if you explain the impact of the error to the customer they should be ok. > Sqoop does not clear compile directory under /tmp/sqoop-<username>/compile > automatically > ---------------------------------------------------------------------------------------- > > Key: SQOOP-3042 > URL: https://issues.apache.org/jira/browse/SQOOP-3042 > Project: Sqoop > Issue Type: Bug > Affects Versions: 1.4.6 > Reporter: Eric Lin > Assignee: Eric Lin > Priority: Critical > Labels: patch > Fix For: 3.0.0 > > Attachments: SQOOP-3042.1.patch, SQOOP-3042.2.patch, > SQOOP-3042.4.patch, SQOOP-3042.5.patch, SQOOP-3042.6.patch, > SQOOP-3042.7.patch, SQOOP-3042.9.patch > > > After running sqoop, all the temp files generated by ClassWriter are left > behind on disk, so anyone can check those JAVA files to see the schema of > those tables that Sqoop has been interacting with. By default, the directory > is under /tmp/sqoop-<username>/compile. > In class org.apache.sqoop.SqoopOptions, function getNonceJarDir(), I can see > that we did add "deleteOnExit" on the temp dir: > {code} > for (int attempts = 0; attempts < MAX_DIR_CREATE_ATTEMPTS; attempts++) { > hashDir = new File(baseDir, RandomHash.generateMD5String()); > while (hashDir.exists()) { > hashDir = new File(baseDir, RandomHash.generateMD5String()); > } > if (hashDir.mkdirs()) { > // We created the directory. Use it. > // If this directory is not actually filled with files, delete it > // when the JVM quits. > hashDir.deleteOnExit(); > break; > } > } > {code} > However, I believe it failed to delete due to directory is not empty. -- This message was sent by Atlassian JIRA (v7.6.3#76005)