)]}'
{"api-ref/source/samples/create-search-aggregation-response.json":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"d9723da8ef44cb27a0ca0599a1cffc63e48d9b72","unresolved":false,"context_lines":[{"line_number":31,"context_line":"            \"buckets\": ["},{"line_number":32,"context_line":"                {"},{"line_number":33,"context_line":"                    \"doc_count\": 100,"},{"line_number":34,"context_line":"                    \"key\": \"image\""},{"line_number":35,"context_line":"                },"},{"line_number":36,"context_line":"                {"},{"line_number":37,"context_line":"                    \"doc_count\": 3,"}],"source_content_type":"application/json","patch_set":6,"id":"3a98d1f4_a9f54884","line":34,"range":{"start_line":34,"start_character":24,"end_line":34,"end_character":26},"updated":"2016-09-28 19:31:35.000000000","message":"The response here\u0027s a bit weird since it\u0027s operating on the tokens. name.raw would give the full names, but maybe this is interesting too, so i\u0027m ok leaving it.","commit_id":"1bfb0f6b3d96afab262228fce61dd6fbe98dade5"}],"api-ref/source/samples/create-search-free-text-request.json":[{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"9a13faec1fcade5dbbc9a49f4a05259e29520492","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"type\": \"OS::Glance::Image\","},{"line_number":3,"context_line":"    \"multi_match\": { "},{"line_number":4,"context_line":"        \"query\": \"cirros\""},{"line_number":5,"context_line":"    }"},{"line_number":6,"context_line":"}"}],"source_content_type":"application/json","patch_set":5,"id":"5a8bc5a2_63337ff6","line":3,"range":{"start_line":3,"start_character":5,"end_line":3,"end_character":16},"updated":"2016-09-27 15:45:31.000000000","message":"Need top level \"query\" and whitespace","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"type\": \"OS::Glance::Image\","},{"line_number":3,"context_line":"    \"multi_match\": { "},{"line_number":4,"context_line":"        \"query\": \"cirros\""},{"line_number":5,"context_line":"    }"},{"line_number":6,"context_line":"}"}],"source_content_type":"application/json","patch_set":5,"id":"3a98d1f4_e33692b3","line":3,"range":{"start_line":3,"start_character":5,"end_line":3,"end_character":16},"in_reply_to":"5a8bc5a2_63337ff6","updated":"2016-09-28 20:49:22.000000000","message":"Done. Also added \"fields\".","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"}],"api-ref/source/samples/create-search-phrase-field-response.json":[{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":9,"context_line":"          \"container_format\": \"bare\","},{"line_number":10,"context_line":"          \"min_ram\": 0,"},{"line_number":11,"context_line":"          \"updated_at\": \"2016-08-25T17:54:02Z\","},{"line_number":12,"context_line":"          \"cim_pasd_processorarchitecture\": \"Power\","},{"line_number":13,"context_line":"          \"owner\": \"158776c9face41a7a3026d6c1cae686a\","},{"line_number":14,"context_line":"          \"id\": \"7a99b58d-0b70-4138-8086-ab0cc4bd1ba3\","},{"line_number":15,"context_line":"          \"size\": 5969,"}],"source_content_type":"application/json","patch_set":5,"id":"5a8bc5a2_dc80db8d","line":12,"updated":"2016-09-27 04:10:14.000000000","message":"Do we think this may be confusing for users? A lot of these fields are not part of the Glance::Image mapping. But if they exist in the notification/API we will still index the fields. For example, on my system I do not have these non-mapping fields for my images (cim_pasd_processorarchitecture, description, hw_cpu_policy, etc).\n\nSince I don\u0027t have a \"description\" field for any of my images,. this example will never work for me, no matter what text I search for in description. Searching on the \"name\" field does result in a much more rewarding experience!\n\nOr it could be that my dev system has some lame, non-realistic images on it :)","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":9,"context_line":"          \"container_format\": \"bare\","},{"line_number":10,"context_line":"          \"min_ram\": 0,"},{"line_number":11,"context_line":"          \"updated_at\": \"2016-08-25T17:54:02Z\","},{"line_number":12,"context_line":"          \"cim_pasd_processorarchitecture\": \"Power\","},{"line_number":13,"context_line":"          \"owner\": \"158776c9face41a7a3026d6c1cae686a\","},{"line_number":14,"context_line":"          \"id\": \"7a99b58d-0b70-4138-8086-ab0cc4bd1ba3\","},{"line_number":15,"context_line":"          \"size\": 5969,"}],"source_content_type":"application/json","patch_set":5,"id":"3a98d1f4_9daa8d18","line":12,"in_reply_to":"5a8bc5a2_43ada3e7","updated":"2016-09-28 20:49:22.000000000","message":"Left as is.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"9a13faec1fcade5dbbc9a49f4a05259e29520492","unresolved":false,"context_lines":[{"line_number":9,"context_line":"          \"container_format\": \"bare\","},{"line_number":10,"context_line":"          \"min_ram\": 0,"},{"line_number":11,"context_line":"          \"updated_at\": \"2016-08-25T17:54:02Z\","},{"line_number":12,"context_line":"          \"cim_pasd_processorarchitecture\": \"Power\","},{"line_number":13,"context_line":"          \"owner\": \"158776c9face41a7a3026d6c1cae686a\","},{"line_number":14,"context_line":"          \"id\": \"7a99b58d-0b70-4138-8086-ab0cc4bd1ba3\","},{"line_number":15,"context_line":"          \"size\": 5969,"}],"source_content_type":"application/json","patch_set":5,"id":"5a8bc5a2_43ada3e7","line":12,"in_reply_to":"5a8bc5a2_dc80db8d","updated":"2016-09-27 15:45:31.000000000","message":"Description is a field that\u0027s mapped and commonly present on real (non devstack) deploys, i\u0027m ok with it. The other more esoteric fields i\u0027m fine leaving for additional color.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"}],"api-ref/source/samples/list-facets-all-response.json":[{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"  \"OS::Glance::Image\": ["},{"line_number":3,"context_line":"    {"},{"line_number":4,"context_line":"      \"name\": \"status\","}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_cdca671a","line":1,"updated":"2016-09-14 22:21:38.000000000","message":"The output format has changed. There is an upper level doc_count field. The facet fields are now grouped under a \"facets\" list.\n\n\"OS::Glance::Image\": {\n    \"doc_count\": 50,\n    \"facets\": [\n        {\n            \"name\": \"status\",\n          \"type\": \"string\"\n        },\n        {\n          \"name\": \"created_at\",\n          \"type\": \"date\"\n        },\n        {\n          \"name\": \"virtual_size\",\n          \"type\": \"long\"\n        },\n        {\n          \"name\": \"name\",\n          \"type\": \"string\",\n          \"facet_field\": \"name.raw\"\n        },\n        ...\n    ]\n  },\n \"OS::Glance::Metadef\": {\n...","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"  \"OS::Glance::Image\": ["},{"line_number":3,"context_line":"    {"},{"line_number":4,"context_line":"      \"name\": \"status\","}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_c30ba122","line":1,"in_reply_to":"7a8ec9b2_cdca671a","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"  \"OS::Glance::Image\": ["},{"line_number":3,"context_line":"    {"},{"line_number":4,"context_line":"      \"name\": \"status\","},{"line_number":5,"context_line":"      \"type\": \"string\""}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_4dd737bf","line":2,"range":{"start_line":2,"start_character":23,"end_line":2,"end_character":24},"updated":"2016-09-14 22:21:38.000000000","message":"Change to \u0027{\u0027","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"  \"OS::Glance::Image\": ["},{"line_number":3,"context_line":"    {"},{"line_number":4,"context_line":"      \"name\": \"status\","},{"line_number":5,"context_line":"      \"type\": \"string\""}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_0312e956","line":2,"range":{"start_line":2,"start_character":23,"end_line":2,"end_character":24},"in_reply_to":"7a8ec9b2_4dd737bf","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"        \"facets\": ["},{"line_number":5,"context_line":"            {"},{"line_number":6,"context_line":"                \"name\": \"status\","},{"line_number":7,"context_line":"                \"type\": \"string\""},{"line_number":8,"context_line":"            },"},{"line_number":9,"context_line":"            {"},{"line_number":10,"context_line":"                \"name\": \"created_at\","}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_7d04b814","line":7,"updated":"2016-09-23 02:25:06.000000000","message":"This is the output with the parameter \"exclude_options\u003dtrue\", not the default output for \"/v1/search/facets\". The default for this entry would be:\n\n    {\n        \"name\": \"status\",\n        \"type\": \"string\",\n        \"options\": [\n            {\n                \"key\": \"queued\",\n                \"doc_count\": 50\n            },\n            {\n                \"key\": \"active\",\n                \"doc_count\": 3\n             }\n        ]\n    }","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"        \"facets\": ["},{"line_number":5,"context_line":"            {"},{"line_number":6,"context_line":"                \"name\": \"status\","},{"line_number":7,"context_line":"                \"type\": \"string\""},{"line_number":8,"context_line":"            },"},{"line_number":9,"context_line":"            {"},{"line_number":10,"context_line":"                \"name\": \"created_at\","}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_f9d937f4","line":7,"in_reply_to":"5a8bc5a2_7d04b814","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":26,"context_line":"        \"doc_count\": 25,"},{"line_number":27,"context_line":"        \"facets\": ["},{"line_number":28,"context_line":"            {"},{"line_number":29,"context_line":"                \"name\": \"objects.description\","},{"line_number":30,"context_line":"                \"type\": \"string\""},{"line_number":31,"context_line":"            },"},{"line_number":32,"context_line":"            {"}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_1dbf34fc","line":29,"updated":"2016-09-23 02:25:06.000000000","message":"There is another field here:\n\n    \"nested\": true,","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":26,"context_line":"        \"doc_count\": 25,"},{"line_number":27,"context_line":"        \"facets\": ["},{"line_number":28,"context_line":"            {"},{"line_number":29,"context_line":"                \"name\": \"objects.description\","},{"line_number":30,"context_line":"                \"type\": \"string\""},{"line_number":31,"context_line":"            },"},{"line_number":32,"context_line":"            {"}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_79f4475a","line":29,"in_reply_to":"5a8bc5a2_1dbf34fc","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":30,"context_line":"                \"type\": \"string\""},{"line_number":31,"context_line":"            },"},{"line_number":32,"context_line":"            {"},{"line_number":33,"context_line":"                \"name\": \"objects.properties.description\","},{"line_number":34,"context_line":"                \"type\": \"string\""},{"line_number":35,"context_line":"            },"},{"line_number":36,"context_line":"            ..."}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_3dbcf004","line":33,"updated":"2016-09-23 02:25:06.000000000","message":"There is another field here:\n\n    \"nested\": true,","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":30,"context_line":"                \"type\": \"string\""},{"line_number":31,"context_line":"            },"},{"line_number":32,"context_line":"            {"},{"line_number":33,"context_line":"                \"name\": \"objects.properties.description\","},{"line_number":34,"context_line":"                \"type\": \"string\""},{"line_number":35,"context_line":"            },"},{"line_number":36,"context_line":"            ..."}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_b9ea4f72","line":33,"in_reply_to":"5a8bc5a2_3dbcf004","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            },"},{"line_number":52,"context_line":"            {"},{"line_number":53,"context_line":"                \"name\": \"OS-EXT-SRV-ATTR:host\","},{"line_number":54,"context_line":"                \"type\": \"string\""},{"line_number":55,"context_line":"            },"},{"line_number":56,"context_line":"            {"},{"line_number":57,"context_line":"                \"name\": \"name\","}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_ddceac82","line":54,"updated":"2016-09-23 02:25:06.000000000","message":"This is an admin only field. Does it show up when a non-admin runs this?","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":51,"context_line":"            },"},{"line_number":52,"context_line":"            {"},{"line_number":53,"context_line":"                \"name\": \"OS-EXT-SRV-ATTR:host\","},{"line_number":54,"context_line":"                \"type\": \"string\""},{"line_number":55,"context_line":"            },"},{"line_number":56,"context_line":"            {"},{"line_number":57,"context_line":"                \"name\": \"name\","}],"source_content_type":"application/json","patch_set":4,"id":"5a8bc5a2_7969a7f8","line":54,"in_reply_to":"5a8bc5a2_ddceac82","updated":"2016-09-26 21:15:18.000000000","message":"It shouldn\u0027t.  Should we just eliminate it from the example?","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"}],"api-ref/source/samples/list-facets-type-response.json":[{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"  \"OS::Nova::Server\": ["},{"line_number":3,"context_line":"    {"},{"line_number":4,"context_line":"      \"name\": \"status\","}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_6dfdd339","line":1,"updated":"2016-09-14 22:21:38.000000000","message":"See the comments in api-ref/source/samples/list-facets-all-response.json for changes that need to occur here.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"  \"OS::Nova::Server\": ["},{"line_number":3,"context_line":"    {"},{"line_number":4,"context_line":"      \"name\": \"status\","}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_6329ed89","line":1,"in_reply_to":"7a8ec9b2_6dfdd339","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"}],"api-ref/source/samples/list-plugins-response.json":[{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"plugins\": ["},{"line_number":3,"context_line":"        {"},{"line_number":4,"context_line":"             \"name\": \"OS::Glance::Image\","},{"line_number":5,"context_line":"             \"type\": \"OS::Glance::Image\","},{"line_number":6,"context_line":"             \"index\": \"searchlight\""},{"line_number":7,"context_line":"        },"}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_ead1c9ce","line":4,"updated":"2016-09-14 22:21:38.000000000","message":"Delete","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":1,"context_line":"{"},{"line_number":2,"context_line":"    \"plugins\": ["},{"line_number":3,"context_line":"        {"},{"line_number":4,"context_line":"             \"name\": \"OS::Glance::Image\","},{"line_number":5,"context_line":"             \"type\": \"OS::Glance::Image\","},{"line_number":6,"context_line":"             \"index\": \"searchlight\""},{"line_number":7,"context_line":"        },"}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_a31f7559","line":4,"in_reply_to":"7a8ec9b2_ead1c9ce","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        {"},{"line_number":4,"context_line":"             \"name\": \"OS::Glance::Image\","},{"line_number":5,"context_line":"             \"type\": \"OS::Glance::Image\","},{"line_number":6,"context_line":"             \"index\": \"searchlight\""},{"line_number":7,"context_line":"        },"},{"line_number":8,"context_line":"        {"},{"line_number":9,"context_line":"             \"name\": \"OS::Glance::Metadef\","}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_aaeee188","line":6,"updated":"2016-09-14 22:21:38.000000000","message":"Delete and add:\n\n    \"alias-indexing\": \"searchlight-listener\",\n    \"alias-searching\": \"searchlight-search\"","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":3,"context_line":"        {"},{"line_number":4,"context_line":"             \"name\": \"OS::Glance::Image\","},{"line_number":5,"context_line":"             \"type\": \"OS::Glance::Image\","},{"line_number":6,"context_line":"             \"index\": \"searchlight\""},{"line_number":7,"context_line":"        },"},{"line_number":8,"context_line":"        {"},{"line_number":9,"context_line":"             \"name\": \"OS::Glance::Metadef\","}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_c322c1a2","line":6,"in_reply_to":"7a8ec9b2_aaeee188","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":8,"context_line":"        {"},{"line_number":9,"context_line":"             \"name\": \"OS::Glance::Metadef\","},{"line_number":10,"context_line":"             \"type\": \"OS::Glance::Metadef\","},{"line_number":11,"context_line":"             \"index\": \"searchlight\""},{"line_number":12,"context_line":"        }"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    ]"}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_caf16d6c","line":11,"updated":"2016-09-14 22:21:38.000000000","message":"Same as above.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":8,"context_line":"        {"},{"line_number":9,"context_line":"             \"name\": \"OS::Glance::Metadef\","},{"line_number":10,"context_line":"             \"type\": \"OS::Glance::Metadef\","},{"line_number":11,"context_line":"             \"index\": \"searchlight\""},{"line_number":12,"context_line":"        }"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"    ]"}],"source_content_type":"application/json","patch_set":2,"id":"7a8ec9b2_233445dc","line":11,"in_reply_to":"7a8ec9b2_caf16d6c","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"}],"api-ref/source/search-parameters.yaml":[{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# variables in header"},{"line_number":12,"context_line":"Content-type-json:"},{"line_number":13,"context_line":"  description: |"},{"line_number":14,"context_line":"    Mime type of the request body.  Must be ``application/json``."},{"line_number":15,"context_line":"  in: header"},{"line_number":16,"context_line":"  required: true"},{"line_number":17,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_b808fbda","line":14,"updated":"2016-09-14 22:21:38.000000000","message":"Not quite true. I think we ignore Content-type. When I use curl and it defaults to \"Content-type: application/x-www-form-urlencoded\" and it works fine!","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":11,"context_line":"# variables in header"},{"line_number":12,"context_line":"Content-type-json:"},{"line_number":13,"context_line":"  description: |"},{"line_number":14,"context_line":"    Mime type of the request body.  Must be ``application/json``."},{"line_number":15,"context_line":"  in: header"},{"line_number":16,"context_line":"  required: true"},{"line_number":17,"context_line":"  type: string"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_e3b25d4b","line":14,"in_reply_to":"7a8ec9b2_b808fbda","updated":"2016-09-16 21:36:19.000000000","message":"Do you think ignoring the Content-type is a bug? Leaving this as-is for now.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    The resource type whose facets you\u0027d like to see listed."},{"line_number":25,"context_line":"  in: query"},{"line_number":26,"context_line":"  required: false"},{"line_number":27,"context_line":"  type: string"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"# variables in body"},{"line_number":30,"context_line":"all-projects:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_2d966b4c","line":27,"updated":"2016-09-14 22:21:38.000000000","message":"There are two more parameters for the facet endpoint.\n\ninclude-in-query:\n  description: |\n    Disable showing the facet fields. Display count only.\n    The default value is \"true\".\n  in: query\n  required: false\n  type: boolean\n\noptions-in-query:\n  description: |\n    Disable aggregating facet fields. Provides a performance\n    improvement. The default value is \"true\".\n  in: query\n  required: false\n  type: boolean","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":24,"context_line":"    The resource type whose facets you\u0027d like to see listed."},{"line_number":25,"context_line":"  in: query"},{"line_number":26,"context_line":"  required: false"},{"line_number":27,"context_line":"  type: string"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"# variables in body"},{"line_number":30,"context_line":"all-projects:"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_c3f561ed","line":27,"in_reply_to":"7a8ec9b2_2d966b4c","updated":"2016-09-16 21:36:19.000000000","message":"Thanks.  I may need to add you as co-author!","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    - ``total`` - The total number of documents matching the search criteria"},{"line_number":43,"context_line":"    - ``max_score`` - The highest ``_score`` of any document that matches the"},{"line_number":44,"context_line":"      query"},{"line_number":45,"context_line":"    - ``hits`` - An array of search results (defaults to the first 10"},{"line_number":46,"context_line":"       documents).  Each element of the array contains the following fields:"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"      - ``_id`` - Uniquely identifies the resource within its OpenStack context"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_d8d147cf","line":45,"range":{"start_line":45,"start_character":17,"end_line":45,"end_character":69},"updated":"2016-09-14 22:21:38.000000000","message":"In my browser, this part is bolded, but the rest of the sentence is not.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":42,"context_line":"    - ``total`` - The total number of documents matching the search criteria"},{"line_number":43,"context_line":"    - ``max_score`` - The highest ``_score`` of any document that matches the"},{"line_number":44,"context_line":"      query"},{"line_number":45,"context_line":"    - ``hits`` - An array of search results (defaults to the first 10"},{"line_number":46,"context_line":"       documents).  Each element of the array contains the following fields:"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"      - ``_id`` - Uniquely identifies the resource within its OpenStack context"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_e3c7bd93","line":45,"range":{"start_line":45,"start_character":17,"end_line":45,"end_character":69},"in_reply_to":"7a8ec9b2_d8d147cf","updated":"2016-09-16 21:36:19.000000000","message":"Not sure why that is happening, I\u0027ll mark this with a todo so I don\u0027t forget to investigate.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":43,"context_line":"    - ``max_score`` - The highest ``_score`` of any document that matches the"},{"line_number":44,"context_line":"      query"},{"line_number":45,"context_line":"    - ``hits`` - An array of search results (defaults to the first 10"},{"line_number":46,"context_line":"       documents).  Each element of the array contains the following fields:"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"      - ``_id`` - Uniquely identifies the resource within its OpenStack context"},{"line_number":49,"context_line":"        (for instance, Glance images use their Image ID)"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_984a5f82","line":46,"updated":"2016-09-14 22:21:38.000000000","message":"Also, for line 45, the defaults to 10 is true for Elasticsearch, but not for Searchlight. We return more than 10 results by default through the search API. I see 25 for this default search.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":43,"context_line":"    - ``max_score`` - The highest ``_score`` of any document that matches the"},{"line_number":44,"context_line":"      query"},{"line_number":45,"context_line":"    - ``hits`` - An array of search results (defaults to the first 10"},{"line_number":46,"context_line":"       documents).  Each element of the array contains the following fields:"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"      - ``_id`` - Uniquely identifies the resource within its OpenStack context"},{"line_number":49,"context_line":"        (for instance, Glance images use their Image ID)"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_a35775c8","line":46,"in_reply_to":"7a8ec9b2_984a5f82","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        (for instance, Glance images use their Image ID)"},{"line_number":50,"context_line":"      - ``_index`` - The service to which the resource belongs (for example,"},{"line_number":51,"context_line":"        searchlight)"},{"line_number":52,"context_line":"      - ``_type`` - The document type within the service (for example, \"image\","},{"line_number":53,"context_line":"        \"metadef\")"},{"line_number":54,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"},{"line_number":55,"context_line":"        field upon which results are sorted"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_d88307cb","line":52,"updated":"2016-09-14 22:21:38.000000000","message":"The OpenStack resource type for the document (for example, OS::Neutron::Net, OS::Glance::Image).","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":49,"context_line":"        (for instance, Glance images use their Image ID)"},{"line_number":50,"context_line":"      - ``_index`` - The service to which the resource belongs (for example,"},{"line_number":51,"context_line":"        searchlight)"},{"line_number":52,"context_line":"      - ``_type`` - The document type within the service (for example, \"image\","},{"line_number":53,"context_line":"        \"metadef\")"},{"line_number":54,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"},{"line_number":55,"context_line":"        field upon which results are sorted"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_03e66914","line":52,"in_reply_to":"7a8ec9b2_d88307cb","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":52,"context_line":"      - ``_type`` - The document type within the service (for example, \"image\","},{"line_number":53,"context_line":"        \"metadef\")"},{"line_number":54,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"},{"line_number":55,"context_line":"        field upon which results are sorted"},{"line_number":56,"context_line":"      - ``_source`` - The document originally indexed.  This field is a map,"},{"line_number":57,"context_line":"        where each key is a field whose value may be a scalar value, a list,"},{"line_number":58,"context_line":"        a nested object, or a list of nested objects."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_b329fc8b","line":55,"updated":"2016-09-14 22:21:38.000000000","message":"We can also return the following fields:\n\n\"_parent\": When the resource type has a child realtionship of another resource type (for example, OS::Neutron::Subnet)\n\n\"_routing\": When we explicitly specfiy an Elasticsearch routing for the document.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":52,"context_line":"      - ``_type`` - The document type within the service (for example, \"image\","},{"line_number":53,"context_line":"        \"metadef\")"},{"line_number":54,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"},{"line_number":55,"context_line":"        field upon which results are sorted"},{"line_number":56,"context_line":"      - ``_source`` - The document originally indexed.  This field is a map,"},{"line_number":57,"context_line":"        where each key is a field whose value may be a scalar value, a list,"},{"line_number":58,"context_line":"        a nested object, or a list of nested objects."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_43edd1b5","line":55,"in_reply_to":"7a8ec9b2_b329fc8b","updated":"2016-09-16 21:36:19.000000000","message":"Got the first one; for the second, is the routing specified for as part of the query, or is it something about the configuration?","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        \"metadef\")"},{"line_number":54,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"},{"line_number":55,"context_line":"        field upon which results are sorted"},{"line_number":56,"context_line":"      - ``_source`` - The document originally indexed.  This field is a map,"},{"line_number":57,"context_line":"        where each key is a field whose value may be a scalar value, a list,"},{"line_number":58,"context_line":"        a nested object, or a list of nested objects."},{"line_number":59,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_b8639b40","line":56,"updated":"2016-09-14 22:21:38.000000000","message":"Expand a bit:\n\n\"The document originally indexed, containing all data associated with the OpenStack resource.\"","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":53,"context_line":"        \"metadef\")"},{"line_number":54,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"},{"line_number":55,"context_line":"        field upon which results are sorted"},{"line_number":56,"context_line":"      - ``_source`` - The document originally indexed.  This field is a map,"},{"line_number":57,"context_line":"        where each key is a field whose value may be a scalar value, a list,"},{"line_number":58,"context_line":"        a nested object, or a list of nested objects."},{"line_number":59,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_632e4dfc","line":56,"in_reply_to":"7a8ec9b2_b8639b40","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":62,"context_line":"es-query:"},{"line_number":63,"context_line":"  description: |"},{"line_number":64,"context_line":"    A JSON object containing the requested query, expressed in the"},{"line_number":65,"context_line":"    `Elasticsearch Query DSL \u003chttp://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl.html\u003e`_."},{"line_number":66,"context_line":"  in: body"},{"line_number":67,"context_line":"  required: true"},{"line_number":68,"context_line":"  type: object"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_f829a338","line":65,"range":{"start_line":65,"start_character":5,"end_line":65,"end_character":114},"updated":"2016-09-14 22:21:38.000000000","message":"We just lost 95% of the readers of this API spec :)","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":86,"context_line":"  description: |"},{"line_number":87,"context_line":"    The time in milliseconds it took for Elasticsearch to execute the search."},{"line_number":88,"context_line":"  in: body"},{"line_number":89,"context_line":"  required: true "},{"line_number":90,"context_line":"  type: number"},{"line_number":91,"context_line":"facet-list:"},{"line_number":92,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_6d04f3bf","line":89,"updated":"2016-09-14 22:21:38.000000000","message":"Remove the extra space at the end of the line.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":86,"context_line":"  description: |"},{"line_number":87,"context_line":"    The time in milliseconds it took for Elasticsearch to execute the search."},{"line_number":88,"context_line":"  in: body"},{"line_number":89,"context_line":"  required: true "},{"line_number":90,"context_line":"  type: number"},{"line_number":91,"context_line":"facet-list:"},{"line_number":92,"context_line":"  description: |"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_c337214b","line":89,"in_reply_to":"7a8ec9b2_6d04f3bf","updated":"2016-09-16 21:36:19.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":105,"context_line":"  description: |"},{"line_number":106,"context_line":"    List of plugins.  Each element of the list contains the following fields:"},{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    - ``name`` - the name of the plugin"},{"line_number":109,"context_line":"    - ``type`` - the document type associated with this plugin"},{"line_number":110,"context_line":"    - ``index`` - the index in which this plugin\u0027s documents are stored"},{"line_number":111,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_2af9f180","line":108,"updated":"2016-09-14 22:21:38.000000000","message":"This option has been deleted. Duplicate of \"type\".","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    - ``name`` - the name of the plugin"},{"line_number":109,"context_line":"    - ``type`` - the document type associated with this plugin"},{"line_number":110,"context_line":"    - ``index`` - the index in which this plugin\u0027s documents are stored"},{"line_number":111,"context_line":"  in: body"},{"line_number":112,"context_line":"  required: true"},{"line_number":113,"context_line":"  type: array"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_0a87d5d7","line":110,"updated":"2016-09-14 22:21:38.000000000","message":"This option has been deleted and replaced with two new options:\n\n\"alias-indexing\" - Elasticsearch index used for creating documents.\n\"alias-searching\" - Elasticsearch index used for querying documents.\n\nEven though the correct Elasticsearch term is \"indexing\" instead of \"creating\", it sounds funny saying \"index used for indexing\". But maybe funny is all right in this case.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":107,"context_line":""},{"line_number":108,"context_line":"    - ``name`` - the name of the plugin"},{"line_number":109,"context_line":"    - ``type`` - the document type associated with this plugin"},{"line_number":110,"context_line":"    - ``index`` - the index in which this plugin\u0027s documents are stored"},{"line_number":111,"context_line":"  in: body"},{"line_number":112,"context_line":"  required: true"},{"line_number":113,"context_line":"  type: array"}],"source_content_type":"text/x-yaml","patch_set":2,"id":"7a8ec9b2_434951b6","line":110,"in_reply_to":"7a8ec9b2_0a87d5d7","updated":"2016-09-16 21:36:19.000000000","message":"I\u0027ll leave \"creating\", we\u0027ll see what others think.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":29,"context_line":"options-in-query:"},{"line_number":30,"context_line":"  description: |"},{"line_number":31,"context_line":"    Disable aggregating facet fields. Provides a performance"},{"line_number":32,"context_line":"    improvement. The default value is \"true\"."},{"line_number":33,"context_line":"  in: query"},{"line_number":34,"context_line":"  required: false"},{"line_number":35,"context_line":"  type: boolean"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5a8bc5a2_bdaac0d2","line":32,"range":{"start_line":32,"start_character":38,"end_line":32,"end_character":44},"updated":"2016-09-23 02:25:06.000000000","message":"The default value is \"false\". We aggregate by default.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":29,"context_line":"options-in-query:"},{"line_number":30,"context_line":"  description: |"},{"line_number":31,"context_line":"    Disable aggregating facet fields. Provides a performance"},{"line_number":32,"context_line":"    improvement. The default value is \"true\"."},{"line_number":33,"context_line":"  in: query"},{"line_number":34,"context_line":"  required: false"},{"line_number":35,"context_line":"  type: boolean"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5a8bc5a2_1a909194","line":32,"range":{"start_line":32,"start_character":38,"end_line":32,"end_character":44},"in_reply_to":"5a8bc5a2_bdaac0d2","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":136,"context_line":"  description: |"},{"line_number":137,"context_line":"    List of plugins.  Each element of the list contains the following fields:"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    - ``alias-indexing`` - the Elasticsearch index used for creating documents"},{"line_number":140,"context_line":"      for this plugin"},{"line_number":141,"context_line":"    - ``alias-searching`` - the Elasticsearch index used for querying documents"},{"line_number":142,"context_line":"      created by this plugin"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5a8bc5a2_622b35ec","line":139,"range":{"start_line":139,"start_character":45,"end_line":139,"end_character":50},"updated":"2016-09-23 02:25:06.000000000","message":"index or alias? See comment in searchlight-v1.inc for discussion.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":136,"context_line":"  description: |"},{"line_number":137,"context_line":"    List of plugins.  Each element of the list contains the following fields:"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    - ``alias-indexing`` - the Elasticsearch index used for creating documents"},{"line_number":140,"context_line":"      for this plugin"},{"line_number":141,"context_line":"    - ``alias-searching`` - the Elasticsearch index used for querying documents"},{"line_number":142,"context_line":"      created by this plugin"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5a8bc5a2_f14eab39","line":139,"range":{"start_line":139,"start_character":45,"end_line":139,"end_character":50},"in_reply_to":"5a8bc5a2_622b35ec","updated":"2016-09-26 21:15:18.000000000","message":"Tried to address this both here and in the searchlight-v1 doc","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    - ``alias-indexing`` - the Elasticsearch index used for creating documents"},{"line_number":140,"context_line":"      for this plugin"},{"line_number":141,"context_line":"    - ``alias-searching`` - the Elasticsearch index used for querying documents"},{"line_number":142,"context_line":"      created by this plugin"},{"line_number":143,"context_line":"    - ``type`` - the document type associated with this plugin"},{"line_number":144,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5a8bc5a2_a2353d47","line":141,"range":{"start_line":141,"start_character":46,"end_line":141,"end_character":51},"updated":"2016-09-23 02:25:06.000000000","message":"Same as above.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    - ``alias-indexing`` - the Elasticsearch index used for creating documents"},{"line_number":140,"context_line":"      for this plugin"},{"line_number":141,"context_line":"    - ``alias-searching`` - the Elasticsearch index used for querying documents"},{"line_number":142,"context_line":"      created by this plugin"},{"line_number":143,"context_line":"    - ``type`` - the document type associated with this plugin"},{"line_number":144,"context_line":"  in: body"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"5a8bc5a2_114a3726","line":141,"range":{"start_line":141,"start_character":46,"end_line":141,"end_character":51},"in_reply_to":"5a8bc5a2_a2353d47","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":48,"context_line":"  in: body"},{"line_number":49,"context_line":"  required: false"},{"line_number":50,"context_line":"  type: boolean"},{"line_number":51,"context_line":"# TODO(rosmaita): figure out why the \"hits\u0027 line is rendering as bold in HTML"},{"line_number":52,"context_line":"es-hits-obj:"},{"line_number":53,"context_line":"  description: |"},{"line_number":54,"context_line":"    A JSON object containing the search results.  It contains the following"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"3a98d1f4_cb2fec9f","line":51,"updated":"2016-09-28 20:49:22.000000000","message":"The indent was off by one space (too many). Deleted a single space and the parser is no longer highlighting the line.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":58,"context_line":"       documents).  Each element of the array contains the following fields:"},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"      - ``_id`` - Uniquely identifies the resource within its OpenStack context"},{"line_number":61,"context_line":"        (for instance, Glance images use their Image ID)"},{"line_number":62,"context_line":"      - ``_index`` - The service to which the resource belongs (for example,"},{"line_number":63,"context_line":"        searchlight)"},{"line_number":64,"context_line":"      - ``_score`` - The relevance of a given hit.  By default, this is the"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5a8bc5a2_7ca7c70a","line":61,"updated":"2016-09-27 04:10:14.000000000","message":"This is another messy situation. We should probably mention the \"_USER\" vs \"_ADMIN\" suffix for the document\u0027s ID. In order to provide a level of security (protecting hidden admin fields from prying eyes), we will actually create two separate documents for the same resource.\n\nThis scenario occurs if a resource type has admin-only fields. One document contains all of the fields and is available to queries by admins. This document has \"_ADMIN\" appended to the ID. The other document has an abridged set of fields (the fields related to admin have been removed) and is available to queries by non-admins. This document has \"_USER\" appended to the ID.\n\nThis way we will protect these admin fields from sneaky user tricks (like trying to search the \"_all\" field). If these values do not exist at all in the documents the non-admin is allowed to search, there is no worry about the values being discovered.\n\nIf a resource type does not have any admin-only fields, there will be only a single document for those resources.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        \"OS::Neutron::Net\", \"OS::Glance::Image\")"},{"line_number":72,"context_line":"      - ``_parent`` - *(optional)* When the resource type has a child"},{"line_number":73,"context_line":"        relationship to another resource type, the parent resource type will"},{"line_number":74,"context_line":"        appear here.  For example, a document with a ``_type`` of"},{"line_number":75,"context_line":"        \"OS::Neutron::Subnet\" will contain a ``_parent`` field with value"},{"line_number":76,"context_line":"        \"OS::Neutron::Network\"."},{"line_number":77,"context_line":"      - ``_routing`` - *(optional)* Included when an Elasticsearch routing"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"5a8bc5a2_f929299c","line":74,"updated":"2016-09-27 04:10:14.000000000","message":"Actually the ID of the parent resource will be here. It helps with deriving a relationship map (for those who are into such things). For example, if there is a specific OS::Neutron::Subnet whose parent is the specific OS::Neutron::Net resource with an id of \"507c3c04-8c93-4847-8f3d-b094e72175be\", the value of \"_parent\" for this particular OS::Neutron::Subnet resource will be \"507c3c04-8c93-4847-8f3d-b094e72175be\".","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":71,"context_line":"        \"OS::Neutron::Net\", \"OS::Glance::Image\")"},{"line_number":72,"context_line":"      - ``_parent`` - *(optional)* When the resource type has a child"},{"line_number":73,"context_line":"        relationship to another resource type, the parent resource type will"},{"line_number":74,"context_line":"        appear here.  For example, a document with a ``_type`` of"},{"line_number":75,"context_line":"        \"OS::Neutron::Subnet\" will contain a ``_parent`` field with value"},{"line_number":76,"context_line":"        \"OS::Neutron::Network\"."},{"line_number":77,"context_line":"      - ``_routing`` - *(optional)* Included when an Elasticsearch routing"}],"source_content_type":"text/x-yaml","patch_set":5,"id":"3a98d1f4_bd7e69ac","line":74,"in_reply_to":"5a8bc5a2_f929299c","updated":"2016-09-28 20:49:22.000000000","message":"Done.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"}],"api-ref/source/searchlight-v1.inc":[{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":15,"context_line":".. Like other OpenStack APIs, the Search API depends on Keystone and the"},{"line_number":16,"context_line":".. OpenStack Identity API to handle authentication.  Hence, you must obtain an"},{"line_number":17,"context_line":".. authentication token from Keystone and pass it to Searchlight in API"},{"line_number":18,"context_line":".. requests with the ``X-Auth-Token`` header."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Elasticsearch stores each *document* in an *index*, which has one or more"},{"line_number":21,"context_line":"*types*.  The Searchlight service stores each OpenStack *resource type* in its"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_aa26e1b7","line":18,"updated":"2016-09-14 22:21:38.000000000","message":"This paragraph isn\u0027t showing up.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"8da9d497ab6ed35089ce04877f71fc7443f645b6","unresolved":false,"context_lines":[{"line_number":15,"context_line":".. Like other OpenStack APIs, the Search API depends on Keystone and the"},{"line_number":16,"context_line":".. OpenStack Identity API to handle authentication.  Hence, you must obtain an"},{"line_number":17,"context_line":".. authentication token from Keystone and pass it to Searchlight in API"},{"line_number":18,"context_line":".. requests with the ``X-Auth-Token`` header."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Elasticsearch stores each *document* in an *index*, which has one or more"},{"line_number":21,"context_line":"*types*.  The Searchlight service stores each OpenStack *resource type* in its"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_63f1ed6a","line":18,"in_reply_to":"7a8ec9b2_aa26e1b7","updated":"2016-09-16 21:36:19.000000000","message":"I left it commented out, but will add a TODO explaining why.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":25,"context_line":"the content available to a user is the same as that available through the"},{"line_number":26,"context_line":"particular OpenStack service API that provides that particular resource type."},{"line_number":27,"context_line":"The advantage provided by Searchlight over the native APIs is the enhanced"},{"line_number":28,"context_line":"searching facilities provided by Elasticsearch."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"List plugins"},{"line_number":31,"context_line":"~~~~~~~~~~~~"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_8ab5a532","line":28,"updated":"2016-09-14 22:21:38.000000000","message":"This paragraph seems a little confusing, especially for folks not familiar with ES. Maybe something like this:\n\nThe heart of Searchlight is the Elasticsearch search engine. Searchlight will\ntake resources from an OpenStack resource type and index it into Elasticsearch.\nOnce indexed, these objects can be accessed through Searchlight\u0027s Query API.\n\nExamples of an OpenStack resource type would include OS::Glance::Image and\nOS::Neutron::Net. An example of an OS::Neutron::Net resource would be a\nspecific network created by the Neutron Networking service.\n\nElasticsearch stores documents logically in a three-level, heirarchical manner:\n\n    /\u003cindex\u003e/\u003cdocument type\u003e/\u003cdocument ID\u003e\n\nThe top level is the index. All OpenStack resource types live under the same\nindex. An index can contain multiple, different OpenStack resource types. The\nmiddle level is the document type. For searchlight, the document type is the\nOpenStack resource type (OS::Glance::Image). The bottom level is the document\nid. For Searchlight, this is the OpenStack id associated with the resource.\n\nAs an example, consider a Neutron network resource that has an OpenStack ID of\n\"056b8fc9-25c2-4b91-265661021072\". Elasticsearch will create a document at:\n/searchlight/OS::Neutron::Net/056b8fc9-25c2-4b91-265661021072 that contains\nthe data associated with this network resource.\n\nThe \"/plugins\" endpoint shows the mapping between OpenStack resource types\nand Elasticsearch indices.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":25,"context_line":"the content available to a user is the same as that available through the"},{"line_number":26,"context_line":"particular OpenStack service API that provides that particular resource type."},{"line_number":27,"context_line":"The advantage provided by Searchlight over the native APIs is the enhanced"},{"line_number":28,"context_line":"searching facilities provided by Elasticsearch."},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"List plugins"},{"line_number":31,"context_line":"~~~~~~~~~~~~"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_8abde804","line":28,"in_reply_to":"7a8ec9b2_8ab5a532","updated":"2016-09-19 16:50:53.000000000","message":"Good points.  I rewrote the entire introductory section in a way that hopefully addresses all your concerns.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":30,"context_line":"List plugins"},{"line_number":31,"context_line":"~~~~~~~~~~~~"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":".. rest_method::  GET /v1/search/plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"In order to index OpenStack resources, Searchlight requires a *plugin* specific"},{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_8d5e9f10","line":33,"updated":"2016-09-14 22:21:38.000000000","message":"The one line summary like the other API points is nice:\n\n    List the supported plugins.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":30,"context_line":"List plugins"},{"line_number":31,"context_line":"~~~~~~~~~~~~"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":".. rest_method::  GET /v1/search/plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"In order to index OpenStack resources, Searchlight requires a *plugin* specific"},{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_ea3aec97","line":33,"in_reply_to":"7a8ec9b2_8d5e9f10","updated":"2016-09-19 16:50:53.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":33,"context_line":".. rest_method::  GET /v1/search/plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"In order to index OpenStack resources, Searchlight requires a *plugin* specific"},{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"},{"line_number":37,"context_line":"are those for which a plugin exists and is enabled by the cloud operator."},{"line_number":38,"context_line":"Thus, this call allows you to determine what document types you can expect to"},{"line_number":39,"context_line":"be able to search at a particular deployment."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_4a1c7d13","line":36,"range":{"start_line":36,"start_character":75,"end_line":36,"end_character":79},"updated":"2016-09-14 22:21:38.000000000","message":"Site doesn\u0027t feel like the right word here. Maybe \"from a service\".","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":33,"context_line":".. rest_method::  GET /v1/search/plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"In order to index OpenStack resources, Searchlight requires a *plugin* specific"},{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"},{"line_number":37,"context_line":"are those for which a plugin exists and is enabled by the cloud operator."},{"line_number":38,"context_line":"Thus, this call allows you to determine what document types you can expect to"},{"line_number":39,"context_line":"be able to search at a particular deployment."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_ea41c90c","line":36,"range":{"start_line":36,"start_character":24,"end_line":36,"end_character":30},"updated":"2016-09-14 22:21:38.000000000","message":"You write like I do :) A lot of hences and thuses and implies, which turns the prose into a deductive proof! We can remove the \"hence\" and \"thus\" for readability.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":33,"context_line":".. rest_method::  GET /v1/search/plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"In order to index OpenStack resources, Searchlight requires a *plugin* specific"},{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"},{"line_number":37,"context_line":"are those for which a plugin exists and is enabled by the cloud operator."},{"line_number":38,"context_line":"Thus, this call allows you to determine what document types you can expect to"},{"line_number":39,"context_line":"be able to search at a particular deployment."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_ea610caa","line":36,"range":{"start_line":36,"start_character":75,"end_line":36,"end_character":79},"in_reply_to":"7a8ec9b2_4a1c7d13","updated":"2016-09-19 16:50:53.000000000","message":"changed \u0027site\u0027 to \u0027cloud\u0027","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":33,"context_line":".. rest_method::  GET /v1/search/plugins"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"In order to index OpenStack resources, Searchlight requires a *plugin* specific"},{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"},{"line_number":37,"context_line":"are those for which a plugin exists and is enabled by the cloud operator."},{"line_number":38,"context_line":"Thus, this call allows you to determine what document types you can expect to"},{"line_number":39,"context_line":"be able to search at a particular deployment."}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_2a13f40e","line":36,"range":{"start_line":36,"start_character":24,"end_line":36,"end_character":30},"in_reply_to":"7a8ec9b2_ea41c90c","updated":"2016-09-19 16:50:53.000000000","message":"did a rewrite, but think there\u0027s still a \u0027hence\u0027 in there.  See what you think.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"},{"line_number":37,"context_line":"are those for which a plugin exists and is enabled by the cloud operator."},{"line_number":38,"context_line":"Thus, this call allows you to determine what document types you can expect to"},{"line_number":39,"context_line":"be able to search at a particular deployment."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":".. rest_status_code:: success http-codes.yaml"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_2a7d711c","line":39,"updated":"2016-09-14 22:21:38.000000000","message":"This call also returns the Elasticsearch index used for the resource type. This index is not used when querying through the Searchlight API. It is only of use when directly accessing Elasticsearch.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":36,"context_line":"to each resource type.  Hence, the only resources that can be indexed at a site"},{"line_number":37,"context_line":"are those for which a plugin exists and is enabled by the cloud operator."},{"line_number":38,"context_line":"Thus, this call allows you to determine what document types you can expect to"},{"line_number":39,"context_line":"be able to search at a particular deployment."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":".. rest_status_code:: success http-codes.yaml"},{"line_number":42,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_4a7be029","line":39,"in_reply_to":"7a8ec9b2_2a7d711c","updated":"2016-09-19 16:50:53.000000000","message":"I think I covered this point in the introductory section rewrite.  See if you think that\u0027s sufficient.\n\nQuestion: is it true that Search API users never need to know what index is being used?","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Request"},{"line_number":98,"context_line":"-------"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":".. rest_parameters:: search-parameters.yaml"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   - type: type-in-query"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_ede723e2","line":99,"updated":"2016-09-14 22:21:38.000000000","message":"Note that these are parameters.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Request"},{"line_number":98,"context_line":"-------"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":".. rest_parameters:: search-parameters.yaml"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   - type: type-in-query"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_0f3567f6","line":99,"in_reply_to":"7a8ec9b2_ede723e2","updated":"2016-09-19 16:50:53.000000000","message":"This is indicated in the generated table (or am I misunderstanding your comment?)","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":".. rest_parameters:: search-parameters.yaml"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   - type: type-in-query"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"This call does not take a request body."},{"line_number":105,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_8dc05f2c","line":102,"updated":"2016-09-14 22:21:38.000000000","message":"Need to add the two new options:\n\n-include_fields:  include-in-query\n-exclude_options: options-in-query","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":".. rest_parameters:: search-parameters.yaml"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   - type: type-in-query"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"This call does not take a request body."},{"line_number":105,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_cf2b7f93","line":102,"in_reply_to":"7a8ec9b2_8dc05f2c","updated":"2016-09-19 16:50:53.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":100,"context_line":".. rest_parameters:: search-parameters.yaml"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   - type: type-in-query"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"This call does not take a request body."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_ad051bc3","line":103,"updated":"2016-09-14 22:21:38.000000000","message":"Add a newline between the parameters and the \"no body\" statement.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":100,"context_line":".. rest_parameters:: search-parameters.yaml"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   - type: type-in-query"},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"This call does not take a request body."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_923b5e38","line":103,"in_reply_to":"7a8ec9b2_ad051bc3","updated":"2016-09-19 16:50:53.000000000","message":"This is determined by the os-api-ref module.  We could hack something here, but it would be better to propose a change there.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Assume this request: ``GET /v1/search/facets?type\u003dOS::Nova::Server``"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":".. literalinclude:: samples/list-facets-type-response.json"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Create a general search"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_4d21f7b3","line":124,"updated":"2016-09-14 22:21:38.000000000","message":"I think we should have an example for the \"include_fields\" option. Make it obvious it takes a true/false value.\n\nAssume this request: ``GET /v1/search/facets?include_fields\u003dfalse``\n\n{\n    \"OS::Nova::Server\": {\n        \"doc_count\": 7\n    },\n    \"OS::Neutron::Net\": {\n        \"doc_count\": 19\n    },\n    \"OS::Glance::Image\": {\n        \"doc_count\": 68\n    }\n}","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Assume this request: ``GET /v1/search/facets?type\u003dOS::Nova::Server``"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":".. literalinclude:: samples/list-facets-type-response.json"},{"line_number":125,"context_line":""},{"line_number":126,"context_line":""},{"line_number":127,"context_line":"Create a general search"}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_72da52eb","line":124,"in_reply_to":"7a8ec9b2_4d21f7b3","updated":"2016-09-19 16:50:53.000000000","message":"Good idea, done.","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":247,"context_line":"Response Example (multiple resource types)"},{"line_number":248,"context_line":"------------------------------------------"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"This example illustrates a request for a multiple resource types, namely,"},{"line_number":251,"context_line":"Glance images (``OS::Glance::Image``) and Glance metadefs"},{"line_number":252,"context_line":"(``OS::Glance::Metadef``)."},{"line_number":253,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_d37cc874","line":250,"range":{"start_line":250,"start_character":64,"end_line":250,"end_character":73},"updated":"2016-09-14 22:21:38.000000000","message":"\"namely\" is redundant, probably best to delete it. Unless we\u0027re trying to heighten the anticipation :)","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"21afed987dbc4dd19faf9c64441e2af58f4aa853","unresolved":false,"context_lines":[{"line_number":247,"context_line":"Response Example (multiple resource types)"},{"line_number":248,"context_line":"------------------------------------------"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"This example illustrates a request for a multiple resource types, namely,"},{"line_number":251,"context_line":"Glance images (``OS::Glance::Image``) and Glance metadefs"},{"line_number":252,"context_line":"(``OS::Glance::Metadef``)."},{"line_number":253,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_738cd47f","line":250,"range":{"start_line":250,"start_character":39,"end_line":250,"end_character":41},"updated":"2016-09-14 22:21:38.000000000","message":"Delete \"a\".","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":247,"context_line":"Response Example (multiple resource types)"},{"line_number":248,"context_line":"------------------------------------------"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"This example illustrates a request for a multiple resource types, namely,"},{"line_number":251,"context_line":"Glance images (``OS::Glance::Image``) and Glance metadefs"},{"line_number":252,"context_line":"(``OS::Glance::Metadef``)."},{"line_number":253,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_b205ba15","line":250,"range":{"start_line":250,"start_character":39,"end_line":250,"end_character":41},"in_reply_to":"7a8ec9b2_738cd47f","updated":"2016-09-19 16:50:53.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"9dabac6388f7f4330641dabb13884e0989e295e8","unresolved":false,"context_lines":[{"line_number":247,"context_line":"Response Example (multiple resource types)"},{"line_number":248,"context_line":"------------------------------------------"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"This example illustrates a request for a multiple resource types, namely,"},{"line_number":251,"context_line":"Glance images (``OS::Glance::Image``) and Glance metadefs"},{"line_number":252,"context_line":"(``OS::Glance::Metadef``)."},{"line_number":253,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":2,"id":"7a8ec9b2_f5fd6c09","line":250,"range":{"start_line":250,"start_character":64,"end_line":250,"end_character":73},"in_reply_to":"7a8ec9b2_d37cc874","updated":"2016-09-19 16:50:53.000000000","message":"Done","commit_id":"e882a9dbebeb0b9ead277a45e90a0522e389fd6e"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":8,"context_line":"General information"},{"line_number":9,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The OpenStack Searchlight project provides a Search API that presents a"},{"line_number":12,"context_line":"interface for querying about the various resources available in an OpenStack"},{"line_number":13,"context_line":"cloud.  Searchlight creates an index (using open source Elasticsearch"},{"line_number":14,"context_line":"technology) and keeps it updated.  Additionally, the Search API it provides"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_c7aa5bd4","line":11,"range":{"start_line":11,"start_character":70,"end_line":11,"end_character":71},"updated":"2016-09-23 02:25:06.000000000","message":"Nit: \"an\"","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":8,"context_line":"General information"},{"line_number":9,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The OpenStack Searchlight project provides a Search API that presents a"},{"line_number":12,"context_line":"interface for querying about the various resources available in an OpenStack"},{"line_number":13,"context_line":"cloud.  Searchlight creates an index (using open source Elasticsearch"},{"line_number":14,"context_line":"technology) and keeps it updated.  Additionally, the Search API it provides"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_9ac901af","line":11,"range":{"start_line":11,"start_character":70,"end_line":11,"end_character":71},"in_reply_to":"5a8bc5a2_c7aa5bd4","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":9,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The OpenStack Searchlight project provides a Search API that presents a"},{"line_number":12,"context_line":"interface for querying about the various resources available in an OpenStack"},{"line_number":13,"context_line":"cloud.  Searchlight creates an index (using open source Elasticsearch"},{"line_number":14,"context_line":"technology) and keeps it updated.  Additionally, the Search API it provides"},{"line_number":15,"context_line":"requires authentication and respects the Role Based Access Control defined by"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_47b72b39","line":12,"range":{"start_line":12,"start_character":23,"end_line":12,"end_character":28},"updated":"2016-09-23 02:25:06.000000000","message":"Nit: To my ears, it reads cleaner with \"about\" deleted.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":9,"context_line":"~~~~~~~~~~~~~~~~~~~"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The OpenStack Searchlight project provides a Search API that presents a"},{"line_number":12,"context_line":"interface for querying about the various resources available in an OpenStack"},{"line_number":13,"context_line":"cloud.  Searchlight creates an index (using open source Elasticsearch"},{"line_number":14,"context_line":"technology) and keeps it updated.  Additionally, the Search API it provides"},{"line_number":15,"context_line":"requires authentication and respects the Role Based Access Control defined by"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_ba5a3df0","line":12,"range":{"start_line":12,"start_character":23,"end_line":12,"end_character":28},"in_reply_to":"5a8bc5a2_47b72b39","updated":"2016-09-26 21:15:18.000000000","message":"I started to change this, but \"querying the resources\" doesn\u0027t sound quite right either (we\u0027re not actually querying the resources).  Maybe someone else has a suggestion for how to express this?","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":11,"context_line":"The OpenStack Searchlight project provides a Search API that presents a"},{"line_number":12,"context_line":"interface for querying about the various resources available in an OpenStack"},{"line_number":13,"context_line":"cloud.  Searchlight creates an index (using open source Elasticsearch"},{"line_number":14,"context_line":"technology) and keeps it updated.  Additionally, the Search API it provides"},{"line_number":15,"context_line":"requires authentication and respects the Role Based Access Control defined by"},{"line_number":16,"context_line":"each OpenStack service.  This gives end users access to the powerful searching"},{"line_number":17,"context_line":"facilities provided by Elasticsearch, but operators can rest assured that end"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_e7c4b793","line":14,"range":{"start_line":14,"start_character":53,"end_line":14,"end_character":75},"updated":"2016-09-23 02:25:06.000000000","message":"Replace \"Search API it provides\" with \"Searchlight\u0027s Search API\". It gets confusing as to what \"it\" refers to, since this is immediately following the blurb about Elasticsearch. It almost seems like we are talking about Elasticsearch\u0027s search API. At least that is how I initially interpreted it.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":11,"context_line":"The OpenStack Searchlight project provides a Search API that presents a"},{"line_number":12,"context_line":"interface for querying about the various resources available in an OpenStack"},{"line_number":13,"context_line":"cloud.  Searchlight creates an index (using open source Elasticsearch"},{"line_number":14,"context_line":"technology) and keeps it updated.  Additionally, the Search API it provides"},{"line_number":15,"context_line":"requires authentication and respects the Role Based Access Control defined by"},{"line_number":16,"context_line":"each OpenStack service.  This gives end users access to the powerful searching"},{"line_number":17,"context_line":"facilities provided by Elasticsearch, but operators can rest assured that end"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_3aa54d46","line":14,"range":{"start_line":14,"start_character":53,"end_line":14,"end_character":75},"in_reply_to":"5a8bc5a2_e7c4b793","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":15,"context_line":"requires authentication and respects the Role Based Access Control defined by"},{"line_number":16,"context_line":"each OpenStack service.  This gives end users access to the powerful searching"},{"line_number":17,"context_line":"facilities provided by Elasticsearch, but operators can rest assured that end"},{"line_number":18,"context_line":"users won\u0027t have access to information that they wouldn\u0027t be able to find in"},{"line_number":19,"context_line":"the APIs exposed by each of the OpenStack services."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"The Search API allows you to construct detailed queries using the"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_873cd394","line":18,"range":{"start_line":18,"start_character":39,"end_line":18,"end_character":43},"updated":"2016-09-23 02:25:06.000000000","message":"Nit: \"that\" can be deleted.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":15,"context_line":"requires authentication and respects the Role Based Access Control defined by"},{"line_number":16,"context_line":"each OpenStack service.  This gives end users access to the powerful searching"},{"line_number":17,"context_line":"facilities provided by Elasticsearch, but operators can rest assured that end"},{"line_number":18,"context_line":"users won\u0027t have access to information that they wouldn\u0027t be able to find in"},{"line_number":19,"context_line":"the APIs exposed by each of the OpenStack services."},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"The Search API allows you to construct detailed queries using the"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_fa75a5ca","line":18,"range":{"start_line":18,"start_character":39,"end_line":18,"end_character":43},"in_reply_to":"5a8bc5a2_873cd394","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":24,"context_line":"That\u0027s great if you are an Elasticsearch expert (or want to become one), but is"},{"line_number":25,"context_line":"probably beyond what most end users need in order to use the Search API"},{"line_number":26,"context_line":"effectively.  So we\u0027ll provide a wide range of useful query examples below (see"},{"line_number":27,"context_line":":ref:`general-search`)."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"To make effective use of the Search API, you need to know a few things about"},{"line_number":30,"context_line":"OpenStack resource types, how Searchlight stores data about OpenStack"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_27593f5b","line":27,"range":{"start_line":27,"start_character":5,"end_line":27,"end_character":21},"updated":"2016-09-23 02:25:06.000000000","message":"This link does work for me. It\u0027s strange, the anchor on line 241 seems to be declared correctly. Looking at the raw HTML, this line generates a reference to \"#general-search\". But line 241 creates an anchor named \"#create-a-general-search\". which is the name of the header!\n\nIf I change this from a :ref: to just `Create A General Search`_ then it works.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":24,"context_line":"That\u0027s great if you are an Elasticsearch expert (or want to become one), but is"},{"line_number":25,"context_line":"probably beyond what most end users need in order to use the Search API"},{"line_number":26,"context_line":"effectively.  So we\u0027ll provide a wide range of useful query examples below (see"},{"line_number":27,"context_line":":ref:`general-search`)."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"To make effective use of the Search API, you need to know a few things about"},{"line_number":30,"context_line":"OpenStack resource types, how Searchlight stores data about OpenStack"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_1a06d11f","line":27,"range":{"start_line":27,"start_character":5,"end_line":27,"end_character":21},"in_reply_to":"5a8bc5a2_27593f5b","updated":"2016-09-26 21:15:18.000000000","message":"I think the os-api-ref module does some monkeying with anchors that interferes with the :ref: stuff.  Thanks for catching this broken link!","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":84,"context_line":"advanced searching facilities provided by Elasticsearch."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"Searchlight index"},{"line_number":87,"context_line":"-----------------"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"In the previous section, you learned that each document stored in Elasticsearch"},{"line_number":90,"context_line":"is uniquely identified by (a) what *index* it\u0027s in, (b) what *document type* it"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_02c8b154","line":87,"updated":"2016-09-23 02:25:06.000000000","message":"I\u0027m not sure the best way to document this, but we mostly use ES aliases rather than ES indices. I\u0027m wondering if this will be confusing for the user after they read this section to see aliases returned by the \"/v1/search/plugins\" API instead of indices.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":84,"context_line":"advanced searching facilities provided by Elasticsearch."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"Searchlight index"},{"line_number":87,"context_line":"-----------------"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"In the previous section, you learned that each document stored in Elasticsearch"},{"line_number":90,"context_line":"is uniquely identified by (a) what *index* it\u0027s in, (b) what *document type* it"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_6e2f163f","line":87,"in_reply_to":"5a8bc5a2_02c8b154","updated":"2016-09-26 21:15:18.000000000","message":"see below","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":94,"context_line":"to the resource by the OpenStack service that manages that resource).  So"},{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Luckily, that\u0027s pretty easy.  Searchlight maintains its own index that\u0027s"},{"line_number":98,"context_line":"cleverly named \u0027searchlight\u0027.  Further, the Search API automatically uses this"},{"line_number":99,"context_line":"index, so you don\u0027t need to specify it.  We only mention it here because you\u0027ll"},{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_22ba0d24","line":97,"range":{"start_line":97,"start_character":0,"end_line":97,"end_character":8},"updated":"2016-09-23 02:25:06.000000000","message":"Luck has nothing to do with it! I guess sometimes it\u0027s hard to distinguish a thoughtful architecture and luck :)","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":94,"context_line":"to the resource by the OpenStack service that manages that resource).  So"},{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Luckily, that\u0027s pretty easy.  Searchlight maintains its own index that\u0027s"},{"line_number":98,"context_line":"cleverly named \u0027searchlight\u0027.  Further, the Search API automatically uses this"},{"line_number":99,"context_line":"index, so you don\u0027t need to specify it.  We only mention it here because you\u0027ll"},{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_ae0e7ee2","line":97,"range":{"start_line":97,"start_character":0,"end_line":97,"end_character":8},"in_reply_to":"5a8bc5a2_22ba0d24","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Luckily, that\u0027s pretty easy.  Searchlight maintains its own index that\u0027s"},{"line_number":98,"context_line":"cleverly named \u0027searchlight\u0027.  Further, the Search API automatically uses this"},{"line_number":99,"context_line":"index, so you don\u0027t need to specify it.  We only mention it here because you\u0027ll"},{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"},{"line_number":101,"context_line":"so it\u0027s worth knowing what it is."}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_c29ec955","line":98,"range":{"start_line":98,"start_character":0,"end_line":98,"end_character":8},"updated":"2016-09-23 02:25:06.000000000","message":"Clever or not, this is the default name of the index. The default is to have a single index named \"searchlight\". But the user can change this in the Searchlight config file. The user can not only change the name of the index, but the user can also assign different indices to different resource types. For example, \"OS::Cinder::Volume\" can have one ES index, \"OS::Neutron::Net\" can have a different ES index and \"OS::Neutron::SecurityGroup\" can have a third separate ES index.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Luckily, that\u0027s pretty easy.  Searchlight maintains its own index that\u0027s"},{"line_number":98,"context_line":"cleverly named \u0027searchlight\u0027.  Further, the Search API automatically uses this"},{"line_number":99,"context_line":"index, so you don\u0027t need to specify it.  We only mention it here because you\u0027ll"},{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"},{"line_number":101,"context_line":"so it\u0027s worth knowing what it is."}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_2e1a6e17","line":98,"range":{"start_line":98,"start_character":0,"end_line":98,"end_character":8},"in_reply_to":"5a8bc5a2_c29ec955","updated":"2016-09-26 21:15:18.000000000","message":"Good point.  I\u0027ll try to combine your point about non-default indices and the alias stuff you mentioned earlier in a \"complications\" paragraph.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":97,"context_line":"Luckily, that\u0027s pretty easy.  Searchlight maintains its own index that\u0027s"},{"line_number":98,"context_line":"cleverly named \u0027searchlight\u0027.  Further, the Search API automatically uses this"},{"line_number":99,"context_line":"index, so you don\u0027t need to specify it.  We only mention it here because you\u0027ll"},{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"},{"line_number":101,"context_line":"so it\u0027s worth knowing what it is."},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"One final point. Searchlight accomplishes its magic by using *plugins* that"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_428e3979","line":100,"range":{"start_line":100,"start_character":4,"end_line":100,"end_character":6},"updated":"2016-09-23 02:25:06.000000000","message":"Should be \"it\".","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":97,"context_line":"Luckily, that\u0027s pretty easy.  Searchlight maintains its own index that\u0027s"},{"line_number":98,"context_line":"cleverly named \u0027searchlight\u0027.  Further, the Search API automatically uses this"},{"line_number":99,"context_line":"index, so you don\u0027t need to specify it.  We only mention it here because you\u0027ll"},{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"},{"line_number":101,"context_line":"so it\u0027s worth knowing what it is."},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"One final point. Searchlight accomplishes its magic by using *plugins* that"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_917ac786","line":100,"range":{"start_line":100,"start_character":4,"end_line":100,"end_character":6},"in_reply_to":"5a8bc5a2_428e3979","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"},{"line_number":101,"context_line":"so it\u0027s worth knowing what it is."},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"One final point. Searchlight accomplishes its magic by using *plugins* that"},{"line_number":104,"context_line":"understand and index particular OpenStack resource types.  So in order for a"},{"line_number":105,"context_line":"resource type to be accessible via the Search API, there must be a Searchlight"},{"line_number":106,"context_line":"plugin installed to index that kind of resource.  Not all OpenStack resources"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_22e84d10","line":103,"range":{"start_line":103,"start_character":46,"end_line":103,"end_character":51},"updated":"2016-09-23 02:25:06.000000000","message":"It\u0027s only magic to the naive and Horizon developers. :)","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":100,"context_line":"see in in some Elasticsearch responses that you\u0027ll receive from the Search API,"},{"line_number":101,"context_line":"so it\u0027s worth knowing what it is."},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"One final point. Searchlight accomplishes its magic by using *plugins* that"},{"line_number":104,"context_line":"understand and index particular OpenStack resource types.  So in order for a"},{"line_number":105,"context_line":"resource type to be accessible via the Search API, there must be a Searchlight"},{"line_number":106,"context_line":"plugin installed to index that kind of resource.  Not all OpenStack resources"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_515d9f13","line":103,"range":{"start_line":103,"start_character":46,"end_line":103,"end_character":51},"in_reply_to":"5a8bc5a2_22e84d10","updated":"2016-09-26 21:15:18.000000000","message":"I could rewrite this as \"Searchlight gains its mojo from plugins ...\" :)","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f7703109497f3f3d9f1e515464a2fe0fc3a190a4","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"   Authentication"},{"line_number":115,"context_line":"   --------------"},{"line_number":116,"context_line":"   "},{"line_number":117,"context_line":"   Like other OpenStack APIs, the Search API depends on Keystone and the"},{"line_number":118,"context_line":"   OpenStack Identity API to handle authentication.  Hence, you must obtain an"},{"line_number":119,"context_line":"   authentication token from Keystone and pass it to Searchlight in API"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_82a681bf","line":116,"range":{"start_line":116,"start_character":0,"end_line":116,"end_character":3},"updated":"2016-09-23 02:25:06.000000000","message":"Extra spaces in this line. Should be an ordinary blank line.","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"b809247ac144f2f3dbbe7598aa27211f0ac3e82d","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"   Authentication"},{"line_number":115,"context_line":"   --------------"},{"line_number":116,"context_line":"   "},{"line_number":117,"context_line":"   Like other OpenStack APIs, the Search API depends on Keystone and the"},{"line_number":118,"context_line":"   OpenStack Identity API to handle authentication.  Hence, you must obtain an"},{"line_number":119,"context_line":"   authentication token from Keystone and pass it to Searchlight in API"}],"source_content_type":"text/x-c++src","patch_set":4,"id":"5a8bc5a2_71853b58","line":116,"range":{"start_line":116,"start_character":0,"end_line":116,"end_character":3},"in_reply_to":"5a8bc5a2_82a681bf","updated":"2016-09-26 21:15:18.000000000","message":"Done","commit_id":"158f3a171d6e4cb3c23e2f9609389ebeb761ad53"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":94,"context_line":"to the resource by the OpenStack service that manages that resource).  So"},{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Due to careful engineering by top professionals, that\u0027s pretty easy."},{"line_number":98,"context_line":"Searchlight maintains its own index named \u0027searchlight\u0027.  Further, the Search"},{"line_number":99,"context_line":"API automatically uses this index, so you don\u0027t need to specify it.  We only"},{"line_number":100,"context_line":"mention it here because you\u0027ll see its name in some Elasticsearch responses"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_67b650fa","line":97,"range":{"start_line":97,"start_character":0,"end_line":97,"end_character":47},"updated":"2016-09-27 04:10:14.000000000","message":":)","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"9a13faec1fcade5dbbc9a49f4a05259e29520492","unresolved":false,"context_lines":[{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Due to careful engineering by top professionals, that\u0027s pretty easy."},{"line_number":98,"context_line":"Searchlight maintains its own index named \u0027searchlight\u0027.  Further, the Search"},{"line_number":99,"context_line":"API automatically uses this index, so you don\u0027t need to specify it.  We only"},{"line_number":100,"context_line":"mention it here because you\u0027ll see its name in some Elasticsearch responses"},{"line_number":101,"context_line":"that you\u0027ll receive from the Search API, so it\u0027s worth knowing what it is."}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_035abbf1","line":98,"range":{"start_line":98,"start_character":36,"end_line":98,"end_character":41},"updated":"2016-09-27 15:45:31.000000000","message":"The index is timestamped (the alias is not), and there can be more than one. Maybe instead \u0027Searchlight maintains one or more indices grouped under a single alias for searching. The search API automatically uses this alias so ...\" ?","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":95,"context_line":"what\u0027s left is to figure out what index to use."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"Due to careful engineering by top professionals, that\u0027s pretty easy."},{"line_number":98,"context_line":"Searchlight maintains its own index named \u0027searchlight\u0027.  Further, the Search"},{"line_number":99,"context_line":"API automatically uses this index, so you don\u0027t need to specify it.  We only"},{"line_number":100,"context_line":"mention it here because you\u0027ll see its name in some Elasticsearch responses"},{"line_number":101,"context_line":"that you\u0027ll receive from the Search API, so it\u0027s worth knowing what it is."}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_68c42192","line":98,"range":{"start_line":98,"start_character":36,"end_line":98,"end_character":41},"in_reply_to":"5a8bc5a2_035abbf1","updated":"2016-09-28 20:49:22.000000000","message":"I added more details under the note below.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":383,"context_line":"This example illustrates the response to a request for a single resource type,"},{"line_number":384,"context_line":"Glance images (``OS::Glance::Image``)."},{"line_number":385,"context_line":""},{"line_number":386,"context_line":".. literalinclude:: samples/create-search-all-response.json"},{"line_number":387,"context_line":"   :language: json"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Response Example (multiple resource types)"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_7c118703","line":386,"updated":"2016-09-27 04:10:14.000000000","message":"Oops. Wrong one. This should be:\n\nsamples/create-search-single-type-response.json","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":383,"context_line":"This example illustrates the response to a request for a single resource type,"},{"line_number":384,"context_line":"Glance images (``OS::Glance::Image``)."},{"line_number":385,"context_line":""},{"line_number":386,"context_line":".. literalinclude:: samples/create-search-all-response.json"},{"line_number":387,"context_line":"   :language: json"},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Response Example (multiple resource types)"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_2899396f","line":386,"in_reply_to":"5a8bc5a2_7c118703","updated":"2016-09-28 20:49:22.000000000","message":"Done.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":457,"context_line":""},{"line_number":458,"context_line":".. rest_method::  POST /v1/search"},{"line_number":459,"context_line":""},{"line_number":460,"context_line":"Submit a free text search request."},{"line_number":461,"context_line":""},{"line_number":462,"context_line":".. rest_status_code:: success http-codes.yaml"},{"line_number":463,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_fc99177a","line":460,"updated":"2016-09-27 04:10:14.000000000","message":"This example is a little too free. On my system when I ran it, the \"multi_match\" query seemed to be ignored. It just returned all of the \"OS::Glance::Image\" documents. When I changed the query to search for \"OS::Neutron::Net\" types and left the multi_match\" field in, it returned all of the OS::Neutron:\":Net resources (which did not have \"cirros\" in any of their fields).","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":457,"context_line":""},{"line_number":458,"context_line":".. rest_method::  POST /v1/search"},{"line_number":459,"context_line":""},{"line_number":460,"context_line":"Submit a free text search request."},{"line_number":461,"context_line":""},{"line_number":462,"context_line":".. rest_status_code:: success http-codes.yaml"},{"line_number":463,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_0387fe61","line":460,"in_reply_to":"5a8bc5a2_23233757","updated":"2016-09-28 20:49:22.000000000","message":"Done.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"9a13faec1fcade5dbbc9a49f4a05259e29520492","unresolved":false,"context_lines":[{"line_number":457,"context_line":""},{"line_number":458,"context_line":".. rest_method::  POST /v1/search"},{"line_number":459,"context_line":""},{"line_number":460,"context_line":"Submit a free text search request."},{"line_number":461,"context_line":""},{"line_number":462,"context_line":".. rest_status_code:: success http-codes.yaml"},{"line_number":463,"context_line":""}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_23233757","line":460,"in_reply_to":"5a8bc5a2_fc99177a","updated":"2016-09-27 15:45:31.000000000","message":"I rthink the multimatch query was missing \"query\" at the top level; it becomes a \u0027match everything\u0027. See comment in that file","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":596,"context_line":"conditions:"},{"line_number":597,"context_line":""},{"line_number":598,"context_line":"- The image must be *public* and *active*. (This is a *must clause*.)"},{"line_number":599,"context_line":"- The image *cannot require more than 4096 RAM*. (This is a *must-not clause"},{"line_number":600,"context_line":"  with a range query*.)"},{"line_number":601,"context_line":"- The image should *not* be ``aki`` or ``ari``.  (This is a *must not clause*)"},{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_6722d0a4","line":599,"range":{"start_line":599,"start_character":61,"end_line":599,"end_character":69},"updated":"2016-09-27 04:10:14.000000000","message":"Should be \"must_not\"","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":596,"context_line":"conditions:"},{"line_number":597,"context_line":""},{"line_number":598,"context_line":"- The image must be *public* and *active*. (This is a *must clause*.)"},{"line_number":599,"context_line":"- The image *cannot require more than 4096 RAM*. (This is a *must-not clause"},{"line_number":600,"context_line":"  with a range query*.)"},{"line_number":601,"context_line":"- The image should *not* be ``aki`` or ``ari``.  (This is a *must not clause*)"},{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_08e2bdd5","line":599,"range":{"start_line":599,"start_character":61,"end_line":599,"end_character":69},"in_reply_to":"5a8bc5a2_6722d0a4","updated":"2016-09-28 20:49:22.000000000","message":"Done.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":598,"context_line":"- The image must be *public* and *active*. (This is a *must clause*.)"},{"line_number":599,"context_line":"- The image *cannot require more than 4096 RAM*. (This is a *must-not clause"},{"line_number":600,"context_line":"  with a range query*.)"},{"line_number":601,"context_line":"- The image should *not* be ``aki`` or ``ari``.  (This is a *must not clause*)"},{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_a73858d4","line":601,"range":{"start_line":601,"start_character":61,"end_line":601,"end_character":69},"updated":"2016-09-27 04:10:14.000000000","message":"Should be \"must_not\"","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":598,"context_line":"- The image must be *public* and *active*. (This is a *must clause*.)"},{"line_number":599,"context_line":"- The image *cannot require more than 4096 RAM*. (This is a *must-not clause"},{"line_number":600,"context_line":"  with a range query*.)"},{"line_number":601,"context_line":"- The image should *not* be ``aki`` or ``ari``.  (This is a *must not clause*)"},{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_e717c042","line":601,"updated":"2016-09-27 04:10:14.000000000","message":"This seems a little confusing, since \"should\" is not the same as \"must\". We should (?) rewrite this as:\n\n- The image must not be ...\n\nEspecially in light of the \"should\" clause in ES.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":598,"context_line":"- The image must be *public* and *active*. (This is a *must clause*.)"},{"line_number":599,"context_line":"- The image *cannot require more than 4096 RAM*. (This is a *must-not clause"},{"line_number":600,"context_line":"  with a range query*.)"},{"line_number":601,"context_line":"- The image should *not* be ``aki`` or ``ari``.  (This is a *must not clause*)"},{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_88cecd58","line":601,"range":{"start_line":601,"start_character":61,"end_line":601,"end_character":69},"in_reply_to":"5a8bc5a2_a73858d4","updated":"2016-09-28 20:49:22.000000000","message":"Done.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":598,"context_line":"- The image must be *public* and *active*. (This is a *must clause*.)"},{"line_number":599,"context_line":"- The image *cannot require more than 4096 RAM*. (This is a *must-not clause"},{"line_number":600,"context_line":"  with a range query*.)"},{"line_number":601,"context_line":"- The image should *not* be ``aki`` or ``ari``.  (This is a *must not clause*)"},{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_68f8a17d","line":601,"in_reply_to":"5a8bc5a2_e717c042","updated":"2016-09-28 20:49:22.000000000","message":"Done.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"f268e72bb343ac2bf7fa000d93bdc2c3a3f7a785","unresolved":false,"context_lines":[{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"},{"line_number":605,"context_line":"  request.  (This is an *explain clause*.)"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":".. literalinclude:: samples/create-search-complex-boolean-request.json"},{"line_number":608,"context_line":"   :language: json"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_677010a5","line":605,"range":{"start_line":605,"start_character":25,"end_line":605,"end_character":39},"updated":"2016-09-27 04:10:14.000000000","message":"Highlighting is not a clause. It exists outside of the query itself. Usually clauses refers to the items within the \"bool\" query. I would delete this parenthetical remark.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"1a92185151e6c6b35b2bd831627ecc079320c305","unresolved":false,"context_lines":[{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"},{"line_number":605,"context_line":"  request.  (This is an *explain clause*.)"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":".. literalinclude:: samples/create-search-complex-boolean-request.json"},{"line_number":608,"context_line":"   :language: json"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"3a98d1f4_883c0d31","line":605,"range":{"start_line":605,"start_character":25,"end_line":605,"end_character":39},"in_reply_to":"5a8bc5a2_03b63bf8","updated":"2016-09-28 20:49:22.000000000","message":"Removed.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":10063,"name":"Steve McLellan","email":"steven.j.mclellan@gmail.com","username":"sjmc7"},"change_message_id":"9a13faec1fcade5dbbc9a49f4a05259e29520492","unresolved":false,"context_lines":[{"line_number":602,"context_line":"- Either the *name* or the *tags* should contain \"cirros\". (This is a *should"},{"line_number":603,"context_line":"  clause with minimum match of 1*.)"},{"line_number":604,"context_line":"- In the results, indicate (\"highlight\") why these results were included in the"},{"line_number":605,"context_line":"  request.  (This is an *explain clause*.)"},{"line_number":606,"context_line":""},{"line_number":607,"context_line":".. literalinclude:: samples/create-search-complex-boolean-request.json"},{"line_number":608,"context_line":"   :language: json"}],"source_content_type":"text/x-c++src","patch_set":5,"id":"5a8bc5a2_03b63bf8","line":605,"range":{"start_line":605,"start_character":25,"end_line":605,"end_character":39},"in_reply_to":"5a8bc5a2_677010a5","updated":"2016-09-27 15:45:31.000000000","message":"Agree that probably this parentheses is unnecessary; \"explain\" has a specific meaning in Elasticsearch (similar to MySQL\u0027s) so potentially confusing.","commit_id":"85ed35e1b2634a77e2e052403c47ec223f33cd32"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c8d1399da6e75de3c9bb2af01cc2b1bf020e2488","unresolved":false,"context_lines":[{"line_number":80,"context_line":"resource type.  For example, a document with *document type*"},{"line_number":81,"context_line":"``OS::Glance::Image`` will contain the same information about an image as you"},{"line_number":82,"context_line":"would receive if you queried the Images API for information about that image."},{"line_number":83,"context_line":"The advantage to using Searchlight, or course, is that you have access to"},{"line_number":84,"context_line":"advanced searching facilities provided by Elasticsearch."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"Searchlight index"}],"source_content_type":"text/x-c++src","patch_set":6,"id":"3a98d1f4_ffdc5e1a","line":83,"range":{"start_line":83,"start_character":36,"end_line":83,"end_character":38},"updated":"2016-09-28 20:26:31.000000000","message":"this one\u0027s my mistake: s/or/of/","commit_id":"1bfb0f6b3d96afab262228fce61dd6fbe98dade5"},{"author":{"_account_id":14680,"name":"Rick Aulino","email":"rick.aulino@hpe.com","username":"ricka"},"change_message_id":"3c34e69370fe0ef74f24b5c56cbf9e23be319d26","unresolved":false,"context_lines":[{"line_number":80,"context_line":"resource type.  For example, a document with *document type*"},{"line_number":81,"context_line":"``OS::Glance::Image`` will contain the same information about an image as you"},{"line_number":82,"context_line":"would receive if you queried the Images API for information about that image."},{"line_number":83,"context_line":"The advantage to using Searchlight, or course, is that you have access to"},{"line_number":84,"context_line":"advanced searching facilities provided by Elasticsearch."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"Searchlight index"}],"source_content_type":"text/x-c++src","patch_set":6,"id":"3a98d1f4_da1df0be","line":83,"range":{"start_line":83,"start_character":36,"end_line":83,"end_character":38},"in_reply_to":"3a98d1f4_ffdc5e1a","updated":"2016-09-28 20:51:58.000000000","message":"Done.","commit_id":"1bfb0f6b3d96afab262228fce61dd6fbe98dade5"}]}
