Documentation ¶
Index ¶
- Constants
- Variables
- func ClusterCentersReturnType(argType []types.Type) types.Type
- func FromD64ToD128(v types.Decimal64) types.Decimal128
- func GroupConcatReturnType(args []types.Type) types.Type
- func InitFlagContextFromFixedToFixed[from, to types.FixedSizeTExceptStrType](exec SingleAggFromFixedRetFixed[from, to], setter AggSetter[to], ...) error
- func InitFlagContextFromVarToVar(exec SingleAggFromVarRetVar, setter AggBytesSetter, arg, ret types.Type) error
- func IsGroupConcatSupported(t types.Type) bool
- func MarshalAggFuncExec(exec AggFuncExec) ([]byte, error)
- func MedianReturnType(args []types.Type) types.Type
- func RegisterApproxCountAgg(id int64)
- func RegisterClusterCenters(id int64)
- func RegisterCountColumnAgg(id int64)
- func RegisterCountStarAgg(id int64)
- func RegisterDenseRankWin(id int64)
- func RegisterGroupConcatAgg(id int64, sep string)
- func RegisterMedian(id int64)
- func RegisterMultiAggRetFixed[to types.FixedSizeTExceptStrType](info MultiColumnAggRetFixedRegisteredInfo[to])
- func RegisterRankWin(id int64)
- func RegisterRowNumberWin(id int64)
- func RegisterSingleAggFromFixedToFixed[from, to types.FixedSizeTExceptStrType](info SingleAggImplementationFixedFixed[from, to])
- func RegisterSingleAggFromFixedToVar[from types.FixedSizeTExceptStrType](info SingleAggImplementationFixedVar[from])
- func RegisterSingleAggFromVarToVar(info SingleAggImplementationVarVar)
- func SingleWindowReturnType(_ []types.Type) types.Type
- type AggBytesGetter
- type AggBytesSetter
- type AggCanMarshal
- type AggCommonExecContext
- type AggFuncExec
- type AggFuncExecExpression
- type AggGetter
- type AggGroupExecContext
- type AggMemoryManager
- type AggSetter
- type ContextWithEmptyFlagOfSingleAggRetBytes
- type ContextWithEmptyFlagOfSingleAggRetFixed
- type EmptyContextOfSingleAggRetBytes
- type EmptyContextOfSingleAggRetFixed
- type EncodedAgg
- func (*EncodedAgg) Descriptor() ([]byte, []int)
- func (m *EncodedAgg) GetExecType() EncodedAggExecType
- func (m *EncodedAgg) GetGroups() [][]byte
- func (m *EncodedAgg) GetInfo() *EncodedBasicInfo
- func (m *EncodedAgg) GetResult() []byte
- func (m *EncodedAgg) Marshal() (dAtA []byte, err error)
- func (m *EncodedAgg) MarshalTo(dAtA []byte) (int, error)
- func (m *EncodedAgg) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*EncodedAgg) ProtoMessage()
- func (m *EncodedAgg) ProtoSize() (n int)
- func (m *EncodedAgg) Reset()
- func (m *EncodedAgg) String() string
- func (m *EncodedAgg) Unmarshal(dAtA []byte) error
- func (m *EncodedAgg) XXX_DiscardUnknown()
- func (m *EncodedAgg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *EncodedAgg) XXX_Merge(src proto.Message)
- func (m *EncodedAgg) XXX_Size() int
- func (m *EncodedAgg) XXX_Unmarshal(b []byte) error
- type EncodedAggExecType
- type EncodedBasicInfo
- func (*EncodedBasicInfo) Descriptor() ([]byte, []int)
- func (m *EncodedBasicInfo) GetId() int64
- func (m *EncodedBasicInfo) GetIsDistinct() bool
- func (m *EncodedBasicInfo) GetNullEmpty() bool
- func (m *EncodedBasicInfo) Marshal() (dAtA []byte, err error)
- func (m *EncodedBasicInfo) MarshalTo(dAtA []byte) (int, error)
- func (m *EncodedBasicInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*EncodedBasicInfo) ProtoMessage()
- func (m *EncodedBasicInfo) ProtoSize() (n int)
- func (m *EncodedBasicInfo) Reset()
- func (m *EncodedBasicInfo) String() string
- func (m *EncodedBasicInfo) Unmarshal(dAtA []byte) error
- func (m *EncodedBasicInfo) XXX_DiscardUnknown()
- func (m *EncodedBasicInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *EncodedBasicInfo) XXX_Merge(src proto.Message)
- func (m *EncodedBasicInfo) XXX_Size() int
- func (m *EncodedBasicInfo) XXX_Unmarshal(b []byte) error
- type MultiAggEval1
- type MultiAggEval2
- type MultiAggFillNull1
- type MultiAggFillNull2
- type MultiAggFlush1
- type MultiAggFlush2
- type MultiAggInit1
- type MultiAggInit2
- type MultiAggMerge1
- type MultiAggMerge2
- type MultiAggRetFixed
- type MultiAggRetVar
- type MultiColumnAggInformation
- type MultiColumnAggRetFixedRegisteredInfo
- type SimpleAggMemoryManager
- type SingleAggFill1
- type SingleAggFill2
- type SingleAggFill3
- type SingleAggFill4
- type SingleAggFillNull1
- type SingleAggFillNull2
- type SingleAggFillNull3
- type SingleAggFillNull4
- type SingleAggFills1
- type SingleAggFills2
- type SingleAggFills3
- type SingleAggFills4
- type SingleAggFlush1
- type SingleAggFlush2
- type SingleAggFlush3
- type SingleAggFlush4
- type SingleAggFromFixedRetFixed
- type SingleAggFromFixedRetVar
- type SingleAggFromVarRetFixed
- type SingleAggFromVarRetVar
- type SingleAggImplementationFixedFixed
- type SingleAggImplementationFixedVar
- type SingleAggImplementationVarVar
- type SingleAggInit1
- type SingleAggInit2
- type SingleAggInit3
- type SingleAggInit4
- type SingleAggMerge1
- type SingleAggMerge2
- type SingleAggMerge3
- type SingleAggMerge4
- type SingleColumnAggInformation
Constants ¶
const ( // GroupNotMatched is a constant for the BatchFill method. // if the group is GroupNotMatched, the BatchFill method will ignore the row. GroupNotMatched = 0 )
Variables ¶
var ( ErrInvalidLengthSerialize = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowSerialize = fmt.Errorf("proto: integer overflow") ErrUnexpectedEndOfGroupSerialize = fmt.Errorf("proto: unexpected end of group") )
var ( ClusterCentersSupportTypes = []types.T{ types.T_array_float32, types.T_array_float64, } )
var ( CountReturnType = func(_ []types.Type) types.Type { return types.T_int64.ToType() } )
var EncodedAggExecType_name = map[int32]string{
0: "single_fixed_fixed",
1: "single_fixed_var",
2: "single_var_fixed",
3: "single_var_var",
4: "multi_return_fixed",
5: "multi_return_var",
6: "special_group_concat",
7: "special_count_column",
8: "special_count_star",
9: "special_approx_count",
10: "special_median",
11: "special_cluster_center",
12: "single_window",
}
var EncodedAggExecType_value = map[string]int32{
"single_fixed_fixed": 0,
"single_fixed_var": 1,
"single_var_fixed": 2,
"single_var_var": 3,
"multi_return_fixed": 4,
"multi_return_var": 5,
"special_group_concat": 6,
"special_count_column": 7,
"special_count_star": 8,
"special_approx_count": 9,
"special_median": 10,
"special_cluster_center": 11,
"single_window": 12,
}
var GroupConcatUnsupportedTypes = []types.T{ types.T_tuple, }
Functions ¶
func FromD64ToD128 ¶
func FromD64ToD128(v types.Decimal64) types.Decimal128
func InitFlagContextFromFixedToFixed ¶
func InitFlagContextFromFixedToFixed[from, to types.FixedSizeTExceptStrType](exec SingleAggFromFixedRetFixed[from, to], setter AggSetter[to], arg, ret types.Type) error
func InitFlagContextFromVarToVar ¶
func InitFlagContextFromVarToVar(exec SingleAggFromVarRetVar, setter AggBytesSetter, arg, ret types.Type) error
func IsGroupConcatSupported ¶
func MarshalAggFuncExec ¶
func MarshalAggFuncExec(exec AggFuncExec) ([]byte, error)
func RegisterApproxCountAgg ¶
func RegisterApproxCountAgg(id int64)
func RegisterClusterCenters ¶
func RegisterClusterCenters(id int64)
func RegisterCountColumnAgg ¶
func RegisterCountColumnAgg(id int64)
func RegisterCountStarAgg ¶
func RegisterCountStarAgg(id int64)
func RegisterDenseRankWin ¶
func RegisterDenseRankWin(id int64)
func RegisterGroupConcatAgg ¶
func RegisterMedian ¶
func RegisterMedian(id int64)
func RegisterMultiAggRetFixed ¶
func RegisterMultiAggRetFixed[to types.FixedSizeTExceptStrType]( info MultiColumnAggRetFixedRegisteredInfo[to])
func RegisterRankWin ¶
func RegisterRankWin(id int64)
func RegisterRowNumberWin ¶
func RegisterRowNumberWin(id int64)
func RegisterSingleAggFromFixedToFixed ¶
func RegisterSingleAggFromFixedToFixed[from, to types.FixedSizeTExceptStrType]( info SingleAggImplementationFixedFixed[from, to])
func RegisterSingleAggFromFixedToVar ¶
func RegisterSingleAggFromFixedToVar[from types.FixedSizeTExceptStrType]( info SingleAggImplementationFixedVar[from])
func RegisterSingleAggFromVarToVar ¶
func RegisterSingleAggFromVarToVar( info SingleAggImplementationVarVar)
Types ¶
type AggBytesGetter ¶
type AggBytesGetter func() []byte
the definition of functions to get and set the aggregation result.
type AggBytesSetter ¶
the definition of functions to get and set the aggregation result.
type AggCanMarshal ¶
AggCanMarshal interface is used for agg structures' multi-node communication. each private structure of aggregation should implement the AggCanMarshal interface. todo: change to deliver []byte directly, and agg developer choose how to use the []byte.
type AggCommonExecContext ¶
type AggCommonExecContext interface { AggCanMarshal }
AggCommonExecContext stores the common context for all the groups. like the type scale, timezone and so on.
type AggFuncExec ¶
type AggFuncExec interface { AggID() int64 IsDistinct() bool // TypesInfo return the argument types and return type of the function. TypesInfo() ([]types.Type, types.Type) // GroupGrow is used to increase the aggregation's group size. GroupGrow(more int) error // PreAllocateGroups is used to pre-extend the agg memory to reduce gc cost. PreAllocateGroups(more int) error // Fill BulkFill and BatchFill add the value to the aggregation. Fill(groupIndex int, row int, vectors []*vector.Vector) error BulkFill(groupIndex int, vectors []*vector.Vector) error BatchFill(offset int, groups []uint64, vectors []*vector.Vector) error // Merge merges the aggregation result of two groups. Merge(next AggFuncExec, groupIdx1, groupIdx2 int) error // BatchMerge merges the aggregation result of multiple groups. // merge work starts from the offset group of the next agg, end at the (offset + len(groups) - 1) group. // merges the (offset + i)th group with the (groups[i]-1) group of the current agg. BatchMerge(next AggFuncExec, offset int, groups []uint64) error // SetExtraInformation add an additional information to agg executor. // in most cases, it is used to set the partial result of the aggregation to speed up. // // but for the 'group_concat', it was a bad hack to use the method to set the separator. // and for the 'cluster_centers', it was used to set the fields of this agg. // todo: the old implementation is not good, we should use the vector.Vector to replace the any. // and the hacks should be removed. // but for first version, I will keep it. SetExtraInformation(partialResult any, groupIndex int) (err error) // Flush return the aggregation result. Flush() (*vector.Vector, error) // Free clean the resource and reuse the aggregation if possible. Free() // contains filtered or unexported methods }
AggFuncExec is an interface to do execution for aggregation.
func CopyAggFuncExec ¶
func CopyAggFuncExec(mg AggMemoryManager, exec AggFuncExec) (AggFuncExec, error)
func MakeAgg ¶
func MakeAgg( mg AggMemoryManager, aggID int64, isDistinct bool, param ...types.Type) AggFuncExec
MakeAgg is the only exporting method to create an aggregation function executor. all the aggID should be registered before calling this function.
func UnmarshalAggFuncExec ¶
func UnmarshalAggFuncExec( mg AggMemoryManager, data []byte) (AggFuncExec, error)
type AggFuncExecExpression ¶
type AggFuncExecExpression struct {
// contains filtered or unexported fields
}
AggFuncExecExpression is the exporting structure for the aggregation information. it is used to indicate the information of the aggregation function for the operators like 'group' or 'merge group'.
func (AggFuncExecExpression) GetAggID ¶
func (expr AggFuncExecExpression) GetAggID() int64
func (AggFuncExecExpression) GetArgExpressions ¶
func (expr AggFuncExecExpression) GetArgExpressions() []*plan.Expr
func (AggFuncExecExpression) GetExtraConfig ¶
func (expr AggFuncExecExpression) GetExtraConfig() []byte
func (AggFuncExecExpression) IsDistinct ¶
func (expr AggFuncExecExpression) IsDistinct() bool
type AggGetter ¶
type AggGetter[T types.FixedSizeTExceptStrType] func() T
the definition of functions to get and set the aggregation result.
type AggGroupExecContext ¶
type AggGroupExecContext interface { AggCanMarshal }
AggGroupExecContext store the content of each group individually. like the row-count has been filled, the sum of the values and so on.
type AggMemoryManager ¶
type AggMemoryManager interface { Mp() *mpool.MPool GetVector(typ types.Type) *vector.Vector PutVector(v *vector.Vector) }
func NewSimpleAggMemoryManager ¶
func NewSimpleAggMemoryManager(mp *mpool.MPool) AggMemoryManager
type AggSetter ¶
type AggSetter[T types.FixedSizeTExceptStrType] func(value T)
the definition of functions to get and set the aggregation result.
type ContextWithEmptyFlagOfSingleAggRetBytes ¶
type ContextWithEmptyFlagOfSingleAggRetBytes struct {
IsEmpty bool
}
func (*ContextWithEmptyFlagOfSingleAggRetBytes) Marshal ¶
func (a *ContextWithEmptyFlagOfSingleAggRetBytes) Marshal() []byte
func (*ContextWithEmptyFlagOfSingleAggRetBytes) Unmarshal ¶
func (a *ContextWithEmptyFlagOfSingleAggRetBytes) Unmarshal(data []byte)
type ContextWithEmptyFlagOfSingleAggRetFixed ¶
type ContextWithEmptyFlagOfSingleAggRetFixed[T types.FixedSizeTExceptStrType] struct { IsEmpty bool }
func (*ContextWithEmptyFlagOfSingleAggRetFixed[T]) Marshal ¶
func (a *ContextWithEmptyFlagOfSingleAggRetFixed[T]) Marshal() []byte
func (*ContextWithEmptyFlagOfSingleAggRetFixed[T]) Unmarshal ¶
func (a *ContextWithEmptyFlagOfSingleAggRetFixed[T]) Unmarshal(data []byte)
type EmptyContextOfSingleAggRetBytes ¶
type EmptyContextOfSingleAggRetBytes struct{}
func (EmptyContextOfSingleAggRetBytes) Marshal ¶
func (a EmptyContextOfSingleAggRetBytes) Marshal() []byte
func (EmptyContextOfSingleAggRetBytes) Unmarshal ¶
func (a EmptyContextOfSingleAggRetBytes) Unmarshal([]byte)
type EmptyContextOfSingleAggRetFixed ¶
type EmptyContextOfSingleAggRetFixed[T types.FixedSizeTExceptStrType] struct{}
func (EmptyContextOfSingleAggRetFixed[T]) Marshal ¶
func (a EmptyContextOfSingleAggRetFixed[T]) Marshal() []byte
func (EmptyContextOfSingleAggRetFixed[T]) Unmarshal ¶
func (a EmptyContextOfSingleAggRetFixed[T]) Unmarshal([]byte)
type EncodedAgg ¶
type EncodedAgg struct { ExecType EncodedAggExecType `protobuf:"varint,1,opt,name=exec_type,json=execType,proto3,enum=aggexec.EncodedAggExecType" json:"exec_type,omitempty"` Info *EncodedBasicInfo `protobuf:"bytes,2,opt,name=info,proto3" json:"info,omitempty"` Result []byte `protobuf:"bytes,3,opt,name=result,proto3" json:"result,omitempty"` Groups [][]byte `protobuf:"bytes,4,rep,name=groups,proto3" json:"groups,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*EncodedAgg) Descriptor ¶
func (*EncodedAgg) Descriptor() ([]byte, []int)
func (*EncodedAgg) GetExecType ¶
func (m *EncodedAgg) GetExecType() EncodedAggExecType
func (*EncodedAgg) GetGroups ¶
func (m *EncodedAgg) GetGroups() [][]byte
func (*EncodedAgg) GetInfo ¶
func (m *EncodedAgg) GetInfo() *EncodedBasicInfo
func (*EncodedAgg) GetResult ¶
func (m *EncodedAgg) GetResult() []byte
func (*EncodedAgg) Marshal ¶
func (m *EncodedAgg) Marshal() (dAtA []byte, err error)
func (*EncodedAgg) MarshalToSizedBuffer ¶
func (m *EncodedAgg) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*EncodedAgg) ProtoMessage ¶
func (*EncodedAgg) ProtoMessage()
func (*EncodedAgg) ProtoSize ¶
func (m *EncodedAgg) ProtoSize() (n int)
func (*EncodedAgg) Reset ¶
func (m *EncodedAgg) Reset()
func (*EncodedAgg) String ¶
func (m *EncodedAgg) String() string
func (*EncodedAgg) Unmarshal ¶
func (m *EncodedAgg) Unmarshal(dAtA []byte) error
func (*EncodedAgg) XXX_DiscardUnknown ¶
func (m *EncodedAgg) XXX_DiscardUnknown()
func (*EncodedAgg) XXX_Marshal ¶
func (m *EncodedAgg) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*EncodedAgg) XXX_Merge ¶
func (m *EncodedAgg) XXX_Merge(src proto.Message)
func (*EncodedAgg) XXX_Size ¶
func (m *EncodedAgg) XXX_Size() int
func (*EncodedAgg) XXX_Unmarshal ¶
func (m *EncodedAgg) XXX_Unmarshal(b []byte) error
type EncodedAggExecType ¶
type EncodedAggExecType int32
const ( EncodedAggExecType_single_fixed_fixed EncodedAggExecType = 0 EncodedAggExecType_single_fixed_var EncodedAggExecType = 1 EncodedAggExecType_single_var_fixed EncodedAggExecType = 2 EncodedAggExecType_single_var_var EncodedAggExecType = 3 EncodedAggExecType_multi_return_fixed EncodedAggExecType = 4 EncodedAggExecType_multi_return_var EncodedAggExecType = 5 EncodedAggExecType_special_group_concat EncodedAggExecType = 6 EncodedAggExecType_special_count_column EncodedAggExecType = 7 EncodedAggExecType_special_count_star EncodedAggExecType = 8 EncodedAggExecType_special_approx_count EncodedAggExecType = 9 EncodedAggExecType_special_median EncodedAggExecType = 10 EncodedAggExecType_special_cluster_center EncodedAggExecType = 11 EncodedAggExecType_single_window EncodedAggExecType = 12 )
func (EncodedAggExecType) EnumDescriptor ¶
func (EncodedAggExecType) EnumDescriptor() ([]byte, []int)
func (EncodedAggExecType) String ¶
func (x EncodedAggExecType) String() string
type EncodedBasicInfo ¶
type EncodedBasicInfo struct { Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` IsDistinct bool `protobuf:"varint,2,opt,name=is_distinct,json=isDistinct,proto3" json:"is_distinct,omitempty"` NullEmpty bool `protobuf:"varint,3,opt,name=null_empty,json=nullEmpty,proto3" json:"null_empty,omitempty"` Args []github_com_matrixorigin_matrixone_pkg_container_types.Type `protobuf:"bytes,4,rep,name=args,proto3,customtype=github.com/matrixorigin/matrixone/pkg/container/types.Type" json:"args"` Ret github_com_matrixorigin_matrixone_pkg_container_types.Type `protobuf:"bytes,5,opt,name=ret,proto3,customtype=github.com/matrixorigin/matrixone/pkg/container/types.Type" json:"ret"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*EncodedBasicInfo) Descriptor ¶
func (*EncodedBasicInfo) Descriptor() ([]byte, []int)
func (*EncodedBasicInfo) GetId ¶
func (m *EncodedBasicInfo) GetId() int64
func (*EncodedBasicInfo) GetIsDistinct ¶
func (m *EncodedBasicInfo) GetIsDistinct() bool
func (*EncodedBasicInfo) GetNullEmpty ¶
func (m *EncodedBasicInfo) GetNullEmpty() bool
func (*EncodedBasicInfo) Marshal ¶
func (m *EncodedBasicInfo) Marshal() (dAtA []byte, err error)
func (*EncodedBasicInfo) MarshalToSizedBuffer ¶
func (m *EncodedBasicInfo) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*EncodedBasicInfo) ProtoMessage ¶
func (*EncodedBasicInfo) ProtoMessage()
func (*EncodedBasicInfo) ProtoSize ¶
func (m *EncodedBasicInfo) ProtoSize() (n int)
func (*EncodedBasicInfo) Reset ¶
func (m *EncodedBasicInfo) Reset()
func (*EncodedBasicInfo) String ¶
func (m *EncodedBasicInfo) String() string
func (*EncodedBasicInfo) Unmarshal ¶
func (m *EncodedBasicInfo) Unmarshal(dAtA []byte) error
func (*EncodedBasicInfo) XXX_DiscardUnknown ¶
func (m *EncodedBasicInfo) XXX_DiscardUnknown()
func (*EncodedBasicInfo) XXX_Marshal ¶
func (m *EncodedBasicInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*EncodedBasicInfo) XXX_Merge ¶
func (m *EncodedBasicInfo) XXX_Merge(src proto.Message)
func (*EncodedBasicInfo) XXX_Size ¶
func (m *EncodedBasicInfo) XXX_Size() int
func (*EncodedBasicInfo) XXX_Unmarshal ¶
func (m *EncodedBasicInfo) XXX_Unmarshal(b []byte) error
type MultiAggEval1 ¶
type MultiAggEval1[to types.FixedSizeTExceptStrType] func( exec MultiAggRetFixed[to], getter AggGetter[to], setter AggSetter[to]) error
the definition of functions used for multi-column agg whose result type is a fixed-length type.
type MultiAggEval2 ¶
type MultiAggEval2 func( exec MultiAggRetVar, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions used for multi-column agg whose result type is a var-len type.
type MultiAggFillNull1 ¶
type MultiAggFillNull1[to types.FixedSizeTExceptStrType] func( exec MultiAggRetFixed[to]) error
the definition of functions used for multi-column agg whose result type is a fixed-length type.
type MultiAggFillNull2 ¶
type MultiAggFillNull2 func( exec MultiAggRetVar) error
the definition of functions used for multi-column agg whose result type is a var-len type.
type MultiAggFlush1 ¶
type MultiAggFlush1[to types.FixedSizeTExceptStrType] func( exec MultiAggRetFixed[to], getter AggGetter[to], setter AggSetter[to]) error
the definition of functions used for multi-column agg whose result type is a fixed-length type.
type MultiAggFlush2 ¶
type MultiAggFlush2 func( exec MultiAggRetVar, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions used for multi-column agg whose result type is a var-len type.
type MultiAggInit1 ¶
type MultiAggInit1[to types.FixedSizeTExceptStrType] func( exec MultiAggRetFixed[to], setter AggSetter[to], args []types.Type, ret types.Type)
the definition of functions to initialize the aggregation.
type MultiAggInit2 ¶
type MultiAggInit2 func( exec MultiAggRetVar, setter AggBytesSetter, args []types.Type, ret types.Type)
the definition of functions to initialize the aggregation.
type MultiAggMerge1 ¶
type MultiAggMerge1[to types.FixedSizeTExceptStrType] func( exec1, exec2 MultiAggRetFixed[to], getter1, getter2 AggGetter[to], setter AggSetter[to]) error
the definition of functions used for multi-column agg whose result type is a fixed-length type.
type MultiAggMerge2 ¶
type MultiAggMerge2 func( exec1, exec2 MultiAggRetVar, getter1, getter2 AggBytesGetter, setter AggBytesSetter) error
the definition of functions used for multi-column agg whose result type is a var-len type.
type MultiAggRetFixed ¶
type MultiAggRetFixed[to types.FixedSizeTExceptStrType] interface{ AggCanMarshal }
type MultiAggRetVar ¶
type MultiAggRetVar interface{ AggCanMarshal }
type MultiColumnAggInformation ¶
type MultiColumnAggInformation struct {
// contains filtered or unexported fields
}
type MultiColumnAggRetFixedRegisteredInfo ¶
type MultiColumnAggRetFixedRegisteredInfo[to types.FixedSizeTExceptStrType] struct { MultiColumnAggInformation // contains filtered or unexported fields }
func MakeMultiAggRetFixedRegisteredInfo ¶
func MakeMultiAggRetFixedRegisteredInfo[to types.FixedSizeTExceptStrType]( info MultiColumnAggInformation, impl func() MultiAggRetFixed[to], init MultiAggInit1[to], fillWhich []any, fillNullWhich []MultiAggFillNull1[to], rowValid rowValidForMultiAgg1[to], eval MultiAggEval1[to], merge MultiAggMerge1[to], flush MultiAggFlush1[to], ) MultiColumnAggRetFixedRegisteredInfo[to]
type SimpleAggMemoryManager ¶
type SimpleAggMemoryManager struct {
// contains filtered or unexported fields
}
func (SimpleAggMemoryManager) GetVector ¶
func (m SimpleAggMemoryManager) GetVector(typ types.Type) *vector.Vector
func (SimpleAggMemoryManager) Mp ¶
func (m SimpleAggMemoryManager) Mp() *mpool.MPool
func (SimpleAggMemoryManager) PutVector ¶
func (m SimpleAggMemoryManager) PutVector(v *vector.Vector)
type SingleAggFill1 ¶
type SingleAggFill1[from, to types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetFixed[from, to], value from, getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to fill the aggregation with one value.
type SingleAggFill2 ¶
type SingleAggFill2[from types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetVar[from], value from, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to fill the aggregation with one value.
type SingleAggFill3 ¶
type SingleAggFill3[to types.FixedSizeTExceptStrType] func( exec SingleAggFromVarRetFixed[to], value []byte, getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to fill the aggregation with one value.
type SingleAggFill4 ¶
type SingleAggFill4 func( exec SingleAggFromVarRetVar, value []byte, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to fill the aggregation with one value.
type SingleAggFillNull1 ¶
type SingleAggFillNull1[from, to types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetFixed[from, to], getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to fill the aggregation with one null value.
type SingleAggFillNull2 ¶
type SingleAggFillNull2[from types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetVar[from], getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to fill the aggregation with one null value.
type SingleAggFillNull3 ¶
type SingleAggFillNull3[to types.FixedSizeTExceptStrType] func( exec SingleAggFromVarRetFixed[to], getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to fill the aggregation with one null value.
type SingleAggFillNull4 ¶
type SingleAggFillNull4 func( exec SingleAggFromVarRetVar, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to fill the aggregation with one null value.
type SingleAggFills1 ¶
type SingleAggFills1[from, to types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetFixed[from, to], value from, isNull bool, count int, getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to fill the aggregation with multiple values.
type SingleAggFills2 ¶
type SingleAggFills2[from types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetVar[from], value from, isNull bool, count int, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to fill the aggregation with multiple values.
type SingleAggFills3 ¶
type SingleAggFills3[to types.FixedSizeTExceptStrType] func( exec SingleAggFromVarRetFixed[to], value []byte, isNull bool, count int, getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to fill the aggregation with multiple values.
type SingleAggFills4 ¶
type SingleAggFills4 func( exec SingleAggFromVarRetVar, value []byte, isNull bool, count int, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to fill the aggregation with multiple values.
type SingleAggFlush1 ¶
type SingleAggFlush1[from, to types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetFixed[from, to], getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to return the final result of the aggregation.
type SingleAggFlush2 ¶
type SingleAggFlush2[from types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetVar[from], getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to return the final result of the aggregation.
type SingleAggFlush3 ¶
type SingleAggFlush3[to types.FixedSizeTExceptStrType] func( exec SingleAggFromVarRetFixed[to], getter AggGetter[to], setter AggSetter[to]) error
the definition of functions to return the final result of the aggregation.
type SingleAggFlush4 ¶
type SingleAggFlush4 func( exec SingleAggFromVarRetVar, getter AggBytesGetter, setter AggBytesSetter) error
the definition of functions to return the final result of the aggregation.
type SingleAggFromFixedRetFixed ¶
type SingleAggFromFixedRetFixed[from types.FixedSizeTExceptStrType, to types.FixedSizeTExceptStrType] interface{ AggCanMarshal }
func GenerateEmptyContextFromFixedToFixed ¶
func GenerateEmptyContextFromFixedToFixed[from, to types.FixedSizeTExceptStrType]() SingleAggFromFixedRetFixed[from, to]
func GenerateFlagContextFromFixedToFixed ¶
func GenerateFlagContextFromFixedToFixed[from, to types.FixedSizeTExceptStrType]() SingleAggFromFixedRetFixed[from, to]
type SingleAggFromFixedRetVar ¶
type SingleAggFromFixedRetVar[from types.FixedSizeTExceptStrType] interface{ AggCanMarshal }
func GenerateEmptyContextFromFixedToVar ¶
func GenerateEmptyContextFromFixedToVar[from types.FixedSizeTExceptStrType]() SingleAggFromFixedRetVar[from]
func GenerateFlagContextFromFixedToVar ¶
func GenerateFlagContextFromFixedToVar[from types.FixedSizeTExceptStrType]() SingleAggFromFixedRetVar[from]
type SingleAggFromVarRetFixed ¶
type SingleAggFromVarRetFixed[to types.FixedSizeTExceptStrType] interface{ AggCanMarshal }
func GenerateEmptyContextFromVarToFixed ¶
func GenerateEmptyContextFromVarToFixed[to types.FixedSizeTExceptStrType]() SingleAggFromVarRetFixed[to]
func GenerateFlagContextFromVarToFixed ¶
func GenerateFlagContextFromVarToFixed[to types.FixedSizeTExceptStrType]() SingleAggFromVarRetFixed[to]
type SingleAggFromVarRetVar ¶
type SingleAggFromVarRetVar interface{ AggCanMarshal }
func GenerateEmptyContextFromVarToVar ¶
func GenerateEmptyContextFromVarToVar() SingleAggFromVarRetVar
func GenerateFlagContextFromVarToVar ¶
func GenerateFlagContextFromVarToVar() SingleAggFromVarRetVar
type SingleAggImplementationFixedFixed ¶
type SingleAggImplementationFixedFixed[from, to types.FixedSizeTExceptStrType] struct { SingleColumnAggInformation // contains filtered or unexported fields }
func MakeSingleAgg1RegisteredInfo ¶
func MakeSingleAgg1RegisteredInfo[from, to types.FixedSizeTExceptStrType]( info SingleColumnAggInformation, impl func() SingleAggFromFixedRetFixed[from, to], init SingleAggInit1[from, to], fill SingleAggFill1[from, to], fillNull SingleAggFillNull1[from, to], fills SingleAggFills1[from, to], merge SingleAggMerge1[from, to], flush SingleAggFlush1[from, to], ) SingleAggImplementationFixedFixed[from, to]
type SingleAggImplementationFixedVar ¶
type SingleAggImplementationFixedVar[from types.FixedSizeTExceptStrType] struct { SingleColumnAggInformation // contains filtered or unexported fields }
func MakeSingleAgg2RegisteredInfo ¶
func MakeSingleAgg2RegisteredInfo[from types.FixedSizeTExceptStrType]( info SingleColumnAggInformation, impl func() SingleAggFromFixedRetVar[from], init SingleAggInit2[from], fill SingleAggFill2[from], fillNull SingleAggFillNull2[from], fills SingleAggFills2[from], merge SingleAggMerge2[from], flush SingleAggFlush2[from], ) SingleAggImplementationFixedVar[from]
type SingleAggImplementationVarVar ¶
type SingleAggImplementationVarVar struct { SingleColumnAggInformation // contains filtered or unexported fields }
func MakeSingleAgg4RegisteredInfo ¶
func MakeSingleAgg4RegisteredInfo( info SingleColumnAggInformation, impl func() SingleAggFromVarRetVar, init SingleAggInit4, fill SingleAggFill4, fillNull SingleAggFillNull4, fills SingleAggFills4, merge SingleAggMerge4, flush SingleAggFlush4, ) SingleAggImplementationVarVar
type SingleAggInit1 ¶
type SingleAggInit1[from types.FixedSizeTExceptStrType, to types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetFixed[from, to], setter AggSetter[to], arg, ret types.Type) error
the definition of functions to initialize the aggregation.
type SingleAggInit2 ¶
type SingleAggInit2[from types.FixedSizeTExceptStrType] func( exec SingleAggFromFixedRetVar[from], setter AggBytesSetter, arg, ret types.Type) error
the definition of functions to initialize the aggregation.
type SingleAggInit3 ¶
type SingleAggInit3[to types.FixedSizeTExceptStrType] func( exec SingleAggFromVarRetFixed[to], setter AggSetter[to], arg, ret types.Type) error
the definition of functions to initialize the aggregation.
type SingleAggInit4 ¶
type SingleAggInit4 func( exec SingleAggFromVarRetVar, setter AggBytesSetter, arg, ret types.Type) error
the definition of functions to initialize the aggregation.
type SingleAggMerge1 ¶
type SingleAggMerge1[from, to types.FixedSizeTExceptStrType] func( exec1, exec2 SingleAggFromFixedRetFixed[from, to], getter1, getter2 AggGetter[to], setter AggSetter[to]) error
the definition of functions to merge two aggregations.
type SingleAggMerge2 ¶
type SingleAggMerge2[from types.FixedSizeTExceptStrType] func( exec1, exec2 SingleAggFromFixedRetVar[from], getter1, getter2 AggBytesGetter, setter AggBytesSetter) error
the definition of functions to merge two aggregations.
type SingleAggMerge3 ¶
type SingleAggMerge3[to types.FixedSizeTExceptStrType] func( exec1, exec2 SingleAggFromVarRetFixed[to], getter1, getter2 AggGetter[to], setter AggSetter[to]) error
the definition of functions to merge two aggregations.
type SingleAggMerge4 ¶
type SingleAggMerge4 func( exec1, exec2 SingleAggFromVarRetVar, getter1, getter2 AggBytesGetter, setter AggBytesSetter) error
the definition of functions to merge two aggregations.
type SingleColumnAggInformation ¶
type SingleColumnAggInformation struct {
// contains filtered or unexported fields
}