Exemplo n.º 1
0
	def insertWords(self, dates, values):
		assert len(dates) == len(values)
		assert self.wordSeriesID is not None

		minDate = maxint
		maxDate = -maxint - 1

		successfulInserts = 0
		unsuccessfulInserts = 0

		for i in range(values):
			minDate = min(minDate, dates[i])
			maxDate = max(maxDate, dates[i])

			(success, error) = EM_DBHelp.insertDataPoint_WordHistoryTable(	self.db_conn, self.db_curs, 
																			self.wordSeriesID, 
																			dates[i], 
																			values[i])
			if not success:
				log.warning('Failed to Write Historical Word at %s for %s [value = %f]', wordTicker, date, value)
				unsuccessfulInserts += 1
			else:
				successfulInserts +=1
	
		log.debug('%d Historical Words Written Successfuly for %s', successfulInserts, wordTicker)
		log.debug('%d Historical Words Writing Failed for %s', unsuccessfulInserts, wordTicker)
		log.debug('Date range from %s to %s Written for %s', EM_util.dtConvert_EpochtoY_M_D(minDate), EM_util.dtConvert_EpochtoY_M_D(maxDate), wordTicker)

		self.__sendToDB('int_unsuccessful_generations', unsuccessfulInserts)
		self.__sendToDB('dt_earliest_word', minDate)
		self.__sendToDB('dt_latest_word', maxDate)
		self.__sendToDB('dt_last_generated', EM_util.dtGetNowAsEpoch())