Channel variables getting mixed up

I have a situation which is not easy to reproduce and very inconsistent but I have investigated it for some time now and was wondering if anybody else have seen something similar?

I set channel variables in my diaplan and through the Manager API. Every once in a while a channel will receive a variable that was intended for another channel. For example if a Zap channel called a SIP channel the variable (VAR1=Var1Value) is set on both channels, that is on Zap/1-1 and SIP/100. Most of the time this works well but when a different SIP phone (SIP/500) calls another SIP (SIP/900), not the same SIP that is linked to the Zap channel, then all of the sudden that variable shows up on one of those SIP channels as well.

The setting of the channel variable is manually initiated via software and in the above example neither SIP/500 nor SIP/900 have set the variable. Also the channel variable is not the same everytime.

This lead me to believe that maybe there is a problem with the setting of channel variables. As far as I understands it channel variables should be unique to thta channel and not be accessible from other “threads” (channels).