roller-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matt Raible <m...@raibledesigns.com>
Subject Re: More issues with 5.0 RC4
Date Thu, 28 Apr 2011 17:45:48 GMT
On Wed, Apr 27, 2011 at 11:22 AM, Matt Raible <matt@raibledesigns.com>wrote:

>
>
> On Wed, Apr 27, 2011 at 6:39 AM, Matt Raible <matt@raibledesigns.com>wrote:
>
>>
>> On Apr 26, 2011, at 7:44 PM, Dave wrote:
>>
>> > On Tue, Apr 26, 2011 at 2:23 PM, Matt Raible <matt@raibledesigns.com>
>> wrote:
>> >> On Apr 26, 2011, at 12:20 PM, Dave wrote:
>> >>> On Tue, Apr 26, 2011 at 11:14 AM, Matt Raible <matt@raibledesigns.com>
>> 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. ;-)
>
>
I commented out line 141 and was able to get past this. To delete records
older than 3/2/2011, I used the following queries:

delete from weblogentry where pubtime < 2011-03-03;
delete from roller_comment where posttime < 2011-03-03;

Then I attempted to import comments and weblogentries, but received the
following errors. I'm kinda stuck. Do I need to turn off auto-incrementing
on insert? If I search the file before importing, there is no key with the
value below and if I search the db, it doesn't exist until after the failure
below.

mraible:Desktop mraible$ mysql -u root -p roller5 < roller_comment_dump.sql
Enter password:
ERROR 1062 (23000) at line 12: Duplicate entry
'92fe6c8d-fb11-4c32-ba88-d2da36789c43' for key 'PRIMARY'

mraible:Desktop mraible$ mysql -u root -p roller5 < weblogentry_dump.sql
Enter password:
ERROR 1062 (23000) at line 6: Duplicate entry '' for key 'PRIMARY'

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message