@@ -261,16 +261,21 @@ func (c *controlConn) connect(hosts []*HostInfo) error {
261261 var conn * Conn
262262 var err error
263263 for _ , host := range hosts {
264+ connAddr , err := host .ConnectAddress ()
265+ if err != nil {
266+ c .session .logger .Printf ("gocql: %v\n " , err )
267+ continue
268+ }
264269 conn , err = c .session .dial (c .session .ctx , host , & cfg , c )
265270 if err != nil {
266- c .session .logger .Printf ("gocql: unable to dial control conn %v:%v: %v\n " , host . ConnectAddress () , host .Port (), err )
271+ c .session .logger .Printf ("gocql: unable to dial control conn %v:%v: %v\n " , connAddr , host .Port (), err )
267272 continue
268273 }
269274 err = c .setupConn (conn )
270275 if err == nil {
271276 break
272277 }
273- c .session .logger .Printf ("gocql: unable setup control conn %v:%v: %v\n " , host . ConnectAddress () , host .Port (), err )
278+ c .session .logger .Printf ("gocql: unable setup control conn %v:%v: %v\n " , connAddr , host .Port (), err )
274279 conn .Close ()
275280 conn = nil
276281 }
@@ -300,9 +305,13 @@ func (c *controlConn) setupConn(conn *Conn) error {
300305 }
301306
302307 host = c .session .ring .addOrUpdate (host )
308+ connAddr , err := host .ConnectAddress ()
309+ if err != nil {
310+ return err
311+ }
303312
304313 if c .session .cfg .filterHost (host ) {
305- return fmt .Errorf ("host was filtered: %v" , host . ConnectAddress () )
314+ return fmt .Errorf ("host was filtered: %v" , connAddr )
306315 }
307316
308317 if err := c .registerEvents (conn ); err != nil {
@@ -423,16 +432,21 @@ func (c *controlConn) attemptReconnectToAnyOfHosts(hosts []*HostInfo) (*Conn, er
423432 var conn * Conn
424433 var err error
425434 for _ , host := range hosts {
435+ connAddr , err := host .ConnectAddress ()
436+ if err != nil {
437+ c .session .logger .Printf ("gocql: %v\n " , err )
438+ continue
439+ }
426440 conn , err = c .session .connect (c .session .ctx , host , c )
427441 if err != nil {
428- c .session .logger .Printf ("gocql: unable to dial control conn %v:%v: %v\n " , host . ConnectAddress () , host .Port (), err )
442+ c .session .logger .Printf ("gocql: unable to dial control conn %v:%v: %v\n " , connAddr , host .Port (), err )
429443 continue
430444 }
431445 err = c .setupConn (conn )
432446 if err == nil {
433447 break
434448 }
435- c .session .logger .Printf ("gocql: unable setup control conn %v:%v: %v\n " , host . ConnectAddress () , host .Port (), err )
449+ c .session .logger .Printf ("gocql: unable setup control conn %v:%v: %v\n " , connAddr , host .Port (), err )
436450 conn .Close ()
437451 conn = nil
438452 }
0 commit comments