title: CoreData to-many-relationship pretends not to be containing an object which is inserted in it
body: <p>I've a very strange issue. This happens occasionally when I'm trying to remove an object from a to many relationship.</p>
  
  <p>We have 2 objects, a <code>DriverRoute</code> which contains multiple <code>DriverRouteDelivery</code>objects. I try to remove one of the <code>DriverRouteDelivery</code>objects from the <code>DriverRoute</code>, but sometimes the item can't be found in the set even though it's there. I <code>po</code>ed the output.</p>
  
  <pre><code>&lt;DriverRoute: 0x812041a0&gt; (entity: DriverRoute; id: 0x7c0ed070 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRoute/p8&gt; ; data: {
      changed = "2015-06-22 15:56:28 +0000";
      createdTimestamp = "2015-06-22 15:36:25 +0000";
      driver = "0x7f52f080 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/Driver/p1&gt;";
      id = "4CFA3568-B95E-46D8-A9C7-5EC44BF1ADA8";
      returnRoute = "0x7bf15e70 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/Route/p23&gt;";
      routeDeliveries =     (
          "0x7bf12930 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRouteDelivery/p24&gt;",
          "0x7c663b80 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRouteDelivery/p14&gt;",
          "0x7c663f60 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRouteDelivery/p21&gt;"
      );
      routes =     (
          "0x7f5df860 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/Route/p33&gt;",
          "0x7bf131f0 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/Route/p22&gt;",
          "0x7bf12940 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/Route/p29&gt;"
      );
      startAt = "2015-06-22 15:35:32 +0000";
      synced = "2015-06-22 15:56:29 +0000";
  })
  </code></pre>
  
  <p>and </p>
  
  <pre><code>&lt;DriverRouteDelivery: 0x81323d70&gt; (entity: DriverRouteDelivery; id: 0x7bf12930 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRouteDelivery/p24&gt; ; data: {
      delivery = "0x7c143b60 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/Delivery/p15&gt;";
      route = "0x7c0ed070 &lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRoute/p8&gt;";
      sortOrder = 1;
  })
  </code></pre>
  
  <p>It's pretty obvious that the set <code>routeDeliveries</code> contains the object <code>&lt;x-coredata://E8AAE873-94B7-42F4-A39A-3A8D7C567747/DriverRouteDelivery/p24&gt;"</code> but if I try e.g. <code>[routeDeliveries containsObject:routeDelivery]</code> it occasionally return NO, the printed output above shows it's there. </p>
  
  <p>Both objects are in the same context and the context is used on the correct queue. </p>
  
  <p><strong>Any one any ideas, what might cause this behaviour?</strong></p>