etcdserver: call the OnPreCommitUnsafe in unsafeCommit
etcdserver: call the OnPreCommitUnsafe in unsafeCommit

`unsafeCommit` is called by both `(*batchTxBuffered) commit` and
`(*backend) defrag`. When users perform the defragmentation
operation, etcd doesn't update the consistent index. If etcd
crashes(e.g. panicking) in the process for whatever reason, then
etcd replays the WAL entries starting from the latest snapshot,
accordingly it may re-apply entries which might have already been
applied, eventually the revision isn't consistent with other members.

Refer to discussion in https://github.com/etcd-io/etcd/pull/14685

Signed-off-by: Benjamin Wang <a1713d12b1b05630690f22cadfd282d625d8acb2@vmware.com>

etcd-io/etcd,etcd-io/etcd,etcd-io/etcd