Uploaded image for project: 'Debezium'
  1. Debezium
  2. DBZ-5673

SQLServer connector not honoring dynamic port for connection

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Duplicate
    • Icon: Major Major
    • None
    • None
    • None
    • None
    • False
    • None
    • False

      In order to make your issue reports as actionable as possible, please provide the following information, depending on the issue type.

      Bug report

      For bug reports, provide this information, please:

      What Debezium connector do you use and what version?

      io.debezium:debezium-connector-sqlserver:1.9.0.Final

      What is the connector configuration?

       Builder commonProperties = io.debezium.config.Configuration.create()
                      //unique name for connector instance
                      .with(CdcServiceConstants.CONNECTOR_INSTANCE_NAME_PROPERTY, connectorInstanceName)
                      .with(CdcServiceConstants.CONNECTOR_CLASS_PROPERTY, connectorClass)
                      //to store offsets of mssql on our local file system
                      .with(CdcServiceConstants.CONNECTOR_OFFSET_CLASS_PROPERTY, connectorOffsetClass)
                      .with(CdcServiceConstants.CONNECTOR_OFFSET_FILEPATH_PROPERTY, connectorOffsetFilePath)
                      .with(CdcServiceConstants.CONNECTOR_OFFSET_FLUSH_INTERVAL_PROPERTY, offsetFlushInterval)
                      .with(CdcServiceConstants.DATABASE_USERNAME_PROPERTY, dBUserName)
                      .with(CdcServiceConstants.DATABASE_PASSWORD_PROPERTY, dBPassword)
                      .with(CdcServiceConstants.DATABASE_NAME_PROPERTY, dBName)
                      .with(CdcServiceConstants.DATABASE_TABLE_INCLUDE_LIST, dbTableNames)
                      .with(CdcServiceConstants.INCLUDE_SCHEMA_CHANGE_PROPERTY, includeSchemaChange)
                      .with(CdcServiceConstants.DATABASE_SERVER_NAME_PROPERTY, "server_"+dBHost)
                      //properties to configure the database history
                      .with(CdcServiceConstants.DATABASE_HISTORY_CLASS_PROPERTY, connectorDatabaseHistoryClass)
                      .with(CdcServiceConstants.DATABASE_HISTORY_FILEPATH_PROPERTY, connectorDatabaseHistoryFilePath);
                      String[] hostValues = dBHost.split(":");
                      if(hostValues.length > 1 && !hostValues[1].isEmpty())

      {                     dBHost = hostValues[0];                     dBPort = hostValues[1];                     commonProperties.with(CdcServiceConstants.DATABASE_PORT_PROPERTY, dBPort);                 }

      //                commonProperties.with(CdcServiceConstants.DATABASE_PORT_PROPERTY, "49846");
                      commonProperties.with("database.instance", "PADB82");
              return  commonProperties.with(CdcServiceConstants.DATABASE_HOSTNAME_PROPERTY, dBHost)

       

      Constants Defination

       

          public final static String CONNECTOR_INSTANCE_NAME_PROPERTY = "name";
          public final static String CONNECTOR_CLASS_PROPERTY = "connector.class";
          public final static String CONNECTOR_OFFSET_CLASS_PROPERTY = "offset.storage";
          public final static String CONNECTOR_OFFSET_FILEPATH_PROPERTY = "offset.storage.file.filename";
          public final static String CONNECTOR_OFFSET_FLUSH_INTERVAL_PROPERTY = "offset.flush.interval.ms";
          public final static String DATABASE_HOSTNAME_PROPERTY = "database.hostname";
          public final static String DATABASE_PORT_PROPERTY = "database.port";
          public final static String DATABASE_USERNAME_PROPERTY = "database.user";
          public final static String DATABASE_PASSWORD_PROPERTY = "database.password";
          public final static String DATABASE_NAME_PROPERTY = "database.dbname";
          public final static String DATABASE_SERVER_NAME_PROPERTY = "database.server.name";
          public final static String INCLUDE_SCHEMA_CHANGE_PROPERTY = "include.schema.changes";
          public final static String DATABASE_HISTORY_CLASS_PROPERTY = "database.history";
          public final static String DATABASE_HISTORY_FILEPATH_PROPERTY = "database.history.file.filename";
          public final static String DATABASE_TABLE_INCLUDE_LIST = "table.include.list";

      What is the captured database version and mode of depoyment?

      (E.g. on-premises, with a specific cloud provider, etc.)

      On-Prem, SQLServer 15.0.2000.5

      What behaviour do you expect?

      It should work without specifying the port number which is dynamic

      What behaviour do you see?

      It doesn't work, complain about timeout

      Do you see the same behaviour using the latest relesead Debezium version?

      (Ideally, also verify with latest Alpha/Beta/CR version)

      Need to check

      Do you have the connector logs, ideally from start till finish?

      (You might be asked later to provide DEBUG/TRACE level log)

      Yes

      How to reproduce the issue using our tutorial deployment?

      Just connect with Named instance for SQLServer with the above config

      Feature request or enhancement

      For feature requests or enhancements, provide this information, please:

      Which use case/requirement will be addressed by the proposed feature?

      <Your answer>

      Implementation ideas (optional)

      <Your answer>

            Unassigned Unassigned
            vyas.vaibhav Vaibhav Vyas (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: