Test experiment in pipelines.

This commit is contained in:
Luke deGruchy 2024-05-16 16:26:03 -04:00
parent a0e41439a6
commit 3c776ab363
2 changed files with 25 additions and 12 deletions

View File

@ -2670,6 +2670,7 @@ public class QueryStack {
}
}
// LUKETODO: we already have the HASH_SYS WHERE SQL here and nothing else
return toAndPredicate(andPredicates);
}

View File

@ -282,12 +282,14 @@ public class SearchBuilder implements ISearchBuilder<JpaPid> {
continue;
}
List<List<IQueryParameterType>> andOrParams = myParams.get(nextParamName);
// LUKETODO: setResourceName appears NOT to work here?!?!?!??!??!?!
Condition predicate = theQueryStack.searchForIdsWithAndOr(with().setResourceName(myResourceName)
final QueryStack.SearchForIdsParams searchForIdsParams = with().setResourceName(myResourceName)
.setParamName(nextParamName)
.setAndOrParams(andOrParams)
.setRequest(theRequest)
.setRequestPartitionId(myRequestPartitionId));
// .setSourceJoinColumn(theQueryStack.) ????
.setRequestPartitionId(myRequestPartitionId);
// LUKETODO: setResourceName appears NOT to work here?!?!?!??!??!?!
Condition predicate = theQueryStack.searchForIdsWithAndOr(searchForIdsParams);
if (predicate != null) {
theSearchSqlBuilder.addPredicate(predicate);
}
@ -673,16 +675,26 @@ public class SearchBuilder implements ISearchBuilder<JpaPid> {
// If we haven't added any predicates yet, we're doing a search for all resources. Make sure we add the
// partition ID predicate in that case.
if (!sqlBuilder.haveAtLeastOnePredicate()) {
// LUKETODO: this is where we add the RES_TYPE clause
// LUKETODO: we skip this in the failing case because there's no predicate??????
Condition partitionIdPredicate = sqlBuilder
.getOrCreateResourceTablePredicateBuilder()
.createPartitionIdPredicate(myRequestPartitionId);
if (partitionIdPredicate != null) {
sqlBuilder.addPredicate(partitionIdPredicate);
}
// LUKETODO: commenting this out seems to fix the problem
// if (!sqlBuilder.haveAtLeastOnePredicate()) {
// LUKETODO: this is where we add the RES_TYPE clause
// LUKETODO: we skip this in the failing case because there's no predicate??????
Condition partitionIdPredicate =
sqlBuilder.getOrCreateResourceTablePredicateBuilder().createPartitionIdPredicate(myRequestPartitionId);
if (partitionIdPredicate != null) {
sqlBuilder.addPredicate(partitionIdPredicate);
}
// }
// // If we haven't added any predicates yet, we're doing a search for all resources. Make sure we add the
// // partition ID predicate in that case.
// if (!sqlBuilder.haveAtLeastOnePredicate()) {
// Condition partitionIdPredicate =
// sqlBuilder.getOrCreateResourceTablePredicateBuilder().createPartitionIdPredicate(myRequestPartitionId);
// if (partitionIdPredicate != null) {
// sqlBuilder.addPredicate(partitionIdPredicate);
// }
// }
// Add PID list predicate for full text search and/or lastn operation
if (thePidList != null && thePidList.size() > 0) {