From: <jb...@us...> - 2010-01-17 02:54:03
|
Revision: 482 http://pytrainer.svn.sourceforge.net/pytrainer/?rev=482&view=rev Author: jblance Date: 2010-01-17 02:53:53 +0000 (Sun, 17 Jan 2010) Log Message: ----------- Sanitycheck writes DB version after run, disable legacy migration code Modified Paths: -------------- pytrainer/trunk/pytrainer/lib/ddbb.py pytrainer/trunk/pytrainer/main.py pytrainer/trunk/pytrainer/profile.py Modified: pytrainer/trunk/pytrainer/lib/ddbb.py =================================================================== --- pytrainer/trunk/pytrainer/lib/ddbb.py 2010-01-17 00:50:25 UTC (rev 481) +++ pytrainer/trunk/pytrainer/lib/ddbb.py 2010-01-17 02:53:53 UTC (rev 482) @@ -75,7 +75,7 @@ def update(self,table,cells,value,condition): self.ddbbObject.update(table,cells,value,condition) - def lastRecord(self,table): + def lastRecord(self,table): #TODO Make generic i.e. something like id = "id_" + table[:-1] if table=="records": id = "id_record" if table=="sports": @@ -86,18 +86,21 @@ ret_val = self.ddbbObject.freeExec(sql) return ret_val[0][0] - def addTitle2ddbb(self): - #this function add a title column in + #TODO Remove extra check functions below + #TODO Add functions to check that fill in date_time_local and update date etc + + #def addTitle2ddbb(self): + '''#this function add a title column in #the record ddbb. New in 0.9.9 version sql = "alter table records add title varchar(200)" try: self.ddbbObject.freeExec(sql) except: logging.error('Column title already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' - def addUnevenness2ddbb(self): - #this function add accumulated unevennes columns in + #def addUnevenness2ddbb(self): + '''#this function add accumulated unevennes columns in #the record ddbb. New in 1.3.2 version sql = "alter table records add upositive float" try: @@ -110,28 +113,28 @@ self.ddbbObject.freeExec(sql) except: logging.error('Column unegative already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' - def addWaypoints2ddbb(self): - #adds waipoints table to database + #def addWaypoints2ddbb(self): + '''#adds waipoints table to database try: self.ddbbObject.addWaipoints2ddbb() except: logging.error('Waypoints table already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' - def updatemonth(self): - #this is a function to repair a bug from + #def updatemonth(self): + '''#this is a function to repair a bug from #pytrainer 0.9.5 and previus listOfRecords = self.ddbbObject.select("records","id_record,date", None) for record in listOfRecords: rec = record[1].split("-") newmonth = int(rec[1])+1 newdate = "%s-%d-%s" %(rec[0],newmonth,rec[2]) - self.ddbbObject.update("records","date",[newdate], "id_record = %d" %record[0]) + self.ddbbObject.update("records","date",[newdate], "id_record = %d" %record[0])''' - def updateDateFormat(self): - #this is a function to repair a bug from + #def updateDateFormat(self): + '''#this is a function to repair a bug from #pytrainer 0.9.8 and previus listOfRecords = self.ddbbObject.select("records","id_record,date", None) for record in listOfRecords: @@ -140,10 +143,10 @@ newdate = "%0.4d-%0.2d-%0.2d" %(int(rec[0]),int(rec[1]),int(rec[2])) self.ddbbObject.update("records","date",[newdate], "id_record = %d" %record[0]) except: - print record + print record''' - def addweightandmet2ddbb(self): - #this function add weight extra and met fields to sports table + #def addweightandmet2ddbb(self): + '''#this function add weight extra and met fields to sports table sql = "alter table sports add weight float" try: self.ddbbObject.freeExec(sql) @@ -155,18 +158,18 @@ self.ddbbObject.freeExec(sql) except: logging.error('Column met already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' - def checkmettable(self): - sql = "alter table sports add met float" + #def checkmettable(self): + '''sql = "alter table sports add met float" try: self.ddbbObject.freeExec(sql) except: logging.error('Column met already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' - def addpaceandmax2ddbb(self): - sql = "alter table records add maxspeed float" + #def addpaceandmax2ddbb(self): + '''sql = "alter table records add maxspeed float" try: self.ddbbObject.freeExec(sql) except: @@ -189,15 +192,15 @@ self.ddbbObject.freeExec(sql) except: logging.error('Column maxbeats already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' - def addDateTimeUTC2ddbb(self): - sql = "alter table records add date_time_utc varchar2(20)" + #def addDateTimeUTC2ddbb(self): + '''sql = "alter table records add date_time_utc varchar2(20)" try: self.ddbbObject.freeExec(sql) except: logging.error('Column date_time_utc already exists in DB. Printing traceback and continuing') - traceback.print_exc() + traceback.print_exc()''' def shortFromLocal(self, getSport=True): # Check LEFT and RIGHT JOINS for people with multiple sports if getSport is True: Modified: pytrainer/trunk/pytrainer/main.py =================================================================== --- pytrainer/trunk/pytrainer/main.py 2010-01-17 00:50:25 UTC (rev 481) +++ pytrainer/trunk/pytrainer/main.py 2010-01-17 02:53:53 UTC (rev 482) @@ -130,18 +130,19 @@ self.ddbb = DDBB(self.configuration) logging.debug('connecting to DDBB') self.ddbb.connect() - - # DB check can be triggered either via new version (mandatory) or as runtime parameter (--check) + + #Get user's DB version currentDB_version = self.configuration.getValue("pytraining","DB_version") logging.debug("Current DB version: "+str(currentDB_version)) - - if currentDB_version is None or self.check: - self.sanityCheck() # Deprecates migrationCheck. Review first installation and version control + # DB check can be triggered either via new version (mandatory) or as runtime parameter (--check) + if self.check: # User requested check + self.sanityCheck() + elif currentDB_version is None: # No stored DB version - check DB etc + self.sanityCheck() + elif self.DB_version > int(currentDB_version): # DB version expected is newer than user's version - check DB etc + self.sanityCheck() else: - if self.DB_version > int(currentDB_version): - self.sanityCheck() # Deprecates migrationCheck. Review first installation and version control - else: - logging.info('No sanity check requested') + logging.info('No sanity check requested') self.record = Record(data_path,self) @@ -452,7 +453,7 @@ def sanityCheck(self): """23.11.2009 - dgranda - Checks database and configuration file if flag "--check" is enabled at start + Checks database and configuration file args: none returns: none""" logging.debug('>>') @@ -460,14 +461,16 @@ self.ddbb.checkDBIntegrity() logging.info('Checking configuration file integrity') self.profile.checkProfile() + logging.info('Setting DB version to: ' + str(self.DB_version)) + self.configuration.setValue("pytraining","DB_version", str(self.DB_version)) logging.debug('<<') - def addDateTimeUTC(self): + #def addDateTimeUTC(self): """12.07.2008 - dgranda Adds date_time (UTC format) for each record (new column date_time_utc in table records). New in version 1.6.0.1 args: none returns: none""" - logging.debug('>>') + '''logging.debug('>>') # Retrieves info from all GPX files stored locally listTracksGPX = self.record.shortFromLocal() logging.debug('Retrieved info from local files: '+ str(listTracksGPX)) @@ -489,14 +492,14 @@ logging.error('Error when updating data for track '+ track[2]) traceback.print_exc() logging.info('Updated '+str(num)+' entries') - logging.debug('<<') + logging.debug('<<')''' - def checkPacesDB(self): + #def checkPacesDB(self): """19.07.2008 - dgranda Updates paces in DB (maxspeed<->maxpace | average<->pace). New in version 1.6.0.2 args: none returns: none""" - logging.debug('>>') + '''logging.debug('>>') # Retrieves info from DB: id_record,maxspeed,maxpace,average,pace listPaces = self.ddbb.select("records", "id_record,maxspeed,maxpace,average,pace") logging.debug('Retrieved info from db: '+ str(listPaces)) @@ -514,4 +517,4 @@ else: logging.error('No pace info available for entry '+str(entry[0])+' in DB. Please check') logging.info('Updated '+str(num)+' entries') - logging.debug('<<') + logging.debug('<<')''' Modified: pytrainer/trunk/pytrainer/profile.py =================================================================== --- pytrainer/trunk/pytrainer/profile.py 2010-01-17 00:50:25 UTC (rev 481) +++ pytrainer/trunk/pytrainer/profile.py 2010-01-17 02:53:53 UTC (rev 482) @@ -108,7 +108,7 @@ ("prf_ddbbuser",""), ("prf_ddbbpass",""), ("prf_us_system","False"), - ("DB_version","1")] + ("DB_version","0")] defaultListKeys = [] for entry in defaultList: defaultListKeys.append(unicode(entry[0])) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |