@@ -641,11 +641,11 @@ func TestParseSeriesByTagWithCostsFromCountTable(t *testing.T) {
641641 stat := & FinderStat {}
642642 terms , err := taggedFinder .PrepareTaggedTerms (context .Background (), cfg , query , from , until , stat )
643643 if expectedErr != nil {
644- assert .Equal (err , expectedErr , testName + ", err" )
644+ assert .Equal (expectedErr , err , testName + ", err" )
645645 return
646646 }
647647 assert .NoError (err )
648- assert .Equal (taggedFinder .metricMightExists , metricMightExist , testName + ", metricMightExist" )
648+ assert .Equal (metricMightExist , taggedFinder .metricMightExists , testName + ", metricMightExist" )
649649
650650 length := len (expected )
651651 if length < len (terms ) {
@@ -692,7 +692,11 @@ func TestParseSeriesByTagWithCostsFromCountTable(t *testing.T) {
692692 & chtest.TestResponse {
693693 Body : []byte ("environment=production\t 100\n key=value\t 1\n " ),
694694 },
695- nil ,
695+ []TaggedTerm {
696+ {Op : TaggedTermEq , Key : "environment" , Value : "production" , Cost : 0 , NonDefaultCost : false },
697+ {Op : TaggedTermEq , Key : "dc" , Value : "west" , Cost : 0 , NonDefaultCost : false },
698+ {Op : TaggedTermEq , Key : "key" , Value : "value" , Cost : 0 , NonDefaultCost : false },
699+ },
696700 false ,
697701 nil ,
698702 )
@@ -707,7 +711,11 @@ func TestParseSeriesByTagWithCostsFromCountTable(t *testing.T) {
707711 & chtest.TestResponse {
708712 Body : []byte ("" ),
709713 },
710- nil ,
714+ []TaggedTerm {
715+ {Op : TaggedTermEq , Key : "environment" , Value : "production" , Cost : 0 , NonDefaultCost : false },
716+ {Op : TaggedTermEq , Key : "dc" , Value : "west" , Cost : 0 , NonDefaultCost : false },
717+ {Op : TaggedTermEq , Key : "key" , Value : "value" , Cost : 0 , NonDefaultCost : false },
718+ },
711719 false ,
712720 nil ,
713721 )
@@ -843,6 +851,25 @@ func TestParseSeriesByTagWithCostsFromCountTable(t *testing.T) {
843851 nil ,
844852 )
845853
854+ ok (
855+ `3 TaggedTermEq, 1 of them has __name__ key, 1 does not exist in count table` ,
856+ `seriesByTag('environment=production', 'dc=west', 'name=load.avg')` ,
857+ `SELECT Tag1, sum(Count) as cnt FROM tag1_count_table WHERE ` +
858+ `(((Tag1='environment=production') OR (Tag1='dc=west')) OR (Tag1='__name__=load.avg')) ` +
859+ `AND (Date >= '` + date .FromTimestampToDaysFormat (from )+ `' AND Date <= '` + date .FromTimestampToDaysFormat (until )+ `') ` +
860+ `GROUP BY Tag1 FORMAT TabSeparatedRaw` ,
861+ & chtest.TestResponse {
862+ Body : []byte ("environment=production\t 100\n __name__=load.avg\t 10000\n " ),
863+ },
864+ []TaggedTerm {
865+ {Op : TaggedTermEq , Key : "__name__" , Value : "load.avg" , Cost : 0 , NonDefaultCost : false },
866+ {Op : TaggedTermEq , Key : "environment" , Value : "production" , Cost : 0 , NonDefaultCost : false },
867+ {Op : TaggedTermEq , Key : "dc" , Value : "west" , Cost : 0 , NonDefaultCost : false },
868+ },
869+ false ,
870+ nil ,
871+ )
872+
846873 ok (
847874 `Clickhouse returned broken response` ,
848875 `seriesByTag('environment=production', 'dc=west', 'key=value')` ,
0 commit comments