When metadata creator is empty
Posted on 2008-05-23 16:49:48 EEST.
Quite major bug has been found today. 1.8.7 Midgard release doesn't populate metadata_creator guid. Midgard news page has a note about this.
I wrote additional script which should help with database upgrade if needed:
#!/bin/sh
DB="midgard"
MYSQLCMD="/usr/bin/mysql"
THEADER="Tables_in_${DB}"
MIDGARD_TABLES=`$MYSQLCMD -D $DB -e 'show tables' | grep -Ev '(_i\s*\|?\s*$)|repligard|sitegroup|Tables_in_.+'`
for TABLE in $MIDGARD_TABLES; do
QUERY="UPDATE ${TABLE} SET metadata_creator=REPLACE(metadata_authors, '|' ,'') WHERE metadata_creator='' AND metadata_authors<>'' AND metadata_authors<>'||' AND LENGTH(metadata_authors) < 39"
echo "Fixing table: ${TABLE}"
$MYSQLCMD -D ${DB} -e "${QUERY}"
echo "Looking for multiple authors"
QUERY="SELECT guid from ${TABLE} WHERE LENGTH(metadata_authors) > 38 AND metadata_creator='' AND metadata_authors<>'||' AND metadata_authors<>''"
$MYSQLCMD -D ${DB} -e "${QUERY}"
done