You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by ag...@apache.org on 2005/12/16 18:51:18 UTC

svn commit: r357196 - /incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java

Author: agilliland
Date: Fri Dec 16 09:51:12 2005
New Revision: 357196

URL: http://svn.apache.org/viewcvs?rev=357196&view=rev
Log:
updated 2.1 upgrade procedure.


Modified:
    incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java

Modified: incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java
URL: http://svn.apache.org/viewcvs/incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java?rev=357196&r1=357195&r2=357196&view=diff
==============================================================================
--- incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java (original)
+++ incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java Fri Dec 16 09:51:12 2005
@@ -258,10 +258,16 @@
             // this query will give us all websites that have modified their
             // default page to link to something other than "Weblog"
             PreparedStatement selectUpdateWeblogs = con.prepareStatement(
-                    "select website.id,template from website,webpage "+
+                    "select website.id,template,website.handle from website,webpage "+
                     "where webpage.id = website.defaultpageid "+
                     "and webpage.link != 'Weblog'");
             
+            PreparedStatement selectWeblogTemplate = con.prepareStatement(
+                    "select id from webpage where websiteid = ? and link = 'Weblog'");
+            
+            PreparedStatement updateWeblogTemplate = con.prepareStatement(
+                    "update webpage set template = ? where id = ?");
+            
             // insert a new template for a website
             PreparedStatement insertWeblogTemplate = con.prepareStatement(
                     "insert into webpage"+
@@ -279,21 +285,45 @@
             while (websiteSet.next()) {
                 String websiteid = websiteSet.getString(1);
                 String template = websiteSet.getString(2);
-                mLogger.info("Processing website: " + websiteid);
+                String handle = websiteSet.getString(3);
+                mLogger.info("Processing website: " + handle);
+                
+                String defaultpageid = null;
                 
-                // insert new Weblog template
-                insertWeblogTemplate.clearParameters();
-                insertWeblogTemplate.setString( 1, websiteid+"q");
-                insertWeblogTemplate.setString( 2, "Weblog");
-                insertWeblogTemplate.setString( 3, description);
-                insertWeblogTemplate.setString( 4, "Weblog");
-                insertWeblogTemplate.setString( 5, websiteid);
-                insertWeblogTemplate.setString( 6, template);
-                insertWeblogTemplate.executeUpdate();
+                // it's possible that this weblog has a "Weblog" template, but just
+                // isn't using it as their default.  if so we need to fix that.
+                selectWeblogTemplate.clearParameters();
+                selectWeblogTemplate.setString(1, websiteid);
+                ResultSet weblogPageSet = selectWeblogTemplate.executeQuery();
+                if(weblogPageSet.next()) {
+                    // this person already has a "Weblog" template, so update it
+                    String id = weblogPageSet.getString(1);
+                    
+                    updateWeblogTemplate.clearParameters();
+                    updateWeblogTemplate.setString(1, template);
+                    updateWeblogTemplate.setString(2, id);
+                    updateWeblogTemplate.executeUpdate();
+                    
+                    // make sure and adjust what default page id we want to use
+                    defaultpageid = id;
+                } else {
+                    // no "Weblog" template, so insert a new one
+                    insertWeblogTemplate.clearParameters();
+                    insertWeblogTemplate.setString( 1, websiteid+"q");
+                    insertWeblogTemplate.setString( 2, "Weblog");
+                    insertWeblogTemplate.setString( 3, description);
+                    insertWeblogTemplate.setString( 4, "Weblog");
+                    insertWeblogTemplate.setString( 5, websiteid);
+                    insertWeblogTemplate.setString( 6, template);
+                    insertWeblogTemplate.executeUpdate();
+                    
+                    // set the new default page id
+                    defaultpageid = websiteid+"q";
+                }
                 
                 // update defaultpageid value
                 updateDefaultPage.clearParameters();
-                updateDefaultPage.setString( 1, websiteid+"q");
+                updateDefaultPage.setString( 1, defaultpageid);
                 updateDefaultPage.setString( 2, websiteid);
                 updateDefaultPage.executeUpdate();
             }



Re: svn commit: r357196 - /incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java

Posted by Dave Johnson <da...@rollerweblogger.org>.
On Dec 16, 2005, at 6:46 PM, Allen Gilliland wrote:
> i'm not sure i understand.  how does this break our current convention?
> someone should still be able to go from 1.1 to 2.1 with what we have 
> now right?  not that i would really encourage that.

You are correct.

I just took another look at UpgadeDatabase and we're doing the right 
thing.

- Dave




Re: svn commit: r357196 - /incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java

Posted by Allen Gilliland <Al...@Sun.COM>.
i'm not sure i understand.  how does this break our current convention? 

someone should still be able to go from 1.1 to 2.1 with what we have now right?  not that i would really encourage that.

-- Allen


On Fri, 2005-12-16 at 12:32, Dave Johnson wrote:
> One thing we didn't discuss when we talked about version numbers and  
> major vs. minor upgrades is the requirement that Roller be started to  
> complete an upgrade.
> 
> If you're upgrading from version 1.1 to version 2.0 for example, you  
> don't want to have to start Roller after you run each upgrade script.   
> So, for 2.0, I hacked the 1.2, 1.3 and 2.0 scripts so that starting  
> Roller is not necessary until you reach 2.0.
> 
> I wonder if there's anyway we can do the same here. Doesn't look like  
> it.
> 
> - Dave
> 
> 
> 
> If you're upgrading from
> On Dec 16, 2005, at 12:51 PM, agilliland@apache.org wrote:
> 
> > Author: agilliland
> > Date: Fri Dec 16 09:51:12 2005
> > New Revision: 357196
> >
> > URL: http://svn.apache.org/viewcvs?rev=357196&view=rev
> > Log:
> > updated 2.1 upgrade procedure.
> >
> >
> > Modified:
> >      
> > incubator/roller/trunk/src/org/roller/business/utils/ 
> > UpgradeDatabase.java
> >
> > Modified:  
> > incubator/roller/trunk/src/org/roller/business/utils/ 
> > UpgradeDatabase.java
> > URL:  
> > http://svn.apache.org/viewcvs/incubator/roller/trunk/src/org/roller/
> > business/utils/UpgradeDatabase.java? 
> > rev=357196&r1=357195&r2=357196&view=diff
> > ======================================================================= 
> > =======
> > ---  
> > incubator/roller/trunk/src/org/roller/business/utils/ 
> > UpgradeDatabase.java (original)
> > +++  
> > incubator/roller/trunk/src/org/roller/business/utils/ 
> > UpgradeDatabase.java Fri Dec 16 09:51:12 2005
> > @@ -258,10 +258,16 @@
> >              // this query will give us all websites that have  
> > modified their
> >              // default page to link to something other than "Weblog"
> >              PreparedStatement selectUpdateWeblogs =  
> > con.prepareStatement(
> > -                    "select website.id,template from website,webpage  
> > "+
> > +                    "select website.id,template,website.handle from  
> > website,webpage "+
> >                      "where webpage.id = website.defaultpageid "+
> >                      "and webpage.link != 'Weblog'");
> >
> > +            PreparedStatement selectWeblogTemplate =  
> > con.prepareStatement(
> > +                    "select id from webpage where websiteid = ? and  
> > link = 'Weblog'");
> > +
> > +            PreparedStatement updateWeblogTemplate =  
> > con.prepareStatement(
> > +                    "update webpage set template = ? where id = ?");
> > +
> >              // insert a new template for a website
> >              PreparedStatement insertWeblogTemplate =  
> > con.prepareStatement(
> >                      "insert into webpage"+
> > @@ -279,21 +285,45 @@
> >              while (websiteSet.next()) {
> >                  String websiteid = websiteSet.getString(1);
> >                  String template = websiteSet.getString(2);
> > -                mLogger.info("Processing website: " + websiteid);
> > +                String handle = websiteSet.getString(3);
> > +                mLogger.info("Processing website: " + handle);
> > +
> > +                String defaultpageid = null;
> >
> > -                // insert new Weblog template
> > -                insertWeblogTemplate.clearParameters();
> > -                insertWeblogTemplate.setString( 1, websiteid+"q");
> > -                insertWeblogTemplate.setString( 2, "Weblog");
> > -                insertWeblogTemplate.setString( 3, description);
> > -                insertWeblogTemplate.setString( 4, "Weblog");
> > -                insertWeblogTemplate.setString( 5, websiteid);
> > -                insertWeblogTemplate.setString( 6, template);
> > -                insertWeblogTemplate.executeUpdate();
> > +                // it's possible that this weblog has a "Weblog"  
> > template, but just
> > +                // isn't using it as their default.  if so we need to  
> > fix that.
> > +                selectWeblogTemplate.clearParameters();
> > +                selectWeblogTemplate.setString(1, websiteid);
> > +                ResultSet weblogPageSet =  
> > selectWeblogTemplate.executeQuery();
> > +                if(weblogPageSet.next()) {
> > +                    // this person already has a "Weblog" template,  
> > so update it
> > +                    String id = weblogPageSet.getString(1);
> > +
> > +                    updateWeblogTemplate.clearParameters();
> > +                    updateWeblogTemplate.setString(1, template);
> > +                    updateWeblogTemplate.setString(2, id);
> > +                    updateWeblogTemplate.executeUpdate();
> > +
> > +                    // make sure and adjust what default page id we  
> > want to use
> > +                    defaultpageid = id;
> > +                } else {
> > +                    // no "Weblog" template, so insert a new one
> > +                    insertWeblogTemplate.clearParameters();
> > +                    insertWeblogTemplate.setString( 1, websiteid+"q");
> > +                    insertWeblogTemplate.setString( 2, "Weblog");
> > +                    insertWeblogTemplate.setString( 3, description);
> > +                    insertWeblogTemplate.setString( 4, "Weblog");
> > +                    insertWeblogTemplate.setString( 5, websiteid);
> > +                    insertWeblogTemplate.setString( 6, template);
> > +                    insertWeblogTemplate.executeUpdate();
> > +
> > +                    // set the new default page id
> > +                    defaultpageid = websiteid+"q";
> > +                }
> >
> >                  // update defaultpageid value
> >                  updateDefaultPage.clearParameters();
> > -                updateDefaultPage.setString( 1, websiteid+"q");
> > +                updateDefaultPage.setString( 1, defaultpageid);
> >                  updateDefaultPage.setString( 2, websiteid);
> >                  updateDefaultPage.executeUpdate();
> >              }
> >
> 


Re: svn commit: r357196 - /incubator/roller/trunk/src/org/roller/business/utils/UpgradeDatabase.java

Posted by Dave Johnson <da...@rollerweblogger.org>.
One thing we didn't discuss when we talked about version numbers and  
major vs. minor upgrades is the requirement that Roller be started to  
complete an upgrade.

If you're upgrading from version 1.1 to version 2.0 for example, you  
don't want to have to start Roller after you run each upgrade script.   
So, for 2.0, I hacked the 1.2, 1.3 and 2.0 scripts so that starting  
Roller is not necessary until you reach 2.0.

I wonder if there's anyway we can do the same here. Doesn't look like  
it.

- Dave



If you're upgrading from
On Dec 16, 2005, at 12:51 PM, agilliland@apache.org wrote:

> Author: agilliland
> Date: Fri Dec 16 09:51:12 2005
> New Revision: 357196
>
> URL: http://svn.apache.org/viewcvs?rev=357196&view=rev
> Log:
> updated 2.1 upgrade procedure.
>
>
> Modified:
>      
> incubator/roller/trunk/src/org/roller/business/utils/ 
> UpgradeDatabase.java
>
> Modified:  
> incubator/roller/trunk/src/org/roller/business/utils/ 
> UpgradeDatabase.java
> URL:  
> http://svn.apache.org/viewcvs/incubator/roller/trunk/src/org/roller/ 
> business/utils/UpgradeDatabase.java? 
> rev=357196&r1=357195&r2=357196&view=diff
> ======================================================================= 
> =======
> ---  
> incubator/roller/trunk/src/org/roller/business/utils/ 
> UpgradeDatabase.java (original)
> +++  
> incubator/roller/trunk/src/org/roller/business/utils/ 
> UpgradeDatabase.java Fri Dec 16 09:51:12 2005
> @@ -258,10 +258,16 @@
>              // this query will give us all websites that have  
> modified their
>              // default page to link to something other than "Weblog"
>              PreparedStatement selectUpdateWeblogs =  
> con.prepareStatement(
> -                    "select website.id,template from website,webpage  
> "+
> +                    "select website.id,template,website.handle from  
> website,webpage "+
>                      "where webpage.id = website.defaultpageid "+
>                      "and webpage.link != 'Weblog'");
>
> +            PreparedStatement selectWeblogTemplate =  
> con.prepareStatement(
> +                    "select id from webpage where websiteid = ? and  
> link = 'Weblog'");
> +
> +            PreparedStatement updateWeblogTemplate =  
> con.prepareStatement(
> +                    "update webpage set template = ? where id = ?");
> +
>              // insert a new template for a website
>              PreparedStatement insertWeblogTemplate =  
> con.prepareStatement(
>                      "insert into webpage"+
> @@ -279,21 +285,45 @@
>              while (websiteSet.next()) {
>                  String websiteid = websiteSet.getString(1);
>                  String template = websiteSet.getString(2);
> -                mLogger.info("Processing website: " + websiteid);
> +                String handle = websiteSet.getString(3);
> +                mLogger.info("Processing website: " + handle);
> +
> +                String defaultpageid = null;
>
> -                // insert new Weblog template
> -                insertWeblogTemplate.clearParameters();
> -                insertWeblogTemplate.setString( 1, websiteid+"q");
> -                insertWeblogTemplate.setString( 2, "Weblog");
> -                insertWeblogTemplate.setString( 3, description);
> -                insertWeblogTemplate.setString( 4, "Weblog");
> -                insertWeblogTemplate.setString( 5, websiteid);
> -                insertWeblogTemplate.setString( 6, template);
> -                insertWeblogTemplate.executeUpdate();
> +                // it's possible that this weblog has a "Weblog"  
> template, but just
> +                // isn't using it as their default.  if so we need to  
> fix that.
> +                selectWeblogTemplate.clearParameters();
> +                selectWeblogTemplate.setString(1, websiteid);
> +                ResultSet weblogPageSet =  
> selectWeblogTemplate.executeQuery();
> +                if(weblogPageSet.next()) {
> +                    // this person already has a "Weblog" template,  
> so update it
> +                    String id = weblogPageSet.getString(1);
> +
> +                    updateWeblogTemplate.clearParameters();
> +                    updateWeblogTemplate.setString(1, template);
> +                    updateWeblogTemplate.setString(2, id);
> +                    updateWeblogTemplate.executeUpdate();
> +
> +                    // make sure and adjust what default page id we  
> want to use
> +                    defaultpageid = id;
> +                } else {
> +                    // no "Weblog" template, so insert a new one
> +                    insertWeblogTemplate.clearParameters();
> +                    insertWeblogTemplate.setString( 1, websiteid+"q");
> +                    insertWeblogTemplate.setString( 2, "Weblog");
> +                    insertWeblogTemplate.setString( 3, description);
> +                    insertWeblogTemplate.setString( 4, "Weblog");
> +                    insertWeblogTemplate.setString( 5, websiteid);
> +                    insertWeblogTemplate.setString( 6, template);
> +                    insertWeblogTemplate.executeUpdate();
> +
> +                    // set the new default page id
> +                    defaultpageid = websiteid+"q";
> +                }
>
>                  // update defaultpageid value
>                  updateDefaultPage.clearParameters();
> -                updateDefaultPage.setString( 1, websiteid+"q");
> +                updateDefaultPage.setString( 1, defaultpageid);
>                  updateDefaultPage.setString( 2, websiteid);
>                  updateDefaultPage.executeUpdate();
>              }
>