Merge branch 'branch-0.5.0-yk' into 'branch-0.5.0'

MS-644 - Search crashed with index-type: flat

See merge request megasearch/milvus!715

Former-commit-id: ac8f9df62f2c65edeecac5e32f5e04dc48fd2e4f
This commit is contained in:
peng.xu 2019-10-14 17:39:41 +08:00
commit f6232584aa
3 changed files with 24 additions and 11 deletions

View File

@ -17,6 +17,8 @@ Please mark all change in change log and use the ticket from JIRA.
- MS-640 - Cache object size calculate incorrect - MS-640 - Cache object size calculate incorrect
- MS-641 - Segment fault(signal 11) in PickToLoad - MS-641 - Segment fault(signal 11) in PickToLoad
- MS-639 - SQ8H index created failed and server hang - MS-639 - SQ8H index created failed and server hang
- MS-647 - [monitor] grafana display average cpu-temp
- MS-644 - Search crashed with index-type: flat
- MS-624 - Search vectors failed if time ranges long enough - MS-624 - Search vectors failed if time ranges long enough
## Improvement ## Improvement

View File

@ -222,10 +222,19 @@ PrometheusMetrics::CPUTemperature() {
std::vector<float> CPU_temperatures = server::SystemInfo::GetInstance().CPUTemperature(); std::vector<float> CPU_temperatures = server::SystemInfo::GetInstance().CPUTemperature();
float avg_cpu_temp = 0;
for (int i = 0; i < CPU_temperatures.size(); ++i) { for (int i = 0; i < CPU_temperatures.size(); ++i) {
prometheus::Gauge& cpu_temp = CPU_temperature_.Add({{"CPU", std::to_string(i)}}); avg_cpu_temp += CPU_temperatures[i];
cpu_temp.Set(CPU_temperatures[i]);
} }
avg_cpu_temp /= CPU_temperatures.size();
prometheus::Gauge& cpu_temp = CPU_temperature_.Add({{"CPU", std::to_string(0)}});
cpu_temp.Set(avg_cpu_temp);
// for (int i = 0; i < CPU_temperatures.size(); ++i) {
// prometheus::Gauge& cpu_temp = CPU_temperature_.Add({{"CPU", std::to_string(i)}});
// cpu_temp.Set(CPU_temperatures[i]);
// }
} }
void void

View File

@ -110,16 +110,18 @@ Action::DefaultLabelTaskScheduler(ResourceMgrWPtr res_mgr, ResourcePtr resource,
bool moved = false; bool moved = false;
// to support test task, REFACTOR // to support test task, REFACTOR
if (auto index_engine = search_task->index_engine_) { if (resource->type() == ResourceType::CPU) {
auto location = index_engine->GetLocation(); if (auto index_engine = search_task->index_engine_) {
auto location = index_engine->GetLocation();
for (auto i = 0; i < res_mgr.lock()->GetNumGpuResource(); ++i) { for (auto i = 0; i < res_mgr.lock()->GetNumGpuResource(); ++i) {
auto index = milvus::cache::GpuCacheMgr::GetInstance(i)->GetIndex(location); auto index = milvus::cache::GpuCacheMgr::GetInstance(i)->GetIndex(location);
if (index != nullptr) { if (index != nullptr) {
moved = true; moved = true;
auto dest_resource = res_mgr.lock()->GetResource(ResourceType::GPU, i); auto dest_resource = res_mgr.lock()->GetResource(ResourceType::GPU, i);
PushTaskToResource(event->task_table_item_->task, dest_resource); PushTaskToResource(event->task_table_item_->task, dest_resource);
break; break;
}
} }
} }
} }