本文整理汇总了Golang中parser.QuerySpec.IsAscending方法的典型用法代码示例。如果您正苦于以下问题:Golang QuerySpec.IsAscending方法的具体用法?Golang QuerySpec.IsAscending怎么用?Golang QuerySpec.IsAscending使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类parser.QuerySpec
的用法示例。
在下文中一共展示了QuerySpec.IsAscending方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: GetShards
func (self *ClusterConfiguration) GetShards(querySpec *parser.QuerySpec) []*ShardData {
self.shardsByIdLock.RLock()
defer self.shardsByIdLock.RUnlock()
shouldQueryShortTerm, shouldQueryLongTerm := querySpec.ShouldQueryShortTermAndLongTerm()
if shouldQueryLongTerm && shouldQueryShortTerm {
shards := make([]*ShardData, 0)
shards = append(shards, self.getShardRange(querySpec, self.shortTermShards)...)
shards = append(shards, self.getShardRange(querySpec, self.longTermShards)...)
if querySpec.IsAscending() {
SortShardsByTimeAscending(shards)
} else {
SortShardsByTimeDescending(shards)
}
return shards
}
var shards []*ShardData
if shouldQueryLongTerm {
shards = self.getShardRange(querySpec, self.longTermShards)
} else {
shards = self.getShardRange(querySpec, self.shortTermShards)
}
if querySpec.IsAscending() {
newShards := append([]*ShardData{}, shards...)
SortShardsByTimeAscending(newShards)
return newShards
}
return shards
}
示例2: GetShards
func (self *ClusterConfiguration) GetShards(querySpec *parser.QuerySpec) []*ShardData {
self.shardsByIdLock.RLock()
defer self.shardsByIdLock.RUnlock()
if querySpec.IsDropSeriesQuery() {
seriesName := querySpec.Query().DropSeriesQuery.GetTableName()
if seriesName[0] < FIRST_LOWER_CASE_CHARACTER {
return self.longTermShards
}
return self.shortTermShards
}
shouldQueryShortTerm, shouldQueryLongTerm := querySpec.ShouldQueryShortTermAndLongTerm()
if shouldQueryLongTerm && shouldQueryShortTerm {
shards := make([]*ShardData, 0)
shards = append(shards, self.getShardRange(querySpec, self.shortTermShards)...)
shards = append(shards, self.getShardRange(querySpec, self.longTermShards)...)
if querySpec.IsAscending() {
SortShardsByTimeAscending(shards)
} else {
SortShardsByTimeDescending(shards)
}
return shards
}
var shards []*ShardData
if shouldQueryLongTerm {
shards = self.getShardRange(querySpec, self.longTermShards)
} else {
shards = self.getShardRange(querySpec, self.shortTermShards)
}
if querySpec.IsAscending() {
newShards := append([]*ShardData{}, shards...)
SortShardsByTimeAscending(newShards)
return newShards
}
return shards
}