Assuming clientInformation is an instance variable or a static variable, you have a memory bug. ARC has nothing to do with this. You have a bug regardless of ARC.
If you were to set clientInformation to nil after the release, you would fix this bug. You might cause another bug somewhere else, depending on what else wants to use the value of clientInformation. Again, nil'ing clientInformation after release is unrelated to ARC.
The memory bug is very simple: you are keeping a reference to an object after releasing that object. The reference is being kept in the variable clientInformation.
If clientInformation has a corresponding property, then you have another bug: you're referencing a property as an ivar. Assuming the property is retain or copy, you could fix this bug simply by always referring to the property. Then you don't release anything, you simply set the property to nil.
If the above is confusing, or you don't see why the bugs occur, you might be better off using ARC. For one thing, it will identify errors like this and point them out to you. You will still need to understand ARC, but if object ownership is an ongoing problem, then that might be a better alternative.
By the way, there's no such thing as "check to see if the object exists". You can't. All you can do is check if a variable is nil or not. That's not at all the same thing, and is the cause of the bug. You have an invalid (released) object reference still being stored in your variable.