【问题标题】:MarkLogic : Error while importing files using MLCPMarkLogic:使用 MLCP 导入文件时出错
【发布时间】:2015-06-29 10:37:22
【问题描述】:

我尝试使用以下命令在生产环境中运行的 MarkLogic 服务器中使用 MarkLogic 内容泵导入文件。

C:\Users\Admin\Desktop\mlcp-1.3-3\bin>mlcp.bat import -host localhost -port 8891 -username admin -password admin -mode local -input_file_type archive -input_file_path /d:/NewFolder/

输入文件路径同时包含二进制文件和 XML 文件。

"D:\NewFolder\20150626200126+0800-000000-BINARY.zip"
"D:\NewFolder\20150626200126+0800-000001-XML.zip"

当我尝试在命令提示符下运行导入命令时。我收到了以下我不熟悉的回复。

15/06/29 16:53:11 INFO contentpump.ContentPump: Hadoop library version: 2.6.0
15/06/29 16:53:11 INFO contentpump.LocalJobRunner: Content type: XML
15/06/29 16:53:11 ERROR contentpump.ContentPump: Error running a ContentPump job

java.lang.RuntimeException: Error while running command to get file permissions
: ExitCodeException exitCode=-1073741515:
    at org.apache.hadoop.util.Shell.runCommand(Shell.java:538)
    at org.apache.hadoop.util.Shell.run(Shell.java:455)
    at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:
715)
    at org.apache.hadoop.util.Shell.execCommand(Shell.java:808)
    at org.apache.hadoop.util.Shell.execCommand(Shell.java:791)
    at org.apache.hadoop.fs.FileUtil.execCommand(FileUtil.java:1097)
    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
loadPermissionInfo(RawLocalFileSystem.java:582)
    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
getPermission(RawLocalFileSystem.java:557)
    at org.apache.hadoop.fs.LocatedFileStatus.<init>(LocatedFileStatus.java:
42)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1699)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1681)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.singleThreadedL
istStatus(FileInputFormat.java:303)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(File
InputFormat.java:264)
    at com.marklogic.contentpump.FileAndDirectoryInputFormat.getSplits(FileA
ndDirectoryInputFormat.java:80)
    at com.marklogic.contentpump.ArchiveInputFormat.getSplits(ArchiveInputFo
rmat.java:56)
    at com.marklogic.contentpump.LocalJobRunner.run(LocalJobRunner.java:128)

    at com.marklogic.contentpump.ContentPump.runJobLocally(ContentPump.java:
307)
    at com.marklogic.contentpump.ContentPump.runCommand(ContentPump.java:204
)
    at com.marklogic.contentpump.ContentPump.main(ContentPump.java:67)

    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
loadPermissionInfo(RawLocalFileSystem.java:620)
    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
getPermission(RawLocalFileSystem.java:557)
    at org.apache.hadoop.fs.LocatedFileStatus.<init>(LocatedFileStatus.java:
42)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1699)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1681)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.singleThreadedL
istStatus(FileInputFormat.java:303)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(File
InputFormat.java:264)
    at com.marklogic.contentpump.FileAndDirectoryInputFormat.getSplits(FileA
ndDirectoryInputFormat.java:80)
    at com.marklogic.contentpump.ArchiveInputFormat.getSplits(ArchiveInputFo
rmat.java:56)
    at com.marklogic.contentpump.LocalJobRunner.run(LocalJobRunner.java:128)

    at com.marklogic.contentpump.ContentPump.runJobLocally(ContentPump.java:
307)
    at com.marklogic.contentpump.ContentPump.runCommand(ContentPump.java:204
)
    at com.marklogic.contentpump.ContentPump.main(ContentPump.java:67)
java.lang.RuntimeException: Error while running command to get file        permissions
: ExitCodeException exitCode=-1073741515:
    at org.apache.hadoop.util.Shell.runCommand(Shell.java:538)
    at org.apache.hadoop.util.Shell.run(Shell.java:455)
    at org.apache.hadoop.util.Shell$ShellCommandExecutor.execute(Shell.java:
715)
    at org.apache.hadoop.util.Shell.execCommand(Shell.java:808)
    at org.apache.hadoop.util.Shell.execCommand(Shell.java:791)
    at org.apache.hadoop.fs.FileUtil.execCommand(FileUtil.java:1097)
    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
loadPermissionInfo(RawLocalFileSystem.java:582)
    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
getPermission(RawLocalFileSystem.java:557)
    at org.apache.hadoop.fs.LocatedFileStatus.<init>(LocatedFileStatus.java:
42)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1699)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1681)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.singleThreadedL
istStatus(FileInputFormat.java:303)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(File
InputFormat.java:264)
    at com.marklogic.contentpump.FileAndDirectoryInputFormat.getSplits(FileA
ndDirectoryInputFormat.java:80)
    at com.marklogic.contentpump.ArchiveInputFormat.getSplits(ArchiveInputFo
rmat.java:56)
    at com.marklogic.contentpump.LocalJobRunner.run(LocalJobRunner.java:128)

    at com.marklogic.contentpump.ContentPump.runJobLocally(ContentPump.java:
307)
    at com.marklogic.contentpump.ContentPump.runCommand(ContentPump.java:204
)
    at com.marklogic.contentpump.ContentPump.main(ContentPump.java:67)

    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
loadPermissionInfo(RawLocalFileSystem.java:620)
    at org.apache.hadoop.fs.RawLocalFileSystem$DeprecatedRawLocalFileStatus.
getPermission(RawLocalFileSystem.java:557)
    at org.apache.hadoop.fs.LocatedFileStatus.<init>(LocatedFileStatus.java:
42)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1699)
    at org.apache.hadoop.fs.FileSystem$4.next(FileSystem.java:1681)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.singleThreadedL
istStatus(FileInputFormat.java:303)
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.listStatus(File
InputFormat.java:264)
    at com.marklogic.contentpump.FileAndDirectoryInputFormat.getSplits(FileA
ndDirectoryInputFormat.java:80)
    at com.marklogic.contentpump.ArchiveInputFormat.getSplits(ArchiveInputFo
rmat.java:56)
    at com.marklogic.contentpump.LocalJobRunner.run(LocalJobRunner.java:128)

    at com.marklogic.contentpump.ContentPump.runJobLocally(ContentPump.java:
307)
    at com.marklogic.contentpump.ContentPump.runCommand(ContentPump.java:204
)
    at com.marklogic.contentpump.ContentPump.main(ContentPump.java:67)

谁能帮我解决这个问题?

谢谢。

【问题讨论】:

  • “/d:/NewFolder/”是否正确?
  • @sss4r 是的,如果我从本地运行,上面的 imort 命令可以正常工作
  • 啊,好的,只是检查一下——我只用过几次 mlcp,而且那个语法对我来说看起来很陌生。
  • 您使用的是哪个版本的 MLCP,针对哪个版本的 MarkLogic?

标签: hadoop marklogic mlcp


【解决方案1】:

错误消息似乎与此处列出的类似:Hadoop error stalling job reduce process

解决方案是增加堆大小。将-Xmx512m 添加到名为JVM_OPTS..的环境变量中。

HTH!

【讨论】:

    【解决方案2】:

    我在学习 MarkLogic 大学课程 XQuery II 时遇到了同样的错误。 他们为课程提供的虚拟机非常慢,所以我在 Parallels 中设置了自己的 Windows 7 虚拟机。

    当我从第 6 单元运行它时: mlcp.bat import -host localhost -port 8012 -username admin -password admin -input_file_path C:\mls-developer-2\socialmedia\content\enriched -mode local -input_file_pattern "disqus.*\.xml" -output_uri_replace "C:/mls-developer-2/socialmedia/content/enriched, 'socialmedia/disqus'"

    我遇到了与您看到的相同的错误... 正如一些帖子所建议的那样,我尝试设置 _JAVA_OPTIONS 以增加 JVM 可用的内存,但这没有效果。

    我最终通过将命令更改为: mlcp.bat import -host localhost -port 8012 -username admin -password admin -input_file_path "C:\mls-developer-2\socialmedia\content\enriched\*.xml" -mode local -output_uri_replace "C:/mls-developer-2/socialmedia/content/enriched, 'socialmedia/disqus'"

    关于 input_file_pattern "disqus.*.xml" 有一些它不喜欢的地方。在你的情况下看起来不一样,但我想我会在这里为其他人发布我的问题。

    【讨论】:

      【解决方案3】:

      输入文档是使用MLCP导出内容的结果吗?这似乎是-input_file_type 存档的目的。如果这不是文档的来源,请尝试-input_file_type documents -input_compressed true

      【讨论】:

      • 是的,输入文档是使用MLCP导出的,它既有文件又有元数据,并且是从不同的服务器导出的。
      • 两种环境中的 MarkLogic 版本是否相同?什么版本?
      • 文档中的Windows MLCP example 显示“-input_file_path C:\space\bill”——你可以试试这个而不是“-input_file_path /d:/NewFolder/”吗? “运行命令获取文件权限时出错”表明 MLCP 在查找或读取输入文件时遇到问题。
      • 在 MLCP 文档中,他们还提到了 /c:/gs/import/filename 我的使用方式。奇怪的是导入命令在我导出的服务器上运行良好。
      • 两个环境都安装了 Marklogic 7.x 版
      猜你喜欢
      • 2023-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      相关资源
      最近更新 更多