You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Michael Park (JIRA)" <ji...@apache.org> on 2015/06/01 02:40:17 UTC

[jira] [Commented] (MESOS-2780) Non-POD static variables

    [ https://issues.apache.org/jira/browse/MESOS-2780?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14566851#comment-14566851 ] 

Michael Park commented on MESOS-2780:
-------------------------------------

Thanks for identifying these [~pbrett]!

Unfortunately, currently most of these can't be made {{constexpr}} since one of the requirements of {{constexpr}} variables is that the type must be a [LiteralType|http://en.cppreference.com/w/cpp/concept/LiteralType]. {{std::string}} does not meet this requirement, and the {{stout}} types (e.g. {{Duration}}, {{Bytes}}, etc) do not either. I think we can probably make the {{stout}} types be literal types, I'm just pointing out since we'll need to do that before we can declare them {{constexpr}}.

> Non-POD static variables
> ------------------------
>
>                 Key: MESOS-2780
>                 URL: https://issues.apache.org/jira/browse/MESOS-2780
>             Project: Mesos
>          Issue Type: Bug
>            Reporter: Paul Brett
>
> We declare const non-POD static variables which should be converted to C++11 const expr.  These include the following:
> {noformat}
> tests/isolator_tests.cpp:1080:const string UNPRIVILEGED_USERNAME = "mesos.test.unprivileged.user";
> tests/mesos.hpp:215:const static std::string TEST_CGROUPS_HIERARCHY = "/tmp/mesos_test_cgroup";
> tests/mesos.hpp:218:const static std::string TEST_CGROUPS_ROOT = "mesos_test";
> tests/zookeeper.cpp:53:const Duration ZooKeeperTest::NO_TIMEOUT = Seconds(10);
> master/contender.cpp:45:const Duration MASTER_CONTENDER_ZK_SESSION_TIMEOUT = Seconds(10);
> master/constants.cpp:33:const Bytes MIN_MEM = Megabytes(32);
> master/constants.cpp:34:const Duration SLAVE_PING_TIMEOUT = Seconds(15);
> master/constants.cpp:36:const Duration MIN_SLAVE_REREGISTER_TIMEOUT = Minutes(10);
> master/constants.cpp:41:const Duration WHITELIST_WATCH_INTERVAL = Seconds(5);
> master/constants.cpp:43:const std::string MASTER_INFO_LABEL = "info";
> master/constants.cpp:44:const Duration ZOOKEEPER_SESSION_TIMEOUT = Seconds(10);
> master/constants.cpp:45:const std::string DEFAULT_AUTHENTICATOR = "crammd5";
> master/constants.cpp:46:const std::string DEFAULT_ALLOCATOR = "HierarchicalDRF";
> master/detector.cpp:56:const Duration MASTER_DETECTOR_ZK_SESSION_TIMEOUT = Seconds(10);
> master/http.cpp:274:const string Master::Http::HEALTH_HELP = HELP(
> master/http.cpp:289:const static string HOSTS_KEY = "hosts";
> master/http.cpp:290:const static string LEVEL_KEY = "level";
> master/http.cpp:291:const static string MONITOR_KEY = "monitor";
> master/http.cpp:293:const string Master::Http::OBSERVE_HELP = HELP(
> master/http.cpp:385:const string Master::Http::REDIRECT_HELP = HELP(
> master/http.cpp:424:const string Master::Http::SLAVES_HELP = HELP(
> master/http.cpp:687:const TaskStateSummary TaskStateSummary::EMPTY;
> master/http.cpp:864:const string Master::Http::SHUTDOWN_HELP = HELP(
> master/http.cpp:877:const string Master::Http::TEARDOWN_HELP = HELP(
> master/http.cpp:974:const string Master::Http::TASKS_HELP = HELP(
> zookeeper/group.cpp:43:const Duration GroupProcess::RETRY_INTERVAL = Seconds(2);
> zookeeper/authentication.cpp:11:const ACL_vector EVERYONE_READ_CREATOR_ALL = {
> zookeeper/authentication.cpp:23:const ACL_vector EVERYONE_CREATE_AND_READ_CREATOR_ALL = {
> common/build.cpp:32:const std::string DATE = BUILD_DATE;
> common/build.cpp:34:const std::string USER = BUILD_USER;
> common/build.cpp:35:const std::string FLAGS = BUILD_FLAGS;
> common/build.cpp:36:const std::string JAVA_JVM_LIBRARY = BUILD_JAVA_JVM_LIBRARY;
> common/build.cpp:39:const Option<std::string> GIT_SHA = std::string(BUILD_GIT_SHA);
> common/build.cpp:41:const Option<std::string> GIT_SHA = None();
> common/build.cpp:45:const Option<std::string> GIT_BRANCH = std::string(BUILD_GIT_BRANCH);
> common/build.cpp:47:const Option<std::string> GIT_BRANCH = None();
> common/build.cpp:51:const Option<std::string> GIT_TAG = std::string(BUILD_GIT_TAG);
> common/build.cpp:53:const Option<std::string> GIT_TAG = None();
> slave/monitor.cpp:199:const string ResourceMonitorProcess::STATISTICS_HELP = HELP(
> slave/constants.cpp:29:const Duration EXECUTOR_REGISTRATION_TIMEOUT = Minutes(1);
> slave/constants.cpp:30:const Duration EXECUTOR_SHUTDOWN_GRACE_PERIOD = Seconds(5);
> slave/constants.cpp:31:const Duration EXECUTOR_REREGISTER_TIMEOUT = Seconds(2);
> slave/constants.cpp:32:const Duration EXECUTOR_SIGNAL_ESCALATION_TIMEOUT = Seconds(3);
> slave/constants.cpp:33:const Duration STATUS_UPDATE_RETRY_INTERVAL_MIN = Seconds(10);
> slave/constants.cpp:34:const Duration STATUS_UPDATE_RETRY_INTERVAL_MAX = Minutes(10);
> slave/constants.cpp:35:const Duration REGISTRATION_BACKOFF_FACTOR = Seconds(1);
> slave/constants.cpp:36:const Duration REGISTER_RETRY_INTERVAL_MAX = Minutes(1);
> slave/constants.cpp:37:const Duration GC_DELAY = Weeks(1);
> slave/constants.cpp:39:const Duration DISK_WATCH_INTERVAL = Minutes(1);
> slave/constants.cpp:40:const Duration RECOVERY_TIMEOUT = Minutes(15);
> slave/constants.cpp:41:const Duration RESOURCE_MONITORING_INTERVAL = Seconds(1);
> slave/constants.cpp:46:const Bytes DEFAULT_MEM = Gigabytes(1);
> slave/constants.cpp:47:const Bytes DEFAULT_DISK = Gigabytes(10);
> slave/constants.cpp:48:const std::string DEFAULT_PORTS = "[31000-32000]";
> slave/constants.cpp:52:const Duration DOCKER_REMOVE_DELAY = Hours(6);
> slave/constants.cpp:53:const Duration DOCKER_INSPECT_DELAY = Seconds(1);
> slave/constants.cpp:55:const Duration DOCKER_VERSION_WAIT_TIMEOUT = Seconds(5);
> slave/constants.cpp:56:const std::string DEFAULT_AUTHENTICATEE = "crammd5";
> slave/containerizer/docker.cpp:72:const string DOCKER_NAME_PREFIX = "mesos-";
> slave/containerizer/docker.cpp:75:const string DOCKER_NAME_SEPERATOR = ".";
> slave/containerizer/docker.cpp:78:const string DOCKER_SYMLINK_DIRECTORY = "docker/links";
> slave/containerizer/isolators/cgroups/constants.hpp:32:const Duration CPU_CFS_PERIOD = Milliseconds(100); // Linux default.
> slave/containerizer/isolators/cgroups/constants.hpp:33:const Duration MIN_CPU_CFS_QUOTA = Milliseconds(1);
> slave/containerizer/isolators/cgroups/constants.hpp:37:const Bytes MIN_MEMORY = Megabytes(32);
> slave/containerizer/mesos/launch.cpp:45:const string MesosContainerizerLaunch::NAME = "launch";
> slave/monitor.hpp:51:const extern Duration MONITORING_TIME_SERIES_WINDOW;
> slave/constants.hpp:89:const Bytes DEFAULT_EXECUTOR_MEM = Megabytes(32);
> slave/http.cpp:248:const string Slave::Http::HEALTH_HELP = HELP(
> linux/cgroups.hpp:46:const Duration DESTROY_TIMEOUT = Seconds(60);
> linux/cgroups.hpp:52:const Duration FREEZE_RETRY_INTERVAL = Seconds(10);
> linux/cgroups.hpp:56:const unsigned int THREAD_ASSIGN_RETRIES = 100;
> sched/constants.cpp:30:const Duration REGISTRATION_BACKOFF_FACTOR = Seconds(2);
> sched/constants.cpp:32:const Duration REGISTRATION_RETRY_INTERVAL_MAX = Minutes(1);
> sched/constants.cpp:34:const std::string DEFAULT_AUTHENTICATEE = "crammd5";
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)