Advertencia de causa UDF: CachedKafkaConsumer no se está ejecutando en UninterruptibleThread (KAFKA-1894)

En un habitualstructure_kafka_wordcount.py código,

Cuando divido líneas en palabras porudf como abajo,

my_split = udf(lambda x: x.split(' '), ArrayType(StringType()))

words = lines.select(
    explode(
        my_split(lines.value)
    )
)

la advertencia seguirá mostrando:

WARN CachedKafkaConsumer: CachedKafkaConsumer no se ejecuta en UninterruptibleThread. Puede bloquearse cuando los métodos de CachedKafkaConsumer se interrumpen debido a KAFKA-1894

Por otro lado, cuando divido las líneas en palabras porpyspark.sql.functions.splitTodo funciona bien.

words = lines.select(
    explode(
        split(lines.value, ' ') 
    ) 
)

¿Por qué sucedió esto y cómo solucionar la advertencia?

Este es el código que intento ejecutar en la práctica:

pattern = "(.+) message repeated (\\d) times: \\[ (.+)\\]"
prog = re.compile(pattern)


def _unfold(x):
    ret = []
    result = prog.match(x)
    if result:
        log = " ".join((result.group(1), result.group(3)))
        times = result.group(2)
        for _ in range(int(times)):
            ret.append(log)
    else:
        ret.append(x)

    return ret

_udf = udf(lambda x: _unfold(x), ArrayType(StringType()))
lines = lines.withColumn('value', explode(_udf(lines['value'])))

Respuestas a la pregunta(1)

Su respuesta a la pregunta