code: def wait_for_thrift_interface(self, **kwargs):
          
          if self.cluster.version() >= '4':
              return;
  
          self.watch_log_for("Listening for thrift clients...", **kwargs)
  
          thrift_itf = self.network_interfaces['thrift']
          if not common.check_socket_listening(thrift_itf, timeout=30):
              warnings.warn("Thrift interface {}:{} is not listening after 30 seconds, node may have failed to start.".format(thrift_itf[0], thrift_itf[1]))
docs: Waits for the Thrift interface to be listening.
  
          Emits a warning if not listening after 30 seconds.