Ruby 777

With pre-2.6 servers, the bulk API has an edge case around documents with non-ObjectID _id fields.  This pull request offers a workaround for the issue.
It's more correct to say that for pre-2.6, single write operations will be used, so the batch size will be 1.  This should be OK provided that 2.6 generates an upserted field, and so the remaining case with updatedExisting false and n == 1 corresponds only to pre-2.6 upsert with non-ObjectId for _id.