Primary versus secondary master on a junction object
Key Takeaway
Creation order decides the roles on a junction object: the first master-detail relationship you create is primary, and the second is secondary. The primary master controls the junction record's look, its inherited owner and division, and how the two standard report types are named.
A junction object is a custom object with two master-detail relationships. It links two objects in a many-to-many relationship, so a record on either side can relate to many records on the other. Its two masters have different roles: one is the primary master and the other is the secondary master.
Building a many-to-many relationship
For example, a BugCaseAssociation junction object can connect a custom Bug object to the standard Case object. One bug can then relate to many cases, and one case can relate to many bugs.
You need the "Customize Application" user permission to create a many-to-many relationship.
Each custom object can have up to 2 master-detail relationships, so a junction object's two masters use its full allowance. Each relationship also counts toward the maximum number of custom fields allowed on the object.