code: func (e *executor) executeSetBitField(ctx context.Context, index string, c *pql.Call, f *Field, colID, rowID uint64, timestamp *time.Time, opt *execOptions) (bool, error) {
  	span, ctx := tracing.StartSpanFromContext(ctx, "Executor.executeSetBitField")
  	defer span.Finish()
  
  	shard := colID / ShardWidth
  	ret := false
  
  	for _, node := range e.Cluster.shardNodes(index, shard) {
  		// Update locally if host matches.
  		if node.ID == e.Node.ID {
  			val, err := f.SetBit(rowID, colID, timestamp)
  			if err != nil {
  				return false, err
  			} else if val {
  				ret = true
  			}
  			continue
  		}
  
  		// Do not forward call if this is already being forwarded.
  		if opt.Remote {
  			continue
  		}
  
  		// Forward call to remote node otherwise.
  		res, err := e.remoteExec(ctx, node, index, &pql.Query{Calls: []*pql.Call{c}}, nil)
  		if err != nil {
  			return false, err
  		}
  		ret = res[0].(bool)
  	}
  	return ret, nil
  }
docs: // executeSetBitField executes a Set() call for a specific field.