You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficserver.apache.org by zw...@apache.org on 2011/03/04 04:27:53 UTC

svn commit: r1076981 - in /trafficserver/traffic/trunk/proxy: ControlMatcher.h ParentSelection.cc ParentSelection.h config/parent.config

Author: zwoop
Date: Fri Mar  4 03:27:53 2011
New Revision: 1076981

URL: http://svn.apache.org/viewvc?rev=1076981&view=rev
Log:
TS-688 Remove the "tag" modifier from parent.config.

This tag modifier has no purpose any more.

Modified:
    trafficserver/traffic/trunk/proxy/ControlMatcher.h
    trafficserver/traffic/trunk/proxy/ParentSelection.cc
    trafficserver/traffic/trunk/proxy/ParentSelection.h
    trafficserver/traffic/trunk/proxy/config/parent.config

Modified: trafficserver/traffic/trunk/proxy/ControlMatcher.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/ControlMatcher.h?rev=1076981&r1=1076980&r2=1076981&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/ControlMatcher.h (original)
+++ trafficserver/traffic/trunk/proxy/ControlMatcher.h Fri Mar  4 03:27:53 2011
@@ -141,10 +141,10 @@ public:
   inkcoreapi ip_addr_t get_ip();
   inkcoreapi ip_addr_t get_client_ip();
 
-    HttpRequestData():hdr(NULL), hostname_str(NULL), api_info(NULL),
-    xact_start(0), src_ip(0), dest_ip(0), incoming_port(0), tag(NULL)
-  {
-  }
+  HttpRequestData()
+    : hdr(NULL), hostname_str(NULL), api_info(NULL),
+      xact_start(0), src_ip(0), dest_ip(0), incoming_port(0), tag(NULL)
+  { }
 
   HTTPHdr *hdr;
   char *hostname_str;

Modified: trafficserver/traffic/trunk/proxy/ParentSelection.cc
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/ParentSelection.cc?rev=1076981&r1=1076980&r2=1076981&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/ParentSelection.cc (original)
+++ trafficserver/traffic/trunk/proxy/ParentSelection.cc Fri Mar  4 03:27:53 2011
@@ -25,7 +25,6 @@
  *
  *  ParentSelection.cc - Implementation of Parent Proxy routing
  *
- *
  ****************************************************************************/
 
 #include "ink_unused.h"  /* MAGIC_EDITING_TAG */
@@ -75,7 +74,8 @@ static const char *ParentRRStr[] = {
 //  Config Callback Prototypes
 //
 enum ParentCB_t
-{ PARENT_FILE_CB, PARENT_DEFAULT_CB,
+{
+  PARENT_FILE_CB, PARENT_DEFAULT_CB,
   PARENT_RETRY_CB, PARENT_ENABLE_CB,
   PARENT_THRESHOLD_CB, PARENT_DNS_ONLY_CB
 };
@@ -86,10 +86,9 @@ enum ParentCB_t
 //   between HttpTransact & the parent selection code.  The following
 ParentRecord *const extApiRecord = (ParentRecord *) 0xeeeeffff;
 
-ParentConfigParams::ParentConfigParams():
-ParentTable(NULL), DefaultParent(NULL), ParentRetryTime(30), ParentEnable(0), FailThreshold(10), DNS_ParentOnly(0)
-{
-}
+ParentConfigParams::ParentConfigParams()
+  : ParentTable(NULL), DefaultParent(NULL), ParentRetryTime(30), ParentEnable(0), FailThreshold(10), DNS_ParentOnly(0)
+{ }
 
 ParentConfigParams::~ParentConfigParams()
 {
@@ -102,25 +101,11 @@ ParentConfigParams::~ParentConfigParams(
   }
 }
 
-int
-  ParentConfig::m_id = 0;
+int ParentConfig::m_id = 0;
 
 //
 //   Begin API functions
 //
-
-ParentConfigParams *
-ParentConfig::acquire()
-{
-  return (ParentConfigParams *) configProcessor.get(ParentConfig::m_id);
-}
-
-void
-ParentConfig::release(ParentConfigParams * params)
-{
-  configProcessor.release(ParentConfig::m_id, params);
-}
-
 void
 ParentConfig::startup()
 {
@@ -149,7 +134,6 @@ ParentConfig::startup()
 void
 ParentConfig::reconfigure()
 {
-
   char *default_val = NULL;
   int retry_time = 30;
   int enable = 0;
@@ -236,7 +220,7 @@ ParentConfigParams::parentExists(HttpReq
 }
 
 void
-ParentConfigParams::findParent(HttpRequestData * rdata, ParentResult * result, char *tag)
+ParentConfigParams::findParent(HttpRequestData * rdata, ParentResult * result)
 {
   P_table *tablePtr = ParentTable;
   ParentRecord *defaultPtr = DefaultParent;
@@ -263,7 +247,6 @@ ParentConfigParams::findParent(HttpReque
   // Check to see if the parent was set through the
   //   api
   if (apiParentExists(rdata)) {
-
     result->r = PARENT_SPECIFIED;
     result->hostname = rdata->api_info->parent_proxy_name;
     result->port = rdata->api_info->parent_proxy_port;
@@ -275,7 +258,6 @@ ParentConfigParams::findParent(HttpReque
     Debug("parent_select", "Result for %s was API set parent %s:%d", rdata->get_host(), result->hostname, result->port);
   }
 
-  rdata->tag = tag;
   tablePtr->Match(rdata, result);
   rec = result->rec;
 
@@ -302,7 +284,6 @@ ParentConfigParams::findParent(HttpReque
     rec->FindParent(true, result, rdata, this);
 
   if (is_debug_tag_set("parent_select") || is_debug_tag_set("cdn")) {
-
     switch (result->r) {
     case PARENT_UNDEFINED:
       Debug("cdn", "PARENT_UNDEFINED");
@@ -346,7 +327,6 @@ ParentConfigParams::findParent(HttpReque
 void
 ParentConfigParams::recordRetrySuccess(ParentResult * result)
 {
-
   pRecord *pRec;
 
   //  Make sure that we are being called back with with a
@@ -377,7 +357,6 @@ ParentConfigParams::recordRetrySuccess(P
 void
 ParentConfigParams::markParentDown(ParentResult * result)
 {
-
   time_t now;
   pRecord *pRec;
   int new_fail_count = 0;
@@ -406,7 +385,6 @@ ParentConfigParams::markParentDown(Paren
   //   must update move the failedAt timestamp to now so that we continue
   //   negative cache the parent
   if (pRec->failedAt == 0 || result->retry == true) {
-
     // Reread the current time.  We want this to be accurate since
     //   it relates to how long the parent has been down.
     now = time(NULL);
@@ -420,11 +398,11 @@ ParentConfigParams::markParentDown(Paren
       new_fail_count = pRec->failCount = 1;
     }
 
-    Debug("parent_select", "Parent %s marked as down %s:%d",
-          (result->retry) ? "retry" : "initially", pRec->hostname, pRec->port);
+    Debug("parent_select", "Parent %s marked as down %s:%d", (result->retry) ? "retry" : "initially", pRec->hostname, pRec->port);
 
   } else {
     int old_count = ink_atomic_increment(&pRec->failCount, 1);
+
     Debug("parent_select", "Parent fail count increased to %d for %s:%d", old_count + 1, pRec->hostname, pRec->port);
     new_fail_count = old_count + 1;
   }
@@ -547,7 +525,6 @@ ParentRecord::FindParent(bool first_call
       }
     }
   } else {
-
     // Move to next parent due to failure
     cur_index = (result->last_parent + 1) % num_parents;
 
@@ -754,7 +731,6 @@ ParentRecord::DefaultInit(char *val)
 char *
 ParentRecord::Init(matcher_line * line_info)
 {
-
   const char *errPtr = NULL;
   char *errBuf;
   const int errBufLen = 1024;
@@ -850,7 +826,6 @@ ParentRecord::Init(matcher_line * line_i
 void
 ParentRecord::UpdateMatch(ParentResult * result, RD * rdata)
 {
-
   if (this->CheckForMatch((HttpRequestData *) rdata, result->line_number) == true) {
     result->rec = this;
     result->line_number = this->line_num;
@@ -882,7 +857,6 @@ ParentRecord::Print()
 //
 struct PA_UpdateContinuation: public Continuation
 {
-
   int handle_event(int event, void *data)
   {
     NOWARN_UNUSED(event);
@@ -959,23 +933,8 @@ parentSelection_CB(const char *name, Rec
 //ParentConfig equivalent functions for SocksServerConfig
 //
 
-int
-  SocksServerConfig::m_id = 0;
-static ProxyMutexPtr
-  socks_server_reconfig_mutex = NULL;
-
-ParentConfigParams *
-SocksServerConfig::acquire()
-{
-  return (ParentConfigParams *) configProcessor.get(SocksServerConfig::m_id);
-}
-
-void
-SocksServerConfig::release(ParentConfigParams * params)
-{
-  configProcessor.release(SocksServerConfig::m_id, params);
-}
-
+int SocksServerConfig::m_id = 0;
+static ProxyMutexPtr socks_server_reconfig_mutex = NULL;
 void
 SocksServerConfig::startup()
 {
@@ -991,7 +950,6 @@ static int
 setup_socks_servers(ParentRecord * rec_arr, int len)
 {
   /* This changes hostnames into ip addresses and sets go_direct to false */
-
   for (int j = 0; j < len; j++) {
     rec_arr[j].go_direct = false;
 
@@ -1022,7 +980,6 @@ setup_socks_servers(ParentRecord * rec_a
 void
 SocksServerConfig::reconfigure()
 {
-
   char *default_val = NULL;
   int retry_time = 30;
   int fail_threshold;

Modified: trafficserver/traffic/trunk/proxy/ParentSelection.h
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/ParentSelection.h?rev=1076981&r1=1076980&r2=1076981&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/ParentSelection.h (original)
+++ trafficserver/traffic/trunk/proxy/ParentSelection.h Fri Mar  4 03:27:53 2011
@@ -47,8 +47,6 @@ struct matcher_line;
 struct ParentResult;
 class ParentRecord;
 
-#define PARENT_SELECTION_TIMEOUT            (HRTIME_HOUR*4)
-
 enum ParentResultType
 {
   PARENT_UNDEFINED, PARENT_DIRECT,
@@ -63,8 +61,8 @@ typedef ControlMatcher<ParentRecord, Par
 struct ParentResult
 {
   ParentResult()
-    : r(PARENT_UNDEFINED), hostname(NULL), port(0),
-      line_number(0), epoch(NULL), rec(NULL), last_parent(0), start_parent(0), wrap_around(false), retry(false)
+    : r(PARENT_UNDEFINED), hostname(NULL), port(0), line_number(0), epoch(NULL), rec(NULL),
+      last_parent(0), start_parent(0), wrap_around(false), retry(false)
   { };
 
   // For outside consumption
@@ -94,38 +92,38 @@ struct ParentConfigParams:public ConfigI
   //
   //   Does initial parent lookup
   //
-  inkcoreapi void findParent(HttpRequestData * rdata, ParentResult * result, char *tag = NULL);
+  inkcoreapi void findParent(HttpRequestData *rdata, ParentResult *result);
 
   // void markParentDown(ParentResult* rsult)
   //
   //    Marks the parent pointed to by result as down
   //
-  inkcoreapi void markParentDown(ParentResult * result);
+  inkcoreapi void markParentDown(ParentResult *result);
 
   // void recordRetrySuccess
   //
   //    After a successful retry, http calls this function
   //      to clear the bits indicating the parent is down
   //
-  void recordRetrySuccess(ParentResult * result);
+  void recordRetrySuccess(ParentResult *result);
 
   // void nextParent(RD* rdata, ParentResult* result);
   //
   //    Marks the parent pointed to by result as down and attempts
   //      to find the next parent
   //
-  inkcoreapi void nextParent(HttpRequestData * rdata, ParentResult * result);
+  inkcoreapi void nextParent(HttpRequestData *rdata, ParentResult *result);
 
   // bool parentExists(HttpRequestData* rdata)
   //
   //   Returns true if there is a parent matching the request data and
   //   false otherwise
-  bool parentExists(HttpRequestData * rdata);
+  bool parentExists(HttpRequestData *rdata);
 
   // bool apiParentExists(HttpRequestData* rdata)
   //
   //   Retures true if a parent has been set through the api
-  bool apiParentExists(HttpRequestData * rdata);
+  bool apiParentExists(HttpRequestData *rdata);
 
   P_table *ParentTable;
   ParentRecord *DefaultParent;
@@ -139,12 +137,13 @@ struct ParentConfig
 {
 public:
   static void startup();
-
   static void reconfigure();
-  inkcoreapi static ParentConfigParams *acquire();
-  inkcoreapi static void release(ParentConfigParams * params);
   static void print();
 
+  inkcoreapi static ParentConfigParams *acquire() { return (ParentConfigParams *) configProcessor.get(ParentConfig::m_id); }
+  inkcoreapi static void release(ParentConfigParams *params) { configProcessor.release(ParentConfig::m_id, params); }
+
+
   static int m_id;
 };
 //
@@ -178,24 +177,24 @@ enum ParentRR_t
 //   A record for a configuration line in the parent.config
 //    file
 //
-class ParentRecord:public ControlBase
+class ParentRecord: public ControlBase
 {
 public:
-  ParentRecord();
+  ParentRecord()
+    : parents(NULL), num_parents(0), round_robin(P_NO_ROUND_ROBIN), rr_next(0), go_direct(true)
+  { }
+
   ~ParentRecord();
 
-  char *Init(matcher_line * line_info);
+  char *Init(matcher_line *line_info);
   bool DefaultInit(char *val);
-  void UpdateMatch(ParentResult * result, RD * rdata);
-  void FindParent(bool firstCall, ParentResult * result, RD * rdata, ParentConfigParams * config);
+  void UpdateMatch(ParentResult *result, RD *rdata);
+  void FindParent(bool firstCall, ParentResult *result, RD *rdata, ParentConfigParams *config);
   void Print();
   pRecord *parents;
   int num_parents;
 
-  bool bypass_ok()
-  {
-    return go_direct;
-  };
+  bool bypass_ok() const { return go_direct; }
 
   const char *scheme;
   //private:
@@ -205,16 +204,6 @@ public:
   bool go_direct;
 };
 
-inline
-ParentRecord::ParentRecord()
-  : parents(NULL),
-    num_parents(0),
-    round_robin(P_NO_ROUND_ROBIN),
-    rr_next(0),
-    go_direct(true)
-{
-}
-
 // Helper Functions
 ParentRecord *createDefaultParent(char *val);
 void reloadDefaultParent(char *val);
@@ -222,9 +211,9 @@ void reloadParentFile();
 int parentSelection_CB(const char *name, RecDataT data_type, RecData data, void *cookie);
 
 // Unit Test Functions
-void show_result(ParentResult * aParentResult);
-void br(HttpRequestData * h, const char *os_hostname, int dest_ip = 0);       // short for build request
-int verify(ParentResult * r, ParentResultType e, const char *h, int p);
+void show_result(ParentResult *aParentResult);
+void br(HttpRequestData *h, const char *os_hostname, int dest_ip = 0);       // short for build request
+int verify(ParentResult *r, ParentResultType e, const char *h, int p);
 
 /*
   For supporting multiple Socks servers, we essentially use the
@@ -236,17 +225,15 @@ int verify(ParentResult * r, ParentResul
   All the members in ParentConfig are static. Right now
   we will duplicate the code for these static functions.
 */
-
 struct SocksServerConfig
 {
-public:
   static void startup();
-
   static void reconfigure();
-  static ParentConfigParams *acquire();
-  static void release(ParentConfigParams * params);
   static void print();
 
+  static ParentConfigParams *acquire() { return (ParentConfigParams *) configProcessor.get(SocksServerConfig::m_id); }
+  static void release(ParentConfigParams *params) { configProcessor.release(SocksServerConfig::m_id, params); }
+
   static int m_id;
 };
 

Modified: trafficserver/traffic/trunk/proxy/config/parent.config
URL: http://svn.apache.org/viewvc/trafficserver/traffic/trunk/proxy/config/parent.config?rev=1076981&r1=1076980&r2=1076981&view=diff
==============================================================================
--- trafficserver/traffic/trunk/proxy/config/parent.config (original)
+++ trafficserver/traffic/trunk/proxy/config/parent.config Fri Mar  4 03:27:53 2011
@@ -28,10 +28,6 @@
 #     method=
 #     time=
 #     src_ip=
-#     tag=<tag_value>: this OPTIONAL directive specifies a unique identifier
-#           for the current record.  This is needed for MIXT, since we may want
-#           to select a parent record that is not necessarily the first one
-#           that matches.  Valid values for tag are 'RNI' and 'QT'. 
 #
 # Available parent directives are:
 #     parent=    (a semicolon separated list of parent proxies)