Marklogic内容泵没有可用的服务器问题

时间:2019-07-26 20:00:55

标签: marklogic marklogic-9 mlcp

我在集群上有marklogic 9。我正在尝试从服务器上的一个集合到另一个集合执行mlcp。

请在下面找到随附的代码

            MlcpBean mlcpBean =  new MlcpBean(); 
            mlcpBean.setCommand("COPY");
            mlcpBean.setInput_database("somehost");

            mlcpBean.setCollection_filter("somecollection");
            mlcpBean.setInput_host("somehost"); 
            mlcpBean.setInput_port(some port);


            mlcpBean.setInput_username("some user id");


            mlcpBean.setInput_password("some password");

           String[] args1 = mlcpBean.buildArgs(); 

      String[] expandedArgs =
      OptionsFileUtil.expandArguments(args1); 
      // Invoke mlcp
      ContentPump.runCommand(expandedArgs); }



    When I run the above  class it gives me the following error


    01:01:00.104 [scheduling-1] WARN  c.m.mapreduce.MarkLogicInputFormat - Unable to connect to "********.com" to query source information

    01:01:00.104 [scheduling-1] ERROR c.m.contentpump.LocalJobRunner - Error getting input splits: 






    01:01:00.104 [scheduling-1] ERROR c.m.contentpump.LocalJobRunner - Unable to query source information, no usable hostname found.

它甚至没有连接到主机。

我已经从另一个不在mlcp上运行但使用databaseclientfactory的程序验证可以建立连接

我也无法验证-ssl_protocol是否为TLSv1.2

有人可以帮助我解决这个问题。

3 个答案:

答案 0 :(得分:1)

您似乎正在使用MLCP JAR中的类来构建新的Java程序。实际上,不支持该方法,这使您有可能在将来的版本中更改某些未声明的事情。如果这是一次性副本,则可以将MLCP用作命令行工具;否则,可以使用MLCP。如果这是您打算长期使用的功能,则应使用MarkLogic的Data Movement SDK,该功能用于此类任务。

如果您在使用DMSDK时遇到问题,建议您尝试一下,然后发布一个新问题。

答案 1 :(得分:0)

感谢戴夫。...一定会尝试

答案 2 :(得分:0)

我认为通过设置setInput_ssl(boolean)和setOutput_ssl(boolean)可以在mlcp上解决问题。

相关问题