Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-55439

local sharding jstests pass/fail depending on Internet Service Provider

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Major - P3 Major - P3
    • None
    • None
    • Testing Infrastructure
    • None
    • Server Security
    • ALL
    • 136

    Description

      My laptop is plugged directly into my cable modem to fix Zoom issues.
      Now I can't run local JSTests on my laptop. Our JStests are have made some pretty weird choices in how they set themselves up. The --suite=sharding test replica set processes bind to the EXTERNAL-FACING ip addresses of the local host! That's already a problem. This means that during the duration of my jstest, I'm serving one or more hacked up no-auth mongod test-command-enabled instances to the actual whole world, on the well-known mongod port. I think my OS will block incoming but still! That's what the entire localhost 127/8 subnet is for.

      Here's the RSConfig lines logged by the test:

      [js_test:resharding_metrics] ReplSetTest made initial connection to node: connection to aa-bb-cc-dd.isp.com:20023
      [js_test:resharding_metrics] ReplSetTest startSet, nodes: [
      [js_test:resharding_metrics] 	connection to aa-bb-cc-dd.isp.com:20022,
      [js_test:resharding_metrics] 	connection to aa-bb-cc-dd.isp.com:20023
      [js_test:resharding_metrics] ]
      [js_test:resharding_metrics] ReplSetTest startSet took 6235ms for 2 nodes.
      [js_test:resharding_metrics] Waiting for the config server to finish starting up.
      

      That's bad enough.

      But why won't the test work? Because my ISP has just kind of assigned me this hostname "aa-bb-cc-dd.isp.com" with DHCP but there's no DNS behind it. If I try to connect to aa-bb-cc-dd.isp.com by name, it doesn't exist (NXDOMAIN).

      $ hostname
      aa-bb-cc-dd.isp.com
      $ host $(hostname)
      Host aa-bb-cc-dd.isp.com not found: 3(NXDOMAIN)
      

      This is very fragile. If I unplug the ethernet cable I can run jstests again. The cluster hosts can't find each other despite being started by the same launcher at the same time on the same host, and all because of some DHCP settings from my ISP.

      That's a problem. This is several problems all at once, really.

      (not really sure which team gets this)

      Attachments

        Activity

          People

            backlog-server-security Backlog - Security Team
            billy.donahue@mongodb.com Billy Donahue
            Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: