zoukankan      html  css  js  c++  java
  • Pig Mongo 连接串多个host报错

    问题描述

    原来pig作业中的连接器只指定了一个primary host,为了防止mongo服务器主从切换时能够继续使用,于是想利用replica set的特性,将多个host传给mongo连接器:例如 ‘mongodb://user:passwd@host1:port1,host2:port2/’
    但是出现了如下的语法错误

    pig script failed to validate: java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: .... 
    

    解决方法

    java.net.URI可能不支持连接字符串中的逗号。我们通过在连接字符串中只包含一组host:port 并在连接串末尾指定 replicaSet=<replicaSetName> 来避免这个问题, 例如:

    'mongodb://user:pass@host1:port1/my_db.my_collection?ssl=true&replicaSet=<replicaSetName>'
    

    Java驱动程序会自动发现副本集中的其他节点,因此只需要指定URI中的一个主节点(即使不是primary节点)即可。

  • 相关阅读:
    视频分解图片,图片合成视频
    获取图片中指定区域图片
    CALayer alpha mask not working
    多媒体编程ios摄像头图像抓取工具类
    10月17日
    10月16日
    10月15日
    10月14日
    10月13日
    10月12日
  • 原文地址:https://www.cnblogs.com/lestatzhang/p/10611348.html
Copyright © 2011-2022 走看看