In Canada, Canadian laws take precedence over any treaties signed by the federal government. When a law and a treaty are at odds, either the legislation has to be changed or the treaty has to be abandoned. What's more, treaties are not self-executing in Canada, meaning that treaties or conventions issued by international organizations have no legal standing in the country, though some may actually reflect a law in effect here already.
Also, because of Canada's status as a federation, certain treaties can involve the provinces. If the country has to change a statute or piece of legislation to meet international commitments, the provinces are asked to cooperate voluntarily. That's because provincial laws don't change automatically-the federal government not having the authority to legislate on behalf of the provinces in their areas of jurisdiction. Indeed, courts refer to provincial laws in their efforts to comply as much as possible with Canada's international commitments when treaties or agreements don't patently contradict Canadian legislation.
For a number of years now, the federal government has most commonly avoided signing treaties or agreements if it hasn't first obtained the consent of the province concerned, or of all the provinces if need be. Some treaties or agreements cross into exclusive or partial provincial jurisdictions. In addition, before signing any treaty or agreement, the federal government generally waits for a province, or for the provinces, to change its or their legislation accordingly; and when federal representatives happen to sign a treaty that contravenes a provincial law, the treaty does not apply if the province in question doesn't amend its law.
Roughly the same thing happens in Germany: the country's Länder (the equivalent of Canada's provinces) wield considerable power within the German federation, because the Bundesrat (or Upper House: Canada's Senate) is composed of representatives from the 16 federated states (at least three each). And when a federal law affects "the interests of the Länder" (taxation, regional administration, fiscal matters, etc.), or when it can alter the constitution, the consent of the Bundesrat is required. International treaties, even if they do not affect the interests of the Länder, must pass by both the Bundestag (or lower house: Canada's House of Commons) and the Bundesrat. So, under this arrangement, it's easy to understand, for example, that Germany's adoption of the European Charter for Regional or Minority Languages and of the General Agreement on the Protection of Minority Languages required the consent of the Bundesrat, and of each of the Länder concerned.