Hi Igor,

"Universal Local Runner" is a term we've used in the past for a runner that
executes your pipeline locally. It's similar to each SDK's DirectRunner,
except that by leveraging portability we should only need one
implementation, making it "universal". I don't think we've been using that
term recently, I'm sorry I mentioned it in that talk and confused things.

The Python DirectRunner is basically the ULR since it is a portable runner.
Unfortunately there's one big caveat: Python's portable DirectRunner (also
called FnApiRunner) doesn't support streaming right now. So when you use
the DirectRunner for a streaming Python pipeline, it ends up running on the
Python SDK's non-portable DirectRunner. I suspect that's the issue you're
running into here: SqlTransform and KafkaIO in Python both will only work
on portable runners, but you likely are trying to run a streaming pipeline
if you're using KafkaIO.

It's hard to tell for sure from that error message though, could you share
the full stacktrace?

Brian

On Tue, Jun 15, 2021 at 3:05 PM Igor Gois <[email protected]> wrote:

> Hi,
>
> I am trying to run Sql transform on windows using direct runner and apache
> beam (2.30.0):
>
> import apache_beam as beamfrom apache_beam.transforms.sql import SqlTransform
> with beam.Pipeline() as p:
>     pipe = (
>         p
>         |'hello' >> beam.Create([('SE',400),('SC',500)])
>         |'schema' >> beam.Map(lambda x: beam.Row(
>                                                 state=x[0],
>                                                 population=x[1]
>                                                 ))
>     )
>
>     sql = (
>         pipe
>         |'sql' >> SqlTransform('SELECT state, population FROM PCOLLECTION')
>         |'sql print' >> beam.Map(print)
>     )
>
>
> And I got this error:
>
>   File 
> "c:\users\XXX\appdata\local\programs\python\python37\lib\subprocess.py", line 
> 1306, in send_signal
>     raise ValueError("Unsupported signal: {}".format(sig))
> ValueError: Unsupported signal: 2
>
>
> I followed this video on youtube [1] and it mentions Universal Local
> Runner (ULR) but I didn't find anything about it on [2]. I also found a
> similar error on [3] but didn't figure out how to solve it and was related
> to kafka.
>
> Can anyone help me?
>
> Thanks in advance
>
> [1] https://youtu.be/zx4p-UNSmrA?t=2097
> [2] https://beam.apache.org/documentation/runners/direct/
> [3]
> https://stackoverflow.com/questions/65780044/readfromkafka-throws-valueerror-unsupported-signal-2
>
>
> Igor Gois
>
>
>
>
>

Reply via email to