I am from India and my experience is that addressing a serviceman in a restaurant as "waiter" is not taken positively. So depending on their age, we usually call them "brother" or "uncle". A few years back, I was visiting Germany and at one point, I visited an Indian restaurant with a few of my friends.
After we took our table, a friend of mine called a serviceman in the restaurant and asked him for a glass of water. While doing so, he addressed the serviceman as "Uncle" and at that point, the guy got extremely offended and replied, "I am not your uncle". This was shocking for us and we apologized. However, after that, we discussed this issue and found that each one of us thought that calling him "Uncle" shouldn't be offensive at all since he was anyway quite elderly for us.
Is this correct or we were wrong in thinking so? How should one address servicemen/servicewomen in the restaurant in a proper way?
Note: The waiter is from Pakistan but we speak the same language.