### What were you trying to do? Note: Before beginning, the topic 'test_topic' and the subscription 'test_sub' don't exist in the project. via google.cloud python pubsub module: 1. Create 'test_topic' Cloud PubSub topic if it doesn't exist 2. Create 'test_sub' pull subscription to that topic if it doesn't exist 3. Attempt to pull messages from the 'test_sub' subscription 4. Delete the 'test_topic'. NOTE: We are not deleting 'test_sub', it should be given a topic name of '_deleted-topic_' as per https://cloud.google.com/pubsub/publisher#delete) 5. repeat # 1-4 ### What did you expect to happen? On the second run: - `pubsub.Client().topic('test_topic').subscription('test_sub').exists()` in step #2 should return False - `pubsub.Client().topic('test_topic').subscription('test_sub').pull()` in step #3 should fail with an Exception (because I've asked for the subscription 'test_sub' in the topic 'test_topic', not the 'test_sub' subscription in the '_deleted-topic_' topic) ### What actually happened? After having created the topic and subscription once, then having deleted/recreated the topic, the subscription shows up in 'subscriptions to topics not in this project' under pantheon (i.e. has a topic name of '_deleted-topic_' as per https://cloud.google.com/pubsub/publisher#delete) as expected. But the behavior is inconsistent when accessing it programmatically via the google.cloud python module: 1. Listing the subscriptions for the topic gives you an list that doesn't include the subscription in question. `pubsub.Client().topics.list_topics()` returns a list without the 'test_sub' subscription in it 2. BUT... Checking if the sub exists with `pubsub.Client().topic('test_topic').subscription('test_sub').exists()` returns... True 3. And, it can be pulled from via `pubsub.Client().topic('test_topic').subscription('test_sub').pull()`