HCE Project Python language Distributed Tasks Manager Application, Distributed Crawler Application and client API bindings.  2.0.0-chaika
Hierarchical Cluster Engine Python language binding
dc_db.FieldRecalculator.FieldRecalculator Class Reference
Inheritance diagram for dc_db.FieldRecalculator.FieldRecalculator:
Collaboration diagram for dc_db.FieldRecalculator.FieldRecalculator:

Public Member Functions

def __init__ (self)
 
def commonSiteRecalculate (self, defaultCritName, fieldName, siteId, queryCallback)
 
def siteResourcesRecalculate (self, siteId, queryCallback)
 
def siteContentsRecalculate (self, siteId, queryCallback)
 
def updateCollectedURLs (self, siteId, queryCallback)
 
def updateNewURLs (self, siteId, queryCallback)
 
def updateErrors (self, siteId, queryCallback)
 
def updateDeletedURLs (self, siteId, queryCallback)
 
def commonRecalc (self, siteId, queryCallback, recalcType=dc.EventObjects.FieldRecalculatorObj.FULL_RECALC)
 
def updateSiteCleanupFields (self, siteId, queryCallback)
 

Detailed Description

Definition at line 19 of file FieldRecalculator.py.

Constructor & Destructor Documentation

◆ __init__()

def dc_db.FieldRecalculator.FieldRecalculator.__init__ (   self)

Definition at line 21 of file FieldRecalculator.py.

21  def __init__(self):
22  pass
23 
24 
def __init__(self)
constructor
Definition: UIDGenerator.py:19

Member Function Documentation

◆ commonRecalc()

def dc_db.FieldRecalculator.FieldRecalculator.commonRecalc (   self,
  siteId,
  queryCallback,
  recalcType = dc.EventObjects.FieldRecalculatorObj.FULL_RECALC 
)

Definition at line 111 of file FieldRecalculator.py.

111  def commonRecalc(self, siteId, queryCallback, recalcType=dc.EventObjects.FieldRecalculatorObj.FULL_RECALC):
112  self.siteResourcesRecalculate(siteId, queryCallback)
113  self.siteContentsRecalculate(siteId, queryCallback)
114  if recalcType == dc.EventObjects.FieldRecalculatorObj.FULL_RECALC:
115  self.updateCollectedURLs(siteId, queryCallback)
116  self.updateNewURLs(siteId, queryCallback)
117  self.updateDeletedURLs(siteId, queryCallback)
118  self.updateSiteCleanupFields(siteId, queryCallback)
119 
120 
Here is the call graph for this function:

◆ commonSiteRecalculate()

def dc_db.FieldRecalculator.FieldRecalculator.commonSiteRecalculate (   self,
  defaultCritName,
  fieldName,
  siteId,
  queryCallback 
)

Definition at line 31 of file FieldRecalculator.py.

31  def commonSiteRecalculate(self, defaultCritName, fieldName, siteId, queryCallback):
32  UPDATE_SQL_TEMPLATE = "UPDATE `sites` SET `%s`=(SELECT COUNT(*) FROM dc_urls.%s %s) WHERE `id` = '%s'"
33  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % siteId
34  criterionsString = DefCriterions.getDefaultCriterions(defaultCritName, siteId, queryCallback)
35  query = UPDATE_SQL_TEMPLATE % (fieldName, tableName, criterionsString, siteId)
36  queryCallback(query, Constants.PRIMARY_DB_ID)
37 
Here is the caller graph for this function:

◆ siteContentsRecalculate()

def dc_db.FieldRecalculator.FieldRecalculator.siteContentsRecalculate (   self,
  siteId,
  queryCallback 
)

Definition at line 48 of file FieldRecalculator.py.

48  def siteContentsRecalculate(self, siteId, queryCallback):
49  # self.commonSiteRecalculate(queryCallback, "State=7 AND Crawled>0 AND Processed>0", "Contents", siteId)
50  self.commonSiteRecalculate(DefCriterions.CRIT_CONTENTS, "Contents", siteId, queryCallback)
51 
52 
Here is the call graph for this function:
Here is the caller graph for this function:

◆ siteResourcesRecalculate()

def dc_db.FieldRecalculator.FieldRecalculator.siteResourcesRecalculate (   self,
  siteId,
  queryCallback 
)

Definition at line 40 of file FieldRecalculator.py.

40  def siteResourcesRecalculate(self, siteId, queryCallback):
41  # self.commonSiteRecalculate(queryCallback, "State>3 AND Crawled>0", "Resources", siteId)
42  # self.commonSiteRecalculate("Crawled>0 AND Size>0", "Resources", siteId, queryCallback)
43  self.commonSiteRecalculate(DefCriterions.CRIT_RESOURCES, "Resources", siteId, queryCallback)
44 
45 
Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateCollectedURLs()

def dc_db.FieldRecalculator.FieldRecalculator.updateCollectedURLs (   self,
  siteId,
  queryCallback 
)

Definition at line 57 of file FieldRecalculator.py.

57  def updateCollectedURLs(self, siteId, queryCallback):
58  QUERY_TEMPLATE = "UPDATE `sites` SET `CollectedURLs`=(SELECT count(*) FROM dc_urls.%s %s) WHERE `Id`='%s'"
59  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % siteId
60  criterionsString = DefCriterions.getDefaultCriterions(DefCriterions.CRIT_CLURLS, siteId, queryCallback)
61  query = QUERY_TEMPLATE % (tableName, criterionsString, siteId)
62  queryCallback(query, Constants.PRIMARY_DB_ID)
63 
64 
Here is the caller graph for this function:

◆ updateDeletedURLs()

def dc_db.FieldRecalculator.FieldRecalculator.updateDeletedURLs (   self,
  siteId,
  queryCallback 
)

Definition at line 93 of file FieldRecalculator.py.

93  def updateDeletedURLs(self, siteId, queryCallback):
94  QUERY_TEMPLATE_SELECT = "SELECT count(*) FROM %s %s"
95  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % siteId
96  criterionsString = DefCriterions.getDefaultCriterions(DefCriterions.CRIT_DURLS, siteId, queryCallback)
97  query = QUERY_TEMPLATE_SELECT % (tableName, criterionsString)
98  res = queryCallback(query, Constants.FOURTH_DB_ID, Constants.EXEC_INDEX, True)
99  if res is not None and len(res) > 0 and len(res[0]) > 0:
100  count = res[0][0]
101  QUERY_TEMPLATE_UPDATE = "UPDATE `sites` SET `DeletedURLs`=%s WHERE `Id`='%s'"
102  query = QUERY_TEMPLATE_UPDATE % (str(count), siteId)
103  queryCallback(query, Constants.PRIMARY_DB_ID)
104 
105 
Here is the caller graph for this function:

◆ updateErrors()

def dc_db.FieldRecalculator.FieldRecalculator.updateErrors (   self,
  siteId,
  queryCallback 
)

Definition at line 81 of file FieldRecalculator.py.

81  def updateErrors(self, siteId, queryCallback):
82  QUERY_TEMPLATE = "UPDATE `sites` SET `Errors`=(SELECT count(*) FROM dc_urls.%s %s) WHERE `Id`='%s'"
83  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % siteId
84  criterionsString = DefCriterions.getDefaultCriterions(DefCriterions.CRIT_ERRORS, siteId, queryCallback)
85  query = QUERY_TEMPLATE % (tableName, criterionsString, siteId)
86  queryCallback(query, Constants.PRIMARY_DB_ID)
87 
88 

◆ updateNewURLs()

def dc_db.FieldRecalculator.FieldRecalculator.updateNewURLs (   self,
  siteId,
  queryCallback 
)

Definition at line 69 of file FieldRecalculator.py.

69  def updateNewURLs(self, siteId, queryCallback):
70  QUERY_TEMPLATE = "UPDATE `sites` SET `NewURLs`=(SELECT count(*) FROM dc_urls.%s %s) WHERE `Id`='%s'"
71  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % siteId
72  criterionsString = DefCriterions.getDefaultCriterions(DefCriterions.CRIT_NURLS, siteId, queryCallback)
73  query = QUERY_TEMPLATE % (tableName, criterionsString, siteId)
74  queryCallback(query, Constants.PRIMARY_DB_ID)
75 
76 
Here is the caller graph for this function:

◆ updateSiteCleanupFields()

def dc_db.FieldRecalculator.FieldRecalculator.updateSiteCleanupFields (   self,
  siteId,
  queryCallback 
)

Definition at line 125 of file FieldRecalculator.py.

125  def updateSiteCleanupFields(self, siteId, queryCallback):
126  QUERY_TEMPLATE = "UPDATE `sites` SET `Size`=%s, `Errors`=%s, `ErrorMask`=%s, `AVGSpeed`=%s WHERE `Id`='%s'"
127  tableName = Constants.DC_URLS_TABLE_NAME_TEMPLATE % siteId
128  localSize = "`Size`"
129  localErrors = "`Errors`"
130  localErrorMask = "`ErrorMask`"
131  localSpeed = "`AVGSpeed`"
132  TMP_QUERY_TEMPLATE = "SELECT SUM(`Size`) FROM %s WHERE " + DefCriterions.CRIT_CRAWLED_THIS_NODE
133  query = TMP_QUERY_TEMPLATE % tableName
134  res = queryCallback(query, Constants.SECONDARY_DB_ID)
135  if res is not None and len(res) > 0 and res[0] is not None and len(res[0]) > 0 and res[0][0] is not None:
136  localSize = str(res[0][0])
137  TMP_QUERY_TEMPLATE = "SELECT COUNT(*) FROM %s WHERE `errorMask` > 0 AND " + DefCriterions.CRIT_CRAWLED_THIS_NODE
138  query = TMP_QUERY_TEMPLATE % tableName
139  res = queryCallback(query, Constants.SECONDARY_DB_ID)
140  if res is not None and len(res) > 0 and res[0] is not None and len(res[0]) > 0 and res[0][0] is not None:
141  localErrors = str(res[0][0])
142  TMP_QUERY_TEMPLATE = "SELECT BIT_OR(`errorMask`) FROM %s WHERE " + DefCriterions.CRIT_CRAWLED_THIS_NODE
143  query = TMP_QUERY_TEMPLATE % tableName
144  res = queryCallback(query, Constants.SECONDARY_DB_ID)
145  if res is not None and len(res) > 0 and res[0] is not None and len(res[0]) > 0 and res[0][0] is not None:
146  localErrorMask = str(res[0][0])
147  TMP_QUERY_TEMPLATE = "SELECT AVG(`size`/`crawlingTime`*1000) FROM %s WHERE `crawlingTime` > 0 AND " + \
148  DefCriterions.CRIT_CRAWLED_THIS_NODE
149  query = TMP_QUERY_TEMPLATE % tableName
150  res = queryCallback(query, Constants.SECONDARY_DB_ID)
151  if res is not None and len(res) > 0 and res[0] is not None and len(res[0]) > 0 and res[0][0] is not None:
152  localSpeed = str(res[0][0])
153  query = QUERY_TEMPLATE % (localSize, localErrors, localErrorMask, localSpeed, siteId)
154  queryCallback(query, Constants.PRIMARY_DB_ID)
155 
Here is the caller graph for this function:

The documentation for this class was generated from the following file: