Change size on terms aggregation for ES 5.x

pull/4970/head
Leandro Piccilli 10 years ago
parent df9ace8ac2
commit 3057c9747c
  1. 5
      public/app/plugins/datasource/elasticsearch/query_builder.js
  2. 7
      public/app/plugins/datasource/elasticsearch/specs/datasource_specs.ts

@ -28,7 +28,8 @@ function (queryDef) {
return queryNode; return queryNode;
} }
queryNode.terms.size = parseInt(aggDef.settings.size, 10); queryNode.terms.size = parseInt(aggDef.settings.size, 10) === 0 ? 1000 : parseInt(aggDef.settings.size, 10);
if (aggDef.settings.orderBy !== void 0) { if (aggDef.settings.orderBy !== void 0) {
queryNode.terms.order = {}; queryNode.terms.order = {};
queryNode.terms.order[aggDef.settings.orderBy] = aggDef.settings.order; queryNode.terms.order[aggDef.settings.orderBy] = aggDef.settings.order;
@ -268,7 +269,7 @@ function (queryDef) {
"1": { "1": {
"terms": { "terms": {
"field": queryDef.field, "field": queryDef.field,
"size": 0, "size": 1000,
"order": { "order": {
"_term": "asc" "_term": "asc"
} }

@ -151,7 +151,7 @@ describe('ElasticDatasource', function() {
}); });
describe('When issuing metricFind query on es5.x', function() { describe('When issuing metricFind query on es5.x', function() {
var requestOptions, parts, header; var requestOptions, parts, header, body;
beforeEach(function() { beforeEach(function() {
createDatasource({url: 'http://es.com', index: 'test', jsonData: {esVersion: '5'}}); createDatasource({url: 'http://es.com', index: 'test', jsonData: {esVersion: '5'}});
@ -170,6 +170,7 @@ describe('ElasticDatasource', function() {
parts = requestOptions.data.split('\n'); parts = requestOptions.data.split('\n');
header = angular.fromJson(parts[0]); header = angular.fromJson(parts[0]);
body = angular.fromJson(parts[1]);
}); });
it('should not set search type to count', function() { it('should not set search type to count', function() {
@ -177,10 +178,12 @@ describe('ElasticDatasource', function() {
}); });
it('should set size to 0', function() { it('should set size to 0', function() {
var body = angular.fromJson(parts[1]);
expect(body.size).to.be(0); expect(body.size).to.be(0);
}); });
it('should not set terms aggregation size to 0', function() {
expect(body['aggs']['1']['terms'].size).to.not.be(0);
});
}); });
}); });

Loading…
Cancel
Save