I believe those defaults are for mainly write operations, and dropDatabase() is not really a normal write operation. I think those are treated slightly differently, and you can always set the write concern setting if you want to ensure that dropDatabase() is called with w:1.
However if this is not what you think should happen, please provide a feedback into the MongoDB Feedback Engine so this can be explored by the product team.
Does REPL wait untill the oplog is written to the majority of the members
Please correct me if I’m wrong here, but what I understand as REPL is Read-Eval-Print-Loop for interactive discovery, a feature in most scripted languages like Python or Node. Do you mean doing CRUD operations on mongosh or similar by this? This depends on the write concern setting for that particular write. If you set it to w:1 it should not wait for replication. If you set it to w:majority then it will wait until the majority have replicated the write in their journal.
As I said, starting from mongo 4.2, there is no server option to disable the write concern majority.
Actually the default write concern was changed to majority in MongoDB 5.0, so 4.2 and 4.4 still defaults to w:1
Also in MongoDB 4.4 there is a new command setDefaultRWConcern to set this cluster-wide.
We set the following but still mongo calculates as 3.
If you mean the value of writeMajorityCount, I believe that’s only informational and does not reflect the actual write concern setting. In your case, it is informing you that for a majority write to be acknowledged, you need at least 3 nodes.
Best regards
Kevin