def remove(selector={}, opts={})
write_concern = get_write_concern(opts, self)
message = BSON::ByteBuffer.new("\0\0\0\0", @connection.max_message_size)
BSON::BSON_RUBY.serialize_cstr(message, "#{@db.name}.#{@name}")
message.put_int(0)
message.put_binary(BSON::BSON_CODER.serialize(selector, false, true, @connection.max_bson_size).to_s)
instrument(:remove, :database => @db.name, :collection => @name, :selector => selector) do
if Mongo::WriteConcern.gle?(write_concern)
@connection.send_message_with_gle(Mongo::Constants::OP_DELETE, message, @db.name, nil, write_concern)
else
@connection.send_message(Mongo::Constants::OP_DELETE, message)
true
end
end
end