Hey guys,

I use the latest version apache beam package and found a strange behaviour.
I'm not sure this is bug or not, because 2 hours ago I ran the same code
and it's fine.
Now it's error.

If I use a topic name as the parameter:

    events = (pipeline
                | 'Read' >> ReadStringsFromPubSub(
                                topic=FQ_TOPIC_NAME,
                                id_label='event_id')

It runs as expected:
- It create a subscription: like projects/PROJECT_ID/
subscriptions/beam_1515134413_fbbb1a48
- Pull the events

But If I use the subscription as the parameter:

    events = (pipeline
                | 'Read' >> ReadStringsFromPubSub(
                                subscription=FQ_SUBSCRIPTION,
                                id_label='event_id')
it raise the following exception:

        google.gax.errors.RetryError: RetryError(Exception occurred in
retry method that was not classified as transient, caused by <_Rendezvous
of RPC that terminated with (StatusCode.UNAUTHENTICATED, Deadline
Exceeded)>)


If I use the random topic name or subscription url, it will throw a
StatusCode.PERMISSION_DENIED
which is expected.

If i upgrade the pubsub client pip install --upgrade google-cloud-pubsub
it will throw an error like the following:

    class Field(six.with_metaclass(_FieldMeta, object)):
TypeError: Error when calling the metaclass bases
    metaclass conflict: the metaclass of a derived class must be a
(non-strict) subclass of the metaclasses of all its bases


Below is my pip freeze output:

apache-beam==2.2.0
avro==1.8.2
cachetools==2.0.1
certifi==2017.11.5
chardet==3.0.4
crcmod==1.7
dill==0.2.6
enum34==1.1.6
funcsigs==1.0.2
future==0.16.0
futures==3.2.0
gapic-google-cloud-pubsub-v1==0.15.4
google-apitools==0.5.11
google-auth==1.2.1
google-auth-httplib2==0.0.3
google-cloud-bigquery==0.25.0
google-cloud-core==0.25.0
google-cloud-pubsub==0.26.0
google-gax==0.15.16
googleapis-common-protos==1.5.3
googledatastore==7.0.1
grpc-google-iam-v1==0.11.4
grpcio==1.8.3
httplib2==0.9.2
idna==2.6
mock==2.0.0
oauth2client==3.0.0
pbr==3.1.1
ply==3.8
proto-google-cloud-datastore-v1==0.90.4
proto-google-cloud-pubsub-v1==0.15.4
protobuf==3.3.0
pyasn1==0.4.2
pyasn1-modules==0.2.1
PyYAML==3.12
requests==2.18.4
rsa==3.4.2
six==1.10.0
typing==3.6.2
urllib3==1.22

What should I do?
Thanks

Reply via email to