For every technique that you train, you should also train how to: - counter that technique. - counter the counters of that technique. Unless you know how to counter the counters of your technique, you should be careful when you apply your technique. The reason is simple, you don't want to put yourself in a situation that you don't know how to handle. What will you do when you throw a high kick, your opponent just uses his arms to cover his head and run toward you like a mad man? If you don't have the counter for it, will you even try to use your "high kick"? Do you always think about 2 steps ahead? When you attack, - how will your opponent respond (1 step ahead), - how will you respond to your opponent's respond (2 steps ahead)?
My trainer always gives me scenarios of what to watch for with each technique... or uses them on me so I get the experience of it. Holes? Well they're all over the place and so I could name a lot of counters to what I do. Just further proof that no matter what you do, you'll never have it all I guess.
Interestingly, my coach was just discussing this very topic last night and had very similar things to say. Brazil, China, don't matter, man huggery is man huggery.