On Wed, Apr 27, 2011 at 6:39 AM, Matt Raible <[email protected]> wrote:
> > On Apr 26, 2011, at 7:44 PM, Dave wrote: > > > On Tue, Apr 26, 2011 at 2:23 PM, Matt Raible <[email protected]> > wrote: > >> On Apr 26, 2011, at 12:20 PM, Dave wrote: > >>> On Tue, Apr 26, 2011 at 11:14 AM, Matt Raible <[email protected]> > wrote: > >>>> This morning I discovered a couple new issues with my 5.0 RC4 install. > >>>> 1) My tag cloud isn't working on my site. When I hit the following > link, I don't get any errors in my log, but it results in a 404. Any ideas? > >>>> http://raibledesigns.com/rd/tags/appfuse > >> > >>> That probably means that you don't have a tag index page in your side, > >>> or something the page you do have became "unmarked" as a tags index > >>> page. If that's the case, it would be very nice to know why that > >>> happened so we can fix it before release. > >> > >> Is this a servlet that should be in web.xml? > > > > No. In a custom theme, there are four types of template actions that > > you can create (weblog, permalink, search, tagsIndex and custom). For > > the "/blog/tags/tag" form of URL, then you need one template that is > > the tagIndex template. > > > > Unfortunately, Roller does not display the name of a template's action > > anywhere so it is hard to tell which templates are which actions. > > Please check the "webpage" table and see if you have a template with > > action of "tagsIndex." > > > > > >>>> 2) It looks like some of my blog entries are truncated. For example: > >>>> http://raibledesigns.com/rd/entry/2010_a_year_in_review > >>>> > >>>> Is there something in the import script that might've truncated my > entries when I re-imported all of them? > >>> > >>> Which import script are you talking about? I was not aware (or forgot) > >>> that we have an importer in Roller. > >> > >> I'm talking about the db upgrade script. I had issues upgrading my > database (MySQL 3.x) and ended up changing to a 5.x database. However, it > looks like something got lost when I imported my 3.x database into 5, so I'm > wondering if there's a length on the weblogentry.text field that might've > chopped off content. Or maybe mysqldump did it when exporting. I'm not sure. > I'm working with my hosting provider to try and see if there's a MySQL Diff > tool I can use to see what entries need refreshing from my old database. > > > > That is scary. There is no limit on the blog entry content field size, > > we declare it as type "text" which is an unlimited CLOB type. I guess > > it is possible that something went wrong with MySQL dump or import > > commands, but I'd expect those tools to be pretty rock solid by none. > > I hope have the dump files that you exported. > > My hosting provider guy looked into it and it seems like the problem is the > charset. My old MySQL 3.x database used latin1 while my MySQL 5.x database > uses UTF-8. > > http://en.gentoo-wiki.com/wiki/Convert_latin1_to_UTF-8_in_MySQL > > The symptom certainly looks familiar: > "Be careful when switching to UTF-8. Once you have converted your data, > any program/webapp that uses the database will have to check that the data > they are sending to the database is valid UTF-8. If it isn't then MySQL > will silently truncate the data after the invalid part, which can cause > all sorts of problems." > > Did anything change structurally b/w Roller 4 and 5 as far as the > weblogentry and roller_comments tables go? I think those are the only tables > where things got messed up. I think I can convert, delete and then > re-import. Do you see any issues with that? > > I'm attempting to do this locally. Here's my strategy: 1. Take my 20110302.sql dump and convert it so it works with MySQL 5. This involves changing TYPE=MyISAM to ENGINE=MyISAM and then using the "convert dump" section from http://en.gentoo-wiki.com/wiki/Convert_latin1_to_UTF-8_in_MySQL. 2. Create a new 5.x database with UTF-8: CREATE DATABASE roller CHARACTER SET utf8 COLLATE utf8_general_ci; 3. Import 20110302.sql. 4. Upgrade from Roller 4 to Roller 5 using WEB-INF/classes/dbscripts/mysql/400-to-500-migration.sql 5. mysqldump all rows in roller_comment and weblogentry tables that are older than 3/2/2011. 6. In production, delete all records in roller_comment and weblogentry that are older than 3/2/2011. 7. Insert weblogentry and roller_comment rows from mysqldump. I believe this will work. However, it looks like things fail on Step 4: $ mysql -u root -p roller < 400-to-500-migration.sql Enter password: ERROR 1005 (HY000) at line 141: Can't create table 'roller.#sql-d9_d' (errno: 150) Line 141 is: alter table roller_mediafiledir add constraint mf_websiteid_fk foreign key ( websiteid ) references website( id ) ; Any ideas? The only thing I can think of is my 20110302.sql file has some partially-created relationships from a Roller upgrade attempt. I'd like to think it doesn't though. ;-) Thanks, Matt
