From afff9951e2b6aa0e1bb0949c68967951734604ef Mon Sep 17 00:00:00 2001 From: Maysam Yabandeh Date: Fri, 21 Apr 2017 17:30:30 -0700 Subject: [PATCH] Respect deprecated flag in table options Summary: Closes https://github.com/facebook/rocksdb/pull/2197 Differential Revision: D4932434 Pulled By: maysamyabandeh fbshipit-source-id: 6c83c12d6d47e3f0640ab84954944215968f266f --- options/options_helper.cc | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/options/options_helper.cc b/options/options_helper.cc index 675eeb9fb..d66844c0e 100644 --- a/options/options_helper.cc +++ b/options/options_helper.cc @@ -1032,7 +1032,8 @@ std::string ParseBlockBasedTableOption(const std::string& name, return "Unrecognized option"; } const auto& opt_info = iter->second; - if (!ParseOptionHelper(reinterpret_cast(new_options) + opt_info.offset, + if (opt_info.verification != OptionVerificationType::kDeprecated && + !ParseOptionHelper(reinterpret_cast(new_options) + opt_info.offset, opt_info.type, value)) { return "Invalid value"; } @@ -1041,7 +1042,7 @@ std::string ParseBlockBasedTableOption(const std::string& name, std::string ParsePlainTableOptions(const std::string& name, const std::string& org_value, - PlainTableOptions* new_option, + PlainTableOptions* new_options, bool input_strings_escaped = false) { const std::string& value = input_strings_escaped ? UnescapeOptionString(org_value) : org_value; @@ -1050,7 +1051,8 @@ std::string ParsePlainTableOptions(const std::string& name, return "Unrecognized option"; } const auto& opt_info = iter->second; - if (!ParseOptionHelper(reinterpret_cast(new_option) + opt_info.offset, + if (opt_info.verification != OptionVerificationType::kDeprecated && + !ParseOptionHelper(reinterpret_cast(new_options) + opt_info.offset, opt_info.type, value)) { return "Invalid value"; }