Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 1D2B2200B28 for ; Sun, 12 Jun 2016 02:03:20 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 1BE34160A54; Sun, 12 Jun 2016 00:03:20 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 62BF0160A34 for ; Sun, 12 Jun 2016 02:03:19 +0200 (CEST) Received: (qmail 17131 invoked by uid 500); 12 Jun 2016 00:03:18 -0000 Mailing-List: contact dev-help@quickstep.incubator.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@quickstep.incubator.apache.org Delivered-To: mailing list dev@quickstep.incubator.apache.org Received: (qmail 17120 invoked by uid 99); 12 Jun 2016 00:03:18 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd3-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 12 Jun 2016 00:03:18 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd3-us-west.apache.org (ASF Mail Server at spamd3-us-west.apache.org) with ESMTP id CF33E1805B7 for ; Sun, 12 Jun 2016 00:03:17 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd3-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: -5.446 X-Spam-Level: X-Spam-Status: No, score=-5.446 tagged_above=-999 required=6.31 tests=[KAM_LAZY_DOMAIN_SECURITY=1, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-1.426] autolearn=disabled Received: from mx2-lw-eu.apache.org ([10.40.0.8]) by localhost (spamd3-us-west.apache.org [10.40.0.10]) (amavisd-new, port 10024) with ESMTP id EFnfrvF6PjqJ for ; Sun, 12 Jun 2016 00:03:17 +0000 (UTC) Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by mx2-lw-eu.apache.org (ASF Mail Server at mx2-lw-eu.apache.org) with SMTP id 136A25F36F for ; Sun, 12 Jun 2016 00:03:15 +0000 (UTC) Received: (qmail 17117 invoked by uid 99); 12 Jun 2016 00:03:15 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 12 Jun 2016 00:03:15 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 3FF6ADFE2E; Sun, 12 Jun 2016 00:03:15 +0000 (UTC) From: hbdeshmukh To: dev@quickstep.incubator.apache.org Reply-To: dev@quickstep.incubator.apache.org References: In-Reply-To: Subject: [GitHub] incubator-quickstep pull request #14: QUICKSTEP-8: Long running Foreman thre... Content-Type: text/plain Message-Id: <20160612000315.3FF6ADFE2E@git1-us-west.apache.org> Date: Sun, 12 Jun 2016 00:03:15 +0000 (UTC) archived-at: Sun, 12 Jun 2016 00:03:20 -0000 Github user hbdeshmukh commented on a diff in the pull request: https://github.com/apache/incubator-quickstep/pull/14#discussion_r66713594 --- Diff: query_execution/PolicyEnforcer.hpp --- @@ -0,0 +1,168 @@ +/** + * Copyright 2016, Quickstep Research Group, Computer Sciences Department, + * University of Wisconsin—Madison. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + **/ + +#ifndef QUICKSTEP_QUERY_EXECUTION_POLICY_ENFORCER_HPP_ +#define QUICKSTEP_QUERY_EXECUTION_POLICY_ENFORCER_HPP_ + +#include +#include +#include +#include +#include + +#include "query_execution/QueryExecutionTypedefs.hpp" +#include "query_execution/QueryManager.hpp" +#include "query_execution/WorkerMessage.hpp" +#include "utility/Macros.hpp" + +#include "glog/logging.h" + +#include "tmb/id_typedefs.h" +#include "tmb/message_bus.h" +#include "tmb/tagged_message.h" + +namespace quickstep { + +class CatalogDatabaseLite; +class QueryHandle; +class StorageManager; + +/** + * @brief A class that ensures that a high level policy is maintained + * in sharing resources among concurrent queries. + **/ +class PolicyEnforcer { + public: + /** + * @brief Constructor. + * + * @param foreman_client_id The TMB client ID of the Foreman. + * @param num_numa_nodes Number of NUMA nodes used by the system. + * @param catalog_database The CatalogDatabase used. + * @param storage_manager The StorageManager used. + * @param bus The TMB. + **/ + PolicyEnforcer(const tmb::client_id foreman_client_id, + const std::size_t num_numa_nodes, --- End diff -- Is there a reason why we should make it optional? --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastructure@apache.org or file a JIRA ticket with INFRA. ---