in spark/sql/dataframe.go [1110:1134]
func (df *dataFrameImpl) SortWithinPartitions(ctx context.Context, columns ...column.Convertible) (DataFrame, error) {
globalSort := false
sortExprs := make([]*proto.Expression_SortOrder, 0, len(columns))
for _, c := range columns {
expr, err := c.ToProto(ctx)
if err != nil {
return nil, err
}
sortExprs = append(sortExprs, expr.GetSortOrder())
}
rel := &proto.Relation{
Common: &proto.RelationCommon{
PlanId: newPlanId(),
},
RelType: &proto.Relation_Sort{
Sort: &proto.Sort{
Input: df.relation,
Order: sortExprs,
IsGlobal: &globalSort,
},
},
}
return NewDataFrame(df.session, rel), nil
}