In Fisheye, SVN indexing fails - The node XXXX was not found
プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。
Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.
*Fisheye および Crucible は除く
問題
In Fisheye, when indexing a Subversion repository that contains a filename with special characters (such as Cyrillic characters), the indexing fails.
atlassian-fisheye-YYYY-MM-DD.log
に次のメッセージが出力される。
ERROR [InitPing1 XXXX ] fisheye BaseRepositoryScanner-handleSlurpException - Problem processing revisions from repo XXXX due to class com.cenqua.fisheye.rep.RepositoryClientException - org.apache.subversion.javahl.ClientException: svn: E155010: The node 'XXXX' was not found.
com.cenqua.fisheye.rep.RepositoryClientException: org.apache.subversion.javahl.ClientException: svn: E155010: The node 'XXXX' was not found.
at com.cenqua.fisheye.svn.SvnThrottledClient.executeNoThrottle(SvnThrottledClient.java:186)
at com.cenqua.fisheye.svn.SvnThrottledClient.execute(SvnThrottledClient.java:155)
at com.cenqua.fisheye.svn.SvnThrottledClient.info(SvnThrottledClient.java:110)
at com.cenqua.fisheye.svn.RepositoryWalker.visitLocalCheckout(RepositoryWalker.java:235)
at com.cenqua.fisheye.svn.RepositoryWalker.visitLocalCheckout(RepositoryWalker.java:273)
at com.cenqua.fisheye.svn.RepositoryWalker.visitLocalCheckout(RepositoryWalker.java:273)
at com.cenqua.fisheye.svn.RepositoryWalker.visitLocalCheckout(RepositoryWalker.java:273)
at com.cenqua.fisheye.svn.RepositoryWalker.checkOutAndWalk(RepositoryWalker.java:215)
at com.cenqua.fisheye.svn.RepositoryWalker.walkBranchesDir(RepositoryWalker.java:195)
at com.cenqua.fisheye.svn.RepositoryWalker.walkDir(RepositoryWalker.java:91)
at com.cenqua.fisheye.svn.RepositoryWalker.walkRemote(RepositoryWalker.java:129)
at com.cenqua.fisheye.svn.RepositoryWalker.walkRoot(RepositoryWalker.java:112)
at com.cenqua.fisheye.svn.RepositoryWalker.walkDir(RepositoryWalker.java:104)
at com.cenqua.fisheye.svn.RepositoryWalker.walkRemote(RepositoryWalker.java:129)
at com.cenqua.fisheye.svn.RepositoryWalker.walkRoot(RepositoryWalker.java:112)
at com.cenqua.fisheye.svn.RepositoryWalker.walkDir(RepositoryWalker.java:104)
at com.atlassian.fisheye.svn.Svn2Scanner$4.perform(Svn2Scanner.java:452)
at com.atlassian.fisheye.svn.Svn2Scanner$4.perform(Svn2Scanner.java:445)
at com.cenqua.fisheye.cache.BaseRevisionCache.withDbWriteLock(BaseRevisionCache.java:1014)
at com.atlassian.fisheye.svn.Svn2Scanner.doInitialImport(Svn2Scanner.java:445)
at com.atlassian.fisheye.svn.Svn2Scanner.doChangesetScan(Svn2Scanner.java:282)
at com.atlassian.fisheye.svn.Svn2Scanner.slurpRepository(Svn2Scanner.java:205)
at com.atlassian.fisheye.svn.Svn2Scanner.doSlurpTransaction(Svn2Scanner.java:182)
at com.cenqua.fisheye.rep.BaseRepositoryScanner.ping(BaseRepositoryScanner.java:73)
at com.cenqua.fisheye.rep.BaseRepositoryEngine.doSlurp(BaseRepositoryEngine.java:86)
at com.cenqua.fisheye.rep.RepositoryEngine.slurp(RepositoryEngine.java:414)
at com.cenqua.fisheye.rep.ping.IndexingPingRequest.doRequest(IndexingPingRequest.java:27)
at com.cenqua.fisheye.rep.ping.IncrementalPingRequest.doRequest(IncrementalPingRequest.java:30)
at com.cenqua.fisheye.rep.ping.PingRequest$1.run(PingRequest.java:55)
at com.cenqua.fisheye.util.NamedExecution.run(NamedExecution.java:27)
at com.cenqua.fisheye.rep.ping.PingRequest.process(PingRequest.java:52)
at com.cenqua.fisheye.rep.RepositoryHandle.processPingRequests(RepositoryHandle.java:213)
at com.cenqua.fisheye.rep.RepositoryHandle.access$100(RepositoryHandle.java:57)
at com.cenqua.fisheye.rep.RepositoryHandle$2.run(RepositoryHandle.java:169)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
原因
This is caused by an incorrect locale setting in the operating system. Fisheye only supports UTF-8.
ソリューション
Ensure that the locale for the user running Fisheye is set to en_US.UTF-8
.
In Linux, you can check this using the locale
command, and the locale can be set with the LC_ALL
environment variable.
Example output of the locale
command with the correct settings:
$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=en_US.UTF-8