Before diving into such a difficult subject to debug, it's always nice to have proper tools that will ease the headaches and reduce the number of questions one might ask oneself during development. While normal code executed on the CPU can just be stepped through and analyzed during runtime, shader code and OpenGL resources, such as textures are a bit more difficult to handle. Most, if not all, C++ compilers don't have native support for dealing with GPU-bound problems. Luckily, there is software out there that makes it easier to deal with that very predicament.
Among the few tools that exist out there to alleviate such headaches, CodeXL by AMD Developer Tools Team stands out. It's a free piece of software that can be used as a standalone application for Windows and Linux or even as a plugin for Visual Studio. Its most prominent features include being able to view OpenGL resources (including textures) while the program is running, profile the code and find bottlenecks...