Uploaded image for project: 'FishEye'
  1. FishEye
  2. FE-6780

Git Unsupported filetype on Windows when indexing a binary file of name with space and some UTF-8 characters

    XMLWordPrintable

Details

    Description

      Summary

      FishEye/Crucible fails to index a Git repository on Windows if that repository contains a file of name with both a space and certain UTF-8 characters.

      Environment

      • Windows
      • Git 2.11.1

      Steps to Reproduce

      1. Add the repository at https://bitbucket.org/atlassian-jeff/doc_test to FishEye running Windows
      2. Allow the repository to index

      Expected Results

      Indexing completes without error.

      Actual Results

      Repository fails to index. The following error is in atlassian-fisheye-YYYY-MM-DD.log:

      2017-02-07 15:30:29,570 DEBUG [InitPing2 doc_test ] fisheye DvcsProcessMonitor-onAfterFinished - Finished process: git show -m --no-abbrev --raw --stdin --no-renames --pretty=format:C:%H%nP:%P%nA:%aN%nE:%aE%nR:%cN%nF:%cE%nD:%at%nS:%s%nB:%b%n@@fe_body_end@@ took 28783ms
      2017-02-07 15:30:29,570 WARN  [InitPing2 doc_test ] fisheye BaseRepositoryScanner-handleSlurpException - Problem processing revisions from repository doc_test (doc_test) due to class com.cenqua.fisheye.rep.RepositoryClientException - com.atlassian.fisheye.dvcs.handler.DvcsProcessException: Error while communicating with VCS: 
      com.cenqua.fisheye.rep.RepositoryClientException: com.atlassian.fisheye.dvcs.handler.DvcsProcessException: Error while communicating with VCS: 
      	at com.atlassian.fisheye.dvcs.DvcsScanner.processRevisions(DvcsScanner.java:345) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner.processRevisions(GitScanner.java:385) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.LifecycleRepositoryScanner.slurpRepository(LifecycleRepositoryScanner.java:83) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner.slurpRepository(GitScanner.java:1597) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.LifecycleRepositoryScanner.doSlurpTransaction(LifecycleRepositoryScanner.java:50) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.BaseRepositoryScanner.ping(BaseRepositoryScanner.java:73) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.BaseRepositoryEngine.doSlurp(BaseRepositoryEngine.java:85) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.RepositoryEngine.slurp(RepositoryEngine.java:419) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.ping.IndexingPingRequest.doRequest(IndexingPingRequest.java:28) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.ping.IncrementalPingRequest.doRequest(IncrementalPingRequest.java:30) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.ping.PingRequest$1.run(PingRequest.java:55) [fisheye.jar:?]
      	at com.cenqua.fisheye.util.NamedExecution.run(NamedExecution.java:27) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.ping.PingRequest.process(PingRequest.java:52) [fisheye.jar:?]
      	at com.cenqua.fisheye.rep.RepositoryHandle.processPingRequests(RepositoryHandle.java:211) [fisheye.jar:?]
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_102]
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_102]
      	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_102]
      Caused by: com.atlassian.fisheye.dvcs.handler.DvcsProcessException: Error while communicating with VCS: 
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeWithInput(DvcsContext.java:226) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner.processChanges(GitScanner.java:1431) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner.slurpCommits(GitScanner.java:1402) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.DvcsScanner.processCommitStream(DvcsScanner.java:534) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.DvcsScanner.processBranch(DvcsScanner.java:492) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.DvcsScanner.processRevisions(DvcsScanner.java:270) [fisheye.jar:?]
      	... 16 more
      Caused by: com.atlassian.utils.process.ProcessException: While executing: "git show -m --no-abbrev --raw --stdin --no-renames --pretty=format:C:%H%nP:%P%nA:%aN%nE:%aE%nR:%cN%nF:%cE%nD:%at%nS:%s%nB:%b%n@@fe_body_end@@" in [D:\Atlassian\Fisheye\home\var\cache\doc_test\clone]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeCommand(DvcsContext.java:263) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeCommand(DvcsContext.java:235) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeWithInput(DvcsContext.java:224) [fisheye.jar:?]
      	... 21 more
      Caused by: com.atlassian.utils.process.ProcessException: com.atlassian.fisheye.dvcs.handler.DvcsProcessRuntimeException: com.atlassian.fisheye.dvcs.handler.DvcsProcessException: Error while communicating with VCS: E: unsupported filetype "C:/Windows/TEMP/lfVyZa_wo rdüdoc.docx"
          fatal: unable to read files to diff
          
      	at com.atlassian.utils.process.ExternalProcessImpl.handleHandlerError(ExternalProcessImpl.java:273) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.utils.process.ExternalProcessImpl.access$300(ExternalProcessImpl.java:18) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.utils.process.ExternalProcessImpl$3.doTask(ExternalProcessImpl.java:317) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.utils.process.LatchedRunnable.run(LatchedRunnable.java:36) [atlassian-processutils-1.5.14.jar:?]
      	... 3 more
      Caused by: com.atlassian.fisheye.dvcs.handler.DvcsProcessRuntimeException: com.atlassian.fisheye.dvcs.handler.DvcsProcessException: Error while communicating with VCS: E: unsupported filetype "C:/Windows/TEMP/lfVyZa__wo rdüdoc.docx"
          fatal: unable to read files to diff
          
      	at com.atlassian.fisheye.git.GitScanner$13.processCommit(GitScanner.java:1540) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.client.GitChangeParser.handleCommit(GitChangeParser.java:235) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.client.GitChangeParser.scanPaths(GitChangeParser.java:165) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.client.GitChangeParser.processLine(GitChangeParser.java:63) [fisheye.jar:?]
      	at com.atlassian.utils.process.LineOutputHandler.process(LineOutputHandler.java:70) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsLineOutputHandler.process(DvcsLineOutputHandler.java:66) [fisheye.jar:?]
      	at com.atlassian.utils.process.PluggableProcessHandler.processOutput(PluggableProcessHandler.java:127) [atlassian-processutils-1.5.14.jar:?]
      	at com.cenqua.fisheye.util.NamedProcessHandler.processOutput(NamedProcessHandler.java:31) [fisheye.jar:?]
      	at com.atlassian.utils.process.ExternalProcessImpl$3.doTask(ExternalProcessImpl.java:315) [atlassian-processutils-1.5.14.jar:?]
      	... 4 more
      Caused by: com.atlassian.fisheye.dvcs.handler.DvcsProcessException: Error while communicating with VCS: E: unsupported filetype "C:/Windows/TEMP/lfVyZa__wo rdüdoc.docx"
          fatal: unable to read files to diff
          
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeWithInput(DvcsContext.java:226) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeCommand(DvcsContext.java:212) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner.populateDiffInfo(GitScanner.java:1463) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner.processGitCommit(GitScanner.java:873) [fisheye.jar:?]
      	at com.atlassian.fisheye.git.GitScanner$13.processCommit(GitScanner.java:1538) [fisheye.jar:?]
      	... 12 more
      Caused by: com.atlassian.utils.process.ProcessException: While executing: "git diff --no-renames --no-abbrev --full-index -U0 fcffd6c740ee334d2ba73a87ffcbbec0b035b883..f8b1cc0b78858eee710c428d62c4feaed281050e" in [D:\Atlassian\Fisheye\home\var\cache\doc_test\clone]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeCommand(DvcsContext.java:263) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeCommand(DvcsContext.java:235) [fisheye.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeWithInput(DvcsContext.java:224) [fisheye.jar:?]
      	... 16 more
      Caused by: com.atlassian.utils.process.ProcessException: Non-zero exit code: 128
      	at com.atlassian.utils.process.PluggableProcessHandler.complete(PluggableProcessHandler.java:69) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.utils.process.ExternalProcessImpl.wrapUpProcess(ExternalProcessImpl.java:509) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.utils.process.ExternalProcessImpl.finish(ExternalProcessImpl.java:423) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.utils.process.ExternalProcessImpl.execute(ExternalProcessImpl.java:378) [atlassian-processutils-1.5.14.jar:?]
      	at com.atlassian.fisheye.dvcs.client.DvcsContext.executeCommand(DvcsContext.java:250) [fisheye.jar:?]
      	... 18 more

      Workaround

      Follow the instructions on https://confluence.atlassian.com/fishkb/fisheye-fails-to-index-a-repository-and-throws-unsupported-filetype-unable-to-read-files-to-diff-858758674.html

      FishEye is passing in quotes to the astextplain script which results in the file extension not being matched. For example, the file extension is being passed in as .docx" which does not match .docx. Modifying astextplain can workaround this, simply add | .docx\" to the list:

      *.docx | *.DOCX | *.docm | *.DOCM | *.dotm | *.DOTM| .docx\")

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              jethomas Jeff Thomas
              Votes:
              2 Vote for this issue
              Watchers:
              7 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: