LOG: statement: -- bib search: #CD_documentLength #CD_meanHarmonic #CD_uniqueWords core_limit(100000) badge_orgs(1) estimation_strategy(inclusion) skip_check(0) check_limit(1000) tolkien depth(0) WITH w AS ( WITH xe4603a8_keyword_xq AS (SELECT (to_tsquery('english_nostop', COALESCE(NULLIF( '(' || btrim(regexp_replace(search_normalize(split_date_range($_20434$tolkien$_20434$)),E'(?:\\s+|:)','&','g'),'&|') || ')', '()'), '')) || to_tsquery('simple', COALESCE(NULLIF( '(' || btrim(regexp_replace(search_normalize(split_date_range($_20434$tolkien$_20434$)),E'(?:\\s+|:)','&','g'),'&|') || ')', '()'), ''))) AS tsq, (to_tsquery('english_nostop', COALESCE(NULLIF( '(' || btrim(regexp_replace(search_normalize(split_date_range($_20434$tolkien$_20434$)),E'(?:\\s+|:)','&','g'),'&|') || ')', '()'), '')) || to_tsquery('simple', COALESCE(NULLIF( '(' || btrim(regexp_replace(search_normalize(split_date_range($_20434$tolkien$_20434$)),E'(?:\\s+|:)','&','g'),'&|') || ')', '()'), ''))) AS tsq_rank ),lang_with AS (SELECT id FROM config.coded_value_map WHERE ctype = 'item_lang' AND code = $_20434$eng$_20434$), pop_with AS ( SELECT record, ARRAY_AGG(badge) AS badges, SUM(s.score::NUMERIC*b.weight::NUMERIC)/SUM(b.weight::NUMERIC) AS total_score FROM rating.record_badge_score s JOIN rating.badge b ON ( b.id = s.badge AND b.scope = ANY ('{1}')) GROUP BY 1) ,c_attr AS (SELECT (ARRAY_TO_STRING(ARRAY[c_attrs,search.calculate_visibility_attribute_test('circ_lib','{1,2,3,4,5,6,7,8,9}',FALSE)],'&'))::query_int AS vis_test FROM asset.patron_default_visibility_mask() x) ,b_attr AS (SELECT (ARRAY_TO_STRING(ARRAY[b_attrs,search.calculate_visibility_attribute_test('luri_org','{1}',FALSE)],'&'))::query_int AS vis_test FROM asset.patron_default_visibility_mask() x) SELECT id, rel, CASE WHEN cardinality(records) = 1 THEN records[1] ELSE NULL END AS record, NULL::INT AS total, NULL::INT AS checked, NULL::INT AS visible, NULL::INT AS deleted, NULL::INT AS excluded, badges, popularity FROM (SELECT m.source AS id, ARRAY[m.source] AS records, (AVG( (COALESCE(ts_rank_cd('{0.1, 0.2, 0.4, 1.0}', xe4603a8_keyword.index_vector, xe4603a8_keyword.tsq_rank, 14) * xe4603a8_keyword.weight, 0.0) * evergreen.rel_bump(('{' || quote_literal(search_normalize($_20434$tolkien$_20434$)) || '}')::TEXT[], xe4603a8_keyword.value, '{word_order}'::TEXT[], '{10}'::NUMERIC[])) )+1 * COALESCE( NULLIF( FIRST(mrv.vlist @> ARRAY[lang_with.id]), FALSE )::INT * 5, 1))::NUMERIC AS rel, 1.0/((AVG( (COALESCE(ts_rank_cd('{0.1, 0.2, 0.4, 1.0}', xe4603a8_keyword.index_vector, xe4603a8_keyword.tsq_rank, 14) * xe4603a8_keyword.weight, 0.0) * evergreen.rel_bump(('{' || quote_literal(search_normalize($_20434$tolkien$_20434$)) || '}')::TEXT[], xe4603a8_keyword.value, '{word_order}'::TEXT[], '{10}'::NUMERIC[])) )+1 * COALESCE( NULLIF( FIRST(mrv.vlist @> ARRAY[lang_with.id]), FALSE )::INT * 5, 1)))::NUMERIC AS rank, FIRST(pubdate_t.value) AS tie_break, STRING_AGG(ARRAY_TO_STRING(pop_with.badges,','),',') AS badges, AVG(COALESCE(pop_with.total_score::NUMERIC,0.0::NUMERIC))::NUMERIC(2,1) AS popularity FROM metabib.metarecord_source_map m LEFT JOIN ( SELECT fe.*, fe_weight.weight, xe4603a8_keyword_xq.tsq, xe4603a8_keyword_xq.tsq_rank /* search */ FROM metabib.keyword_field_entry AS fe JOIN config.metabib_field AS fe_weight ON (fe_weight.id = fe.field) JOIN xe4603a8_keyword_xq ON (fe.index_vector @@ xe4603a8_keyword_xq.tsq) ) AS xe4603a8_keyword ON (m.source = xe4603a8_keyword.source) INNER JOIN metabib.record_attr_vector_list mrv ON m.source = mrv.source INNER JOIN biblio.record_entry bre ON m.source = bre.id LEFT JOIN pop_with ON ( m.source = pop_with.record ) LEFT JOIN metabib.record_sorter pubdate_t ON m.source = pubdate_t.source AND attr = 'pubdate' ,lang_with ,c_attr ,b_attr WHERE 1=1 AND ( (xe4603a8_keyword.id IS NOT NULL) ) AND ( (EXISTS (SELECT 1 FROM asset.copy_vis_attr_cache WHERE record = m.source AND vis_attr_vector @@ c_attr.vis_test)) OR ((b_attr.vis_test IS NULL OR bre.vis_attr_vector @@ b_attr.vis_test)) ) GROUP BY 1 ORDER BY 4 ASC NULLS LAST, 5 DESC NULLS LAST, 3 DESC LIMIT 100000 ) AS core_query ) (SELECT * FROM w LIMIT 1000 OFFSET 0) UNION ALL SELECT NULL,NULL,NULL,COUNT(*),COUNT(*),COUNT(*),0,0,NULL,NULL FROM w;