Uploaded image for project: 'Geode'
  1. Geode
  2. GEODE-7930

Endpoint name truncated when exceeds 99 characters causing failed connections

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.13.0
    • Component/s: native client
    • Labels:
      None

      Description

      When subscription is "enabled" in native client then the server endpoint name (host name + port) is truncated if exceeds 99 characters resulting with failed connections towards servers (see logs in attachment). When subscription is "disabled" everything worked fine for what I tested. Also I performed some tests with java client and haven't found such limitation on endpoint name length.

      Endpoint name (e.g. server host name) + port is truncated within function addEP:

      TcrEndpoint* ThinClientPoolDM::addEP(ServerLocation& serverLoc) {
        std::string serverName = serverLoc.getServerName();
        int port = serverLoc.getPort();
        char endpointName[100];
        std::snprintf(endpointName, 100, "%s:%d", serverName.c_str(), port);
      
        return addEP(endpointName);
      }
      

      Maximum length of FQDN according to RFC 2181:

      The DNS itself places only one restriction on the particular labels
      that can be used to identify resource records. That one restriction
      relates to the length of the label and the full name. The length of
      any one label is limited to between 1 and 63 octets. A full domain
      name is limited to 255 octets (including the separators).

      Due to above requirement the function addEP should not limit or truncate endpoint name.

        Attachments

        1. locator.log
          29 kB
          Jakov Varenina
        2. native_client_error.log
          16 kB
          Jakov Varenina
        3. server.log
          217 kB
          Jakov Varenina

          Issue Links

            Activity

              People

              • Assignee:
                jvarenina Jakov Varenina
                Reporter:
                jvarenina Jakov Varenina
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h 20m
                  1h 20m