Github user superbstreak commented on a diff in the pull request: https://github.com/apache/drill/pull/1037#discussion_r151282112 --- Diff: contrib/native/client/src/include/drill/userProperties.hpp --- @@ -28,6 +28,20 @@ class DECLSPEC_DRILL_CLIENT DrillUserProperties{ static const std::map<std::string, uint32_t> USER_PROPERTIES; DrillUserProperties(){}; + + /// @brief Insert or update property value associate with the property key if the value is + /// empty or key is undefined. This function is useful for setting default property. + /// + /// @param in_propName The property name. + /// @param in_propValue The property value. + void SetDefaultProperty(const std::string& in_propName, const std::string& in_propValue) + { + // If the element value is empty (newly inserted or user defined), then update. + if (m_properties[in_propName].empty()) --- End diff -- If the value doesn't exist, the original implementation with the setProperty(2) would also insert a new key. Not sure if that was intended or not.
---