Remove hardcoded limits to the labels (#1857)

* Remove hardcoded limits to the labels

* Add changes file

* Remove test that doens't apply anymore
This commit is contained in:
Tomas Touceda 2021-08-30 14:56:15 -03:00 committed by GitHub
parent 15b7f5dd80
commit 2a17f9fe56
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 16 additions and 45 deletions

View file

@ -0,0 +1 @@
* Remove hardcoded limits in label searches for gather targets for queries.

View file

@ -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"),
)

View file

@ -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()