当 outputMetaFields为空且 metaFunctionSet 非空时,自动填充 meta 字段 & 优化分区名称设置前的集合非空判断

This commit is contained in:
苑勇 2025-09-29 22:37:07 +08:00
parent a316368aa3
commit e6f7bcaf0a
2 changed files with 10 additions and 1 deletions

View File

@ -54,7 +54,7 @@ public class CollectionSchemaBuilder {
}
public void addNumPartitions(Integer numPartitions){
if (numPartitions < 1) {
if (numPartitions == null || numPartitions < 1) {
return;
}
this.numPartitions=numPartitions;

View File

@ -859,6 +859,9 @@ public class LambdaQueryWrapper<T> extends AbstractChainWrapper<T> implements Wr
Collection<String> values = conversionCache.getPropertyCache().functionToPropertyMap.values();
builder.outputFields(new ArrayList<>(values));
}
if (CollectionUtils.isEmpty(outputMetaFields) && !CollectionUtils.isEmpty(conversionCache.getPropertyCache().metaFunctionSet)) {
outputMetaFields = new ArrayList<>(conversionCache.getPropertyCache().metaFunctionSet);
}
if (!searchParams.isEmpty()) {
builder.searchParams(searchParams);
}
@ -915,6 +918,9 @@ public class LambdaQueryWrapper<T> extends AbstractChainWrapper<T> implements Wr
Collection<String> values = conversionCache.getPropertyCache().functionToPropertyMap.values();
builder.outputFields(new ArrayList<>(values));
}
if (CollectionUtils.isEmpty(outputMetaFields) && !CollectionUtils.isEmpty(conversionCache.getPropertyCache().metaFunctionSet)) {
outputMetaFields = new ArrayList<>(conversionCache.getPropertyCache().metaFunctionSet);
}
return builder.build();
}
private HybridSearchReq buildHybrid(){
@ -956,6 +962,9 @@ public class LambdaQueryWrapper<T> extends AbstractChainWrapper<T> implements Wr
Collection<String> values = conversionCache.getPropertyCache().functionToPropertyMap.values();
reqBuilder.outFields(new ArrayList<>(values));
}
if (CollectionUtils.isEmpty(outputMetaFields) && !CollectionUtils.isEmpty(conversionCache.getPropertyCache().metaFunctionSet)) {
outputMetaFields = new ArrayList<>(conversionCache.getPropertyCache().metaFunctionSet);
}
if (!CollectionUtils.isEmpty(partitionNames)) {
reqBuilder.partitionNames(partitionNames);
}