From 2a17f9fe56d0e32501b7abb362845acef5b3f207 Mon Sep 17 00:00:00 2001 From: Tomas Touceda Date: Mon, 30 Aug 2021 14:56:15 -0300 Subject: [PATCH] Remove hardcoded limits to the labels (#1857) * Remove hardcoded limits to the labels * Add changes file * Remove test that doens't apply anymore --- changes/remove-limits-for-labels-in-targets | 1 + server/datastore/mysql/labels.go | 3 -- server/datastore/mysql/labels_test.go | 57 ++++++--------------- 3 files changed, 16 insertions(+), 45 deletions(-) create mode 100644 changes/remove-limits-for-labels-in-targets diff --git a/changes/remove-limits-for-labels-in-targets b/changes/remove-limits-for-labels-in-targets new file mode 100644 index 0000000000..dade073dbc --- /dev/null +++ b/changes/remove-limits-for-labels-in-targets @@ -0,0 +1 @@ +* Remove hardcoded limits in label searches for gather targets for queries. diff --git a/server/datastore/mysql/labels.go b/server/datastore/mysql/labels.go index 89490a0be6..d5a5fbde44 100644 --- a/server/datastore/mysql/labels.go +++ b/server/datastore/mysql/labels.go @@ -484,7 +484,6 @@ func (d *Datastore) searchLabelsWithOmits(filter fleet.TeamFilter, query string, ) AND id NOT IN (?) ORDER BY label_type DESC, id ASC - LIMIT 10 `, d.whereFilterHostsByTeams(filter, "h"), ) @@ -558,7 +557,6 @@ func (d *Datastore) searchLabelsDefault(filter fleet.TeamFilter, omit ...uint) ( WHERE id NOT IN (?) GROUP BY id ORDER BY label_type DESC, id ASC - LIMIT 7 `, d.whereFilterHostsByTeams(filter, "h"), ) @@ -615,7 +613,6 @@ func (d *Datastore) SearchLabels(filter fleet.TeamFilter, query string, omit ... MATCH(name) AGAINST(? IN BOOLEAN MODE) ) ORDER BY label_type DESC, id ASC - LIMIT 10 `, d.whereFilterHostsByTeams(filter, "h"), ) diff --git a/server/datastore/mysql/labels_test.go b/server/datastore/mysql/labels_test.go index f8f879a741..71b1981ca4 100644 --- a/server/datastore/mysql/labels_test.go +++ b/server/datastore/mysql/labels_test.go @@ -188,20 +188,19 @@ func TestSearchLabels(t *testing.T) { defer db.Close() specs := []*fleet.LabelSpec{ - &fleet.LabelSpec{ - ID: 1, - Name: "foo", - }, - &fleet.LabelSpec{ - ID: 2, - Name: "bar", - }, - &fleet.LabelSpec{ - ID: 3, - Name: "foo-bar", - }, - &fleet.LabelSpec{ - ID: 4, + {ID: 1, Name: "foo"}, + {ID: 2, Name: "bar"}, + {ID: 3, Name: "foo-bar"}, + {ID: 4, Name: "bar2"}, + {ID: 5, Name: "bar3"}, + {ID: 6, Name: "bar4"}, + {ID: 7, Name: "bar5"}, + {ID: 8, Name: "bar6"}, + {ID: 9, Name: "bar7"}, + {ID: 10, Name: "bar8"}, + {ID: 11, Name: "bar9"}, + { + ID: 12, Name: "All Hosts", LabelType: fleet.LabelTypeBuiltIn, }, @@ -209,7 +208,7 @@ func TestSearchLabels(t *testing.T) { err := db.ApplyLabelSpecs(specs) require.Nil(t, err) - all, err := db.Label(specs[3].ID) + all, err := db.Label(specs[len(specs)-1].ID) require.Nil(t, err) l3, err := db.Label(specs[2].ID) require.Nil(t, err) @@ -221,6 +220,7 @@ func TestSearchLabels(t *testing.T) { // don't error. labels, err := db.SearchLabels(filter, "") require.Nil(t, err) + assert.Len(t, labels, 12) assert.Contains(t, labels, all) labels, err = db.SearchLabels(filter, "foo") @@ -239,33 +239,6 @@ func TestSearchLabels(t *testing.T) { assert.Contains(t, labels, all) } -func TestSearchLabelsLimit(t *testing.T) { - db := CreateMySQLDS(t) - defer db.Close() - - all := &fleet.LabelSpec{ - Name: "All Hosts", - LabelType: fleet.LabelTypeBuiltIn, - } - err := db.ApplyLabelSpecs([]*fleet.LabelSpec{all}) - require.Nil(t, err) - - for i := 0; i < 15; i++ { - l := &fleet.LabelSpec{ - Name: fmt.Sprintf("foo%d", i), - } - err := db.ApplyLabelSpecs([]*fleet.LabelSpec{l}) - require.Nil(t, err) - } - - user := &fleet.User{GlobalRole: ptr.String(fleet.RoleAdmin)} - filter := fleet.TeamFilter{User: user} - - labels, err := db.SearchLabels(filter, "foo") - require.Nil(t, err) - assert.Len(t, labels, 11) -} - func TestListHostsInLabel(t *testing.T) { db := CreateMySQLDS(t) defer db.Close()