<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en_US" lang="en_US"> <head> <title> DbRevisionHandling < Gnumed < Foswiki</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <meta name="robots" content="noindex" /> <link rel="alternate" type="application/rss+xml" title="RSS Feed" href="WebRss.html" /> <link rel="icon" href="../rsrc/System/ProjectLogos/favicon.ico" type="image/x-icon" /> <link rel="shortcut icon" href="../rsrc/System/ProjectLogos/favicon.ico" type="image/x-icon" /> <link rel="alternate" href="http://wiki.gnumed.de/bin/edit/Gnumed/DbRevisionHandling?t=1362919413" type="application/x-wiki" title="edit DbRevisionHandling" /> <meta name="description" content="DbRevisionHandling" /> <!--[if IE]></base><![endif]--> <style type="text/css" media="all"> @import url('../rsrc/System/SkinTemplates/base.css'); </style> <style type="text/css" media="all"> @import url('../rsrc/System/SkinTemplates/default.css'); </style> <!--[if IE]><style type="text/css" media="screen"> pre { overflow-x:auto; padding-bottom:expression(this.scrollWidth > this.offsetWidth ? 16 : 0); } </style> <![endif]--> <meta name="foswiki.PUBURL" content="http://wiki.gnumed.de/pub" /> <!-- PUBURL --> <meta name="foswiki.PUBURLPATH" content="/pub" /> <!-- PUBURLPATH --> <meta name="foswiki.SCRIPTSUFFIX" content="" /> <!-- SCRIPTSUFFIX --> <meta name="foswiki.SCRIPTURL" content="http://wiki.gnumed.de/bin" /> <!-- SCRIPTURL --> <meta name="foswiki.SCRIPTURLPATH" content="/bin" /> <!-- SCRIPTURLPATH --> <meta name="foswiki.SERVERTIME" content="10%20Mar%202013%20-%2013:43" /> <!-- SERVERTIME --> <meta name="foswiki.SKIN" content="twikinet%2c%20pattern" /> <!-- SKIN --> <meta name="foswiki.SYSTEMWEB" content="System" /> <!-- SYSTEMWEB --> <meta name="foswiki.TOPIC" content="DbRevisionHandling" /> <!-- TOPIC --> <meta name="foswiki.USERNAME" content="KarstenHilbert" /> <!-- USERNAME --> <meta name="foswiki.USERSWEB" content="Main" /> <!-- USERSWEB --> <meta name="foswiki.WEB" content="Gnumed" /> <!-- WEB --> <meta name="foswiki.WIKINAME" content="KarstenHilbert" /> <!-- WIKINAME --> <meta name="foswiki.WIKIUSERNAME" content="Main.KarstenHilbert" /> <!-- WIKIUSERNAME --> <meta name="foswiki.NAMEFILTER" content="%5b%5cs%5c*%3f~%5e%5c%24%40%25%60%22'%26%3b%7c%3c%3e%5c%5b%5c%5d%23%5cx00-%5cx1f%5d" /> <!-- NAMEFILTER --><!--JQUERYPLUGIN::FOSWIKI::META--> <script type='text/javascript' src='../rsrc/System/JQueryPlugin/jquery-1.4.3.js'></script><!--JQUERYPLUGIN--> <script type='text/javascript' src='../rsrc/System/JQueryPlugin/plugins/livequery/jquery.livequery.js'></script><!--JQUERYPLUGIN::LIVEQUERY--> <script type='text/javascript' src='../rsrc/System/JQueryPlugin/plugins/foswiki/jquery.foswiki.js'></script><!--JQUERYPLUGIN::FOSWIKI--> <script type='text/javascript' src='../rsrc/System/JSTreeContrib/jquery.jstree.js'></script><!--JQUERYPLUGIN::JSTREE--> </head> <body class=""><div class="foswikiPage"> <a name="PageTop"></a> <p></p> <p></p> <h1><a name="Database_Revision_Handling"></a> Database Revision Handling </h1> <p></p> <ul> <li> database revisions change with major releases only </li> <li> minor (bugfix) releases never require a database change </li> <li> if a change in a released database becomes necessary a fixup SQL script will be released </li> <li> database upgrades are handled by means of SQL change scripts which are under CVS control </li> <li> successfull application of change scripts is logged in a table </li> <li> the schema is verified before and after upgrading </li> <li> plausibility checks which compare data before and after an upgrade are applied </li></ul> <p></p> <ul> <li> clients require a particular schema version to work with </li> <li> at startup the client verifies the schema and fails to connect if the database does not match </li> <li> mapping client version to database version is done in <code>gmPG2.py</code> </li></ul> <a name="TopicEnd"></a> <p></p> <p></p> <p></p> <p></p> </div> </body></html>