CSV Attachment import fails when file starts with '#' (sharp symbol)

XMLWordPrintable

    • Type: Suggestion
    • Resolution: Won't Fix
    • None
    • Component/s: Jira Importers Plugin
    • None
    • 1

      NOTE: This suggestion is for JIRA Server. Using JIRA Cloud? See the corresponding suggestion.

      Summary

      When proceeding with CSV import with attachments it fails if the attachment contains # on the the starting name of the file.

      Environment

      • Tested in cloud instance

      Steps to Reproduce

      1. Create a 'CSV' import file with attachments to upload (using 'file://' for JIRA to find attachments under $JIRA_HOME/import/attachments
      2. Run the .CSV import tool

      Expected Results

      Issue uploaded with the attachment on it

      Actual Results

      Issue imported without the attachment and JIRA throws below exception on the import log

      2016-12-19 17:54:07,106 WARN - An exception occurred dealing with attachment '19/Dec/16 5:44 PM;sysadmin;export.csv;file://#texto.txt'.
      java.io.IOException: Source '/data/jirastudio/jira/home/import/attachments' exists but is a directory
      	at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:874)
      	at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:835)
      	at com.atlassian.jira.plugins.importer.imports.AttachmentImporter.importAttachmentFrom(AttachmentImporter.java:65)
      	at com.atlassian.jira.plugins.importer.imports.csv.CsvDataBean.getAttachmentsForIssue(CsvDataBean.java:419)
      	at com.atlassian.jira.plugins.importer.imports.csv.CsvDataBean.getAttachmentsForIssue(CsvDataBean.java:382)
      	at com.atlassian.jira.plugins.importer.imports.importer.impl.DefaultJiraDataImporter.createIssue(DefaultJiraDataImporter.java:975)
      	at com.atlassian.jira.plugins.importer.imports.importer.impl.DefaultJiraDataImporter.importIssues(DefaultJiraDataImporter.java:799)
      	at com.atlassian.jira.plugins.importer.imports.importer.impl.DefaultJiraDataImporter.doImport(DefaultJiraDataImporter.java:415)
      	at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:26)
      	at com.atlassian.jira.plugins.importer.imports.importer.impl.ImporterCallable.call(ImporterCallable.java:15)
      	at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:451)
      	at com.atlassian.jira.task.TaskManagerImpl$TaskCallableDecorator.call(TaskManagerImpl.java:419)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at com.atlassian.jira.util.UnicornOnlyWorkContextCreatingExecutorService.lambda$wrapWithWorkContext$8(UnicornOnlyWorkContextCreatingExecutorService.java:218)
      	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
      	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      	at java.lang.Thread.run(Thread.java:745)
      

      Workaround

      Manually import the attachments.

            Assignee:
            Unassigned
            Reporter:
            Eduardo Masiero
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: