Store foo_sequence_id in collection's meta-data.

This commit is contained in:
Harpreet Sangar 2023-01-19 11:27:52 +05:30
parent 0acd2c06c3
commit c4730c60b3
3 changed files with 11 additions and 11 deletions

View File

@ -9,7 +9,6 @@
#include <sparsepp.h>
#include <tsl/htrie_map.h>
#include "json.hpp"
#include <regex>
namespace field_types {
// first field value indexed will determine the type
@ -279,17 +278,11 @@ struct field {
const std::string & default_sorting_field,
nlohmann::json& fields_json) {
bool found_default_sorting_field = false;
const std::regex sequence_id_pattern(".*_sequence_id$");
// Check for duplicates in field names
std::map<std::string, std::vector<const field*>> unique_fields;
for(const field & field: fields) {
if (std::regex_match(field.name, sequence_id_pattern)) {
// Don't add foo_sequence_id field.
continue;
}
unique_fields[field.name].push_back(&field);
if(field.name == "id") {

View File

@ -80,10 +80,6 @@ Collection* CollectionManager::init_collection(const nlohmann::json & collection
}
fields.push_back(f);
if (!f.reference.empty()) {
fields.emplace_back(field(f.name + "_sequence_id", "string", false, f.optional, true));
}
}
std::string default_sorting_field = collection_meta[Collection::COLLECTION_DEFAULT_SORTING_FIELD_KEY].get<std::string>();

View File

@ -225,6 +225,17 @@ TEST_F(CollectionManagerTest, CollectionCreation) {
"sort":false,
"type":"string",
"reference":"Products.product_id"
},
{
"facet":false,
"index":true,
"infix":false,
"locale":"",
"name":"product_id_sequence_id",
"nested":false,
"optional":true,
"sort":false,
"type":"string"
}
],
"id":0,