MCPcopy
hub / github.com/redis/go-redis / processPipelineNode

Method processPipelineNode

osscluster.go:1707–1729  ·  view source on GitHub ↗
(
	ctx context.Context, node *clusterNode, cmds []Cmder, failedCmds *cmdsMap,
)

Source from the content-addressed store, hash-verified

1705}
1706
1707func (c *ClusterClient) processPipelineNode(
1708 ctx context.Context, node *clusterNode, cmds []Cmder, failedCmds *cmdsMap,
1709) {
1710 _ = node.Client.withProcessPipelineHook(ctx, cmds, func(ctx context.Context, cmds []Cmder) error {
1711 cn, err := node.Client.getConn(ctx)
1712 if err != nil {
1713 if !isContextError(err) {
1714 node.MarkAsFailing()
1715 }
1716 _ = c.mapCmdsByNode(ctx, failedCmds, cmds)
1717 setCmdsErr(cmds, err)
1718 return err
1719 }
1720
1721 var processErr error
1722 defer func() {
1723 node.Client.releaseConn(ctx, cn, processErr)
1724 }()
1725 processErr = c.processPipelineNodeConn(ctx, node, cn, cmds, failedCmds)
1726
1727 return processErr
1728 })
1729}
1730
1731func (c *ClusterClient) processPipelineNodeConn(
1732 ctx context.Context, node *clusterNode, cn *pool.Conn, cmds []Cmder, failedCmds *cmdsMap,

Callers 1

processPipelineMethod · 0.95

Calls 8

mapCmdsByNodeMethod · 0.95
isContextErrorFunction · 0.85
setCmdsErrFunction · 0.85
MarkAsFailingMethod · 0.80
getConnMethod · 0.45
releaseConnMethod · 0.45

Tested by

no test coverage detected