As you can see in my code i'm calling removeTransactionObserver: when dealloc is called. And as you can see in the log above dealloc is being called 5 seconds before the app is crashing. From what i understand the default queue is trying to call productsRequest: didReceiveResponse: even tho i've removed my self as observer?