Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-3561

Acceptor comparison for core is case specific

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Minor
    • AMQ 7.8.0.CR2
    • AMQ 7.6.0.GA, AMQ 7.7.0.CR1
    • operator
    • None

    Description

      In testing acceptor functionality rvais saw the following acceptor definition when using amqp, openwire and core:

      <acceptor name="all">tcp://ex-aao-ss-1.ex-aao-hdls-svc.broker-operator-ssl.svc.cluster.local:61616?protocols=CORE,AMQP,OPENWIRE,CORE;sslEnabled=true;keyStorePath=/etc/ex-aao-all-secret-volume/broker.ks;keyStorePassword=password;trustStorePath=/etc/ex-aao-all-secret-volume/client.ts;trustStorePassword=password;enabledCipherSuites=SSL_RSA_WITH_RC4_128_SHA,SSL_DH_anon_WITH_3DES_EDE_CBC_SHA;enabledProtocols=TLSv1,TLSv1.1,TLSv1.2;sslProvider=JDK;anycastPrefix=jms.topic.;multicastPrefix=/queue/;tcpSendBufferSize=1048576;tcpReceiveBufferSize=1048576;useEpoll=true;amqpCredits=1000;amqpMinCredits=300</acceptor>
      

      Note the following snippet:

      protocols=CORE,AMQP,OPENWIRE,CORE
      

      Here CORE is specified twice incorrectly. Looking at the code we see the following:

      		if ensureCOREOn61616Exists &&
      			(61616 == acceptor.Port) &&
      			!strings.Contains(acceptor.Protocols, "CORE") {
      			acceptorEntry = acceptorEntry + ",CORE"
      		}
      

      Where a check is made to ensure we have core protocol available on 61616 for clustering purposes. However, a ToLower is not done on the string first likely causing the string comparison to fail.

      Attachments

        Activity

          People

            rhn-support-rkieley Roderick Kieley
            rhn-support-rkieley Roderick Kieley
            Roman Vais Roman Vais
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: