This is in 8.11.1. I've got the following (parsed) query that returns no
results:
{
"q":"{!parent tag=top filters=$childFq which=scope_s:parent
v=$childQuery}",
"json.facet":"{colors:{ domain: { excludeTags:top,
filter:[\"{!filters param=$childFq excludeTags=color v=$childQuery}\",
\"{!child of=scope_s:parent filters=$fq}scope_s:parent\"] }, type:terms,
field:color_ids_ss, limit:-1, facet:{ parentsCount:\"uniqueBlock(_root_)\"
} }}",
"fl":"id",
"edisQ":"XXXXX",
"fq":["available_catalog140002_b:true",
"{!edismax tag=top qf=\"name_t^6 name_s^10 studio_t^2 series_t
categories_catalog140002_txt ancestor_categories_catalog140002_txt
features_txt selling_points_txt\" pf=\"name_t^6 studio_t^2 series_t^2
categories_catalog140002_txt^2 ancestor_categories_catalog140002_txt^2
features_txt selling_points_txt\" mm=\"2<-1 4<60%\" tie=\"0.1\" v=$edisQ}"],
"rows":"28",
"childFq":["available_catalog140002_b:true",
"-sku_type_s:25"],
"childQuery":"scope_s:child"}
}
If I take out childFq=-sku_type_s:25, it works. If I change it to
childFq=sku_type_s:21, it works. I tried integer fields originally, and
thought that maybe the problem was not being able to negate a filter on an
integer, but changing to string did not fix it. I'm stumped finding an
explanation for this, but I have also found no examples online that combine
real complexity with block join query parsing. Any suggestions on what I am
doing wrong?