In a replica set, a new primary is elected if the current one fails. Write concern controls when a write is considered “acknowledged” (e.g., majority), and read concern controls what consistency a read requires — it’s a trade-off between consistency, latency, and availability.
Expanding on the short answer — what usually matters in practice:
A tiny example (query + projection):
// Example: query + projection
const user = await db.collection('users').findOne(
{ email: '[email protected]' },
{ projection: { _id: 0, email: 1, name: 1 } },
)