mirror of
https://github.com/gogrlx/nats-server.git
synced 2026-04-02 03:38:42 -07:00
[IMPROVED] Bumped inflight updates to 16 and move one lock to rlock. (#4621)
Signed-off-by: Derek Collison <derek@nats.io>
This commit is contained in:
@@ -7722,8 +7722,8 @@ func (mset *stream) isCurrent() bool {
|
|||||||
return mset.node.Current() && !mset.catchup
|
return mset.node.Current() && !mset.catchup
|
||||||
}
|
}
|
||||||
|
|
||||||
// Maximum requests for the whole server that can be in flight.
|
// Maximum requests for the whole server that can be in flight at the same time.
|
||||||
const maxConcurrentSyncRequests = 8
|
const maxConcurrentSyncRequests = 16
|
||||||
|
|
||||||
var (
|
var (
|
||||||
errCatchupCorruptSnapshot = errors.New("corrupt stream snapshot detected")
|
errCatchupCorruptSnapshot = errors.New("corrupt stream snapshot detected")
|
||||||
@@ -7900,11 +7900,11 @@ RETRY:
|
|||||||
|
|
||||||
// Grab sync request again on failures.
|
// Grab sync request again on failures.
|
||||||
if sreq == nil {
|
if sreq == nil {
|
||||||
mset.mu.Lock()
|
mset.mu.RLock()
|
||||||
var state StreamState
|
var state StreamState
|
||||||
mset.store.FastState(&state)
|
mset.store.FastState(&state)
|
||||||
sreq = mset.calculateSyncRequest(&state, snap)
|
sreq = mset.calculateSyncRequest(&state, snap)
|
||||||
mset.mu.Unlock()
|
mset.mu.RUnlock()
|
||||||
if sreq == nil {
|
if sreq == nil {
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -654,9 +654,9 @@ func (s *Server) transferRaftLeaders() bool {
|
|||||||
// This should only be called on the leader.
|
// This should only be called on the leader.
|
||||||
func (n *raft) Propose(data []byte) error {
|
func (n *raft) Propose(data []byte) error {
|
||||||
n.RLock()
|
n.RLock()
|
||||||
if n.state != Leader {
|
if state := n.state; state != Leader {
|
||||||
n.RUnlock()
|
n.RUnlock()
|
||||||
n.debug("Proposal ignored, not leader (state: %v)", n.state)
|
n.debug("Proposal ignored, not leader (state: %v)", state)
|
||||||
return errNotLeader
|
return errNotLeader
|
||||||
}
|
}
|
||||||
// Error if we had a previous write error.
|
// Error if we had a previous write error.
|
||||||
|
|||||||
Reference in New Issue
Block a user