Thousands of foo.x86_64 and foo.i686 packages contain the same files in /usr/bin but differ in their contents. Of course they do. RPM resolves this by prefering the x86_64 binary. That's how biarch works and always has worked. That you can only install one flavour of samba-common in el7 is a clear packaging bug.
We are currently blocked/hobbled by this issue since we set Yum's multilib_policy to 'all', and then perform a group installation of a group that includes 'samba-common'. I noticed the previous release of CentOS 7's yum repository does not contain samba-common.i686 (any build), but the latest one repo does. Perhaps samba-common.i686 could be removed from the repos.
As a work around we had to 'exclude' samba-common.i686 from all repos providing it.
In a package-update scenario, I worked-around this by removing the samba packages and then reinstalling them after the update completed, but using the full package-version-arch names (on an x86_64 system):
$ yum remove samba-winbind-client samba-common samba-common samba-winbind-modules samba-libs
$ yum update
$ yum install samba-winbind-client-4.1.12-23.el7_1.x86_64 samba-common-4.1.12-23.el7_1.x86_64 samba-winbind-modules-4.1.12-23.el7_1.x86_64 samba-libs-4.1.12-23.el7_1.x86_64
Mentioning this in-case it provides a simple workaround for anyone who meets this issue.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory, and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.