'Generic Commit'
This commit is contained in:
@@ -120,20 +120,18 @@ void UpdateHandler::handle_update_object(const drogon::HttpRequestPtr& req, std:
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prepare updated entry
|
// Prepare new entry for database merge
|
||||||
dbEntry updated_entry = entry;
|
dbEntry new_entry;
|
||||||
updated_entry.metadata = new_metadata;
|
new_entry.hash = hash;
|
||||||
|
new_entry.metadata = new_metadata;
|
||||||
|
|
||||||
// Update labeltags if provided in the new metadata
|
// Extract labeltags if provided in the new metadata
|
||||||
if (new_metadata.contains("labeltags") && new_metadata["labeltags"].is_array()) {
|
if (new_metadata.contains("labeltags") && new_metadata["labeltags"].is_array()) {
|
||||||
updated_entry.labeltags = new_metadata["labeltags"].get<std::vector<std::string>>();
|
new_entry.labeltags = new_metadata["labeltags"].get<std::vector<std::string>>();
|
||||||
}
|
}
|
||||||
|
// If no labeltags provided, new_entry.labeltags will be empty and merge will preserve existing ones
|
||||||
// Ensure labeltags and hash are reflected in metadata
|
|
||||||
updated_entry.metadata["labeltags"] = updated_entry.labeltags;
|
|
||||||
updated_entry.metadata["hash"] = updated_entry.hash;
|
|
||||||
|
|
||||||
if (!server_.db_->update_or_insert(updated_entry)) {
|
if (!server_.db_->update_or_insert(new_entry)) {
|
||||||
resp->setStatusCode(drogon::k500InternalServerError);
|
resp->setStatusCode(drogon::k500InternalServerError);
|
||||||
nlohmann::json response = {{"result", "error"}, {"error", "Failed to update metadata for hash: " + hash}};
|
nlohmann::json response = {{"result", "error"}, {"error", "Failed to update metadata for hash: " + hash}};
|
||||||
resp->setBody(response.dump());
|
resp->setBody(response.dump());
|
||||||
|
@@ -530,10 +530,6 @@ function test9() {
|
|||||||
#------------------------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
test0
|
test0
|
||||||
|
|
||||||
test8
|
|
||||||
exit 0
|
|
||||||
|
|
||||||
test1
|
test1
|
||||||
test2
|
test2
|
||||||
test3
|
test3
|
||||||
|
Reference in New Issue
Block a user