Files
scylladb/api/api-doc/compaction_manager.json
Amnon Heiman 1c6dec139f API: compaction_manager add get pending tasks by table
The pending tasks by table name API return an array of pending tasks by
keyspace/table names.

After this patch the following command would work:
curl -X GET 'http://localhost:10000/compaction_manager/metrics/pending_tasks_by_table'

Signed-off-by: Amnon Heiman <amnon@scylladb.com>
2019-07-12 19:21:26 +03:00

321 lines
9.0 KiB
JSON

{
"apiVersion":"0.0.1",
"swaggerVersion":"1.2",
"basePath":"{{Protocol}}://{{Host}}",
"resourcePath":"/compaction_manager",
"produces":[
"application/json"
],
"apis":[
{
"path":"/compaction_manager/compactions",
"operations":[
{
"method":"GET",
"summary":"get List of running compactions",
"type":"array",
"items":{
"type":"summary"
},
"nickname":"get_compactions",
"produces":[
"application/json"
],
"parameters":[
]
}
]
},
{
"path":"/compaction_manager/compaction_history",
"operations":[
{
"method":"GET",
"summary":"get List of the compaction history",
"type":"array",
"items":{
"type":"history"
},
"nickname":"get_compaction_history",
"produces":[
"application/json"
],
"parameters":[
]
}
]
},
{
"path":"/compaction_manager/compaction_info",
"operations":[
{
"method":"GET",
"summary":"get a list of all active compaction info",
"type":"array",
"items":{
"type":"compaction_info"
},
"nickname":"get_compaction_info",
"produces":[
"application/json"
],
"parameters":[
]
}
]
},
{
"path":"/compaction_manager/force_user_defined_compaction",
"operations":[
{
"method":"POST",
"summary":"Triggers the compaction of user specified sstables. You can specify files from various keyspaces and columnfamilies. If you do so, user defined compaction is performed several times to the groups of files in the same keyspace/columnfamily. must contain keyspace and columnfamily name in path(for 2.1+) or file name itself.",
"type":"void",
"nickname":"force_user_defined_compaction",
"produces":[
"application/json"
],
"parameters":[
{
"name":"data_files",
"description":"a comma separated list of sstable file to compact. must contain keyspace and columnfamily name in path(for 2.1+) or file name itself",
"required":true,
"allowMultiple":false,
"type":"string",
"paramType":"query"
}
]
}
]
},
{
"path":"/compaction_manager/stop_compaction",
"operations":[
{
"method":"POST",
"summary":"Stop all running compaction-like tasks having the provided type",
"type":"void",
"nickname":"stop_compaction",
"produces":[
"application/json"
],
"parameters":[
{
"name":"type",
"description":"the type of compaction to stop. Can be one of: - COMPACTION - VALIDATION - CLEANUP - SCRUB - INDEX_BUILD",
"required":true,
"allowMultiple":false,
"type":"string",
"paramType":"query"
}
]
}
]
},
{
"path": "/compaction_manager/metrics/pending_tasks",
"operations": [
{
"method": "GET",
"summary": "Get pending tasks",
"type": "int",
"nickname": "get_pending_tasks",
"produces": [
"application/json"
],
"parameters": []
}
]
},
{
"path": "/compaction_manager/metrics/pending_tasks_by_table",
"operations": [
{
"method": "GET",
"summary": "Get pending tasks by table name",
"type": "array",
"items": {
"type": "pending_compaction"
},
"nickname": "get_pending_tasks_by_table",
"produces": [
"application/json"
],
"parameters": []
}
]
},
{
"path": "/compaction_manager/metrics/completed_tasks",
"operations": [
{
"method": "GET",
"summary": "Get completed tasks",
"type": "long",
"nickname": "get_completed_tasks",
"produces": [
"application/json"
],
"parameters": []
}
]
},
{
"path": "/compaction_manager/metrics/total_compactions_completed",
"operations": [
{
"method": "GET",
"summary": "Get total compactions completed",
"type": "long",
"nickname": "get_total_compactions_completed",
"produces": [
"application/json"
],
"parameters": []
}
]
},
{
"path": "/compaction_manager/metrics/bytes_compacted",
"operations": [
{
"method": "GET",
"summary": "Get bytes compacted",
"type": "int",
"nickname": "get_bytes_compacted",
"produces": [
"application/json"
],
"parameters": []
}
]
}
],
"models":{
"row_merged":{
"id":"row_merged",
"description":"A row merged information",
"properties":{
"key":{
"type":"int",
"description":"The number of sstable"
},
"value":{
"type":"long",
"description":"The number or row compacted"
}
}
},
"compaction_info" :{
"id": "compaction_info",
"description":"A key value mapping",
"properties":{
"operation_type":{
"type":"string",
"description":"The operation type"
},
"completed":{
"type":"long",
"description":"The current completed"
},
"total":{
"type":"long",
"description":"The total to compact"
},
"unit":{
"type":"string",
"description":"The compacted unit"
}
}
},
"summary":{
"id":"summary",
"description":"A compaction summary object",
"properties":{
"id":{
"type":"string",
"description":"The UUID"
},
"ks":{
"type":"string",
"description":"The keyspace name"
},
"cf":{
"type":"string",
"description":"The column family name"
},
"completed":{
"type":"long",
"description":"The number of units completed"
},
"total":{
"type":"long",
"description":"The total number of units"
},
"task_type":{
"type":"string",
"description":"The task compaction type"
},
"unit":{
"type":"string",
"description":"The units being used"
}
}
},
"pending_compaction": {
"id": "pending_compaction",
"properties": {
"cf": {
"type": "string",
"description": "The column family name"
},
"ks": {
"type":"string",
"description": "The keyspace name"
},
"task": {
"type":"long",
"description": "The number of pending tasks"
}
}
},
"history": {
"id":"history",
"description":"Compaction history information",
"properties":{
"id":{
"type":"string",
"description":"The UUID"
},
"cf":{
"type":"string",
"description":"The column family name"
},
"ks":{
"type":"string",
"description":"The keyspace name"
},
"compacted_at":{
"type":"long",
"description":"The time of compaction"
},
"bytes_in":{
"type":"long",
"description":"Bytes in"
},
"bytes_out":{
"type":"long",
"description":"Bytes out"
},
"rows_merged":{
"type":"array",
"items":{
"type":"row_merged"
},
"description":"The merged rows"
}
}
}
}
}