Have you tried running ConsistencyCheck? It will list the inconsistencies and if you run it with -purge" it will attempt to automatically clean them up.

Here's the script I use to run it:

#!/bin/sh
if [ "$JAVA_HOME" = "" ] ; then
echo You must set JAVA_HOME to point to your Java JDK install directory
        exit 1
fi
_JDBCJAR=${CATALINA_HOME}/common/lib/mysql-connector-java-3.0.15-ga- bin.jar
_CP=../lib/rollerbeans.jar
_CP=${_CP}:../lib/commons-logging.jar
_CP=${_CP}:${_JDBCJAR}

${JAVA_HOME}/bin/java -classpath ${_CP} org.roller.business.utils.ConsistencyCheck $1 $2 $3 $4


- Dave




On Jul 28, 2005, at 11:41 PM, Matt Raible wrote:

Max,

This results in:

mysql> delete from weblogentry where websiteid not in (select website.id
    -> from website, rolleruser where website.userid = rolleruser.id);
ERROR 1064 (00000): You have an error in your SQL syntax near 'select
website.id
from website, rolleruser where website.userid = rolleruser.id' at line 1

I'm using MySQL 3.23.56-Max-log, and I'm guessing the problem is the
subselect doesnt' work in that version.

Matt

On 7/27/05, Rudman Max <[EMAIL PROTECTED]> wrote:
Actually, the stack trace showed the UserData object as being the
cluprit which means you need to do a join on 'website' and
'rolleruser' tables.

Try this:

delete from weblogentry where websiteid not in (select website.id
from website, rolleruser where website.userid = rolleruser.id)

Max


On Jul 27, 2005, at 8:10 PM, Matthew P. Schmidt wrote:

That's a data inconsistency problem.  The following query was
harsh, but solved the problem:

delete from weblogentry where categoryid not in (select id from
weblogcategory)

I believe those are the right columns, just double check.  That
should get rid of any entries that managed to become orphaned.

-Matt

Matt Raible wrote:


When I try to kick off the search indexing for my site, I get the
following stack trace in my logs. Any idea how to fix this?

INFO  2005-07-27 16:47:34,168 | WriteToIndexOperation:run | Starting
search index operation
ERROR 2005-07-27 16:47:37,067 |
HibernateWeblogManagerImpl:getWeblogEntries |
net.sf.hibernate.UnresolvableObjectException: No row with the given
identifier exists: 192197110220102822966018600075, of class:
org.roller.pojos.UserData
ERROR 2005-07-27 16:47:37,068 | RebuildUserIndexOperation:doRun |
ERROR adding doc to index
org.roller.RollerException
       at
org.roller.business.hibernate.HibernateWeblogManagerImpl.getWeblogEn t
ries(HibernateWeblogManagerImpl.java:307)
       at org.roller.business.WeblogManagerImpl.getWeblogEntries
(WeblogManagerImpl.java:297)
       at
org.roller.business.search.operations.RebuildUserIndexOperation.doRu n
(RebuildUserIndexOperation.java:114)
       at
org.roller.business.search.operations.WriteToIndexOperation.run
(WriteToIndexOperation.java:41)
       at EDU.oswego.cs.dl.util.concurrent.PooledExecutor
$Worker.run(Unknown
Source)
       at java.lang.Thread.run(Thread.java:595)
--- ROOT CAUSE ---
net.sf.hibernate.UnresolvableObjectException: No row with the given
identifier exists: 192197110220102822966018600075, of class:
org.roller.pojos.UserData
       at net.sf.hibernate.UnresolvableObjectException.throwIfNull
(UnresolvableObjectException.java:38)
       at net.sf.hibernate.impl.SessionImpl.internalLoad
(SessionImpl.java:1950)
       at net.sf.hibernate.type.ManyToOneType.resolveIdentifier
(ManyToOneType.java:69)
       at net.sf.hibernate.type.EntityType.resolveIdentifier
(EntityType.java:204)
       at net.sf.hibernate.impl.SessionImpl.initializeEntity
(SessionImpl.java:2201)
       at net.sf.hibernate.loader.Loader.doQuery(Loader.java:240)
       at
net.sf.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollection s
(Loader.java:133)
       at net.sf.hibernate.loader.Loader.doList(Loader.java:955)
       at net.sf.hibernate.loader.Loader.list(Loader.java:946)
       at net.sf.hibernate.loader.CriteriaLoader.list
(CriteriaLoader.java:121)
       at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:
3609)
       at net.sf.hibernate.impl.CriteriaImpl.list
(CriteriaImpl.java:238)
       at
org.roller.business.hibernate.HibernateWeblogManagerImpl.getWeblogEn t
ries(HibernateWeblogManagerImpl.java:302)
       at org.roller.business.WeblogManagerImpl.getWeblogEntries
(WeblogManagerImpl.java:297)
       at
org.roller.business.search.operations.RebuildUserIndexOperation.doRu n
(RebuildUserIndexOperation.java:114)
       at
org.roller.business.search.operations.WriteToIndexOperation.run
(WriteToIndexOperation.java:41)
       at EDU.oswego.cs.dl.util.concurrent.PooledExecutor
$Worker.run(Unknown
Source)
       at java.lang.Thread.run(Thread.java:595)
INFO  2005-07-27 16:47:37,072 | RebuildUserIndexOperation:doRun |
Completed rebuilding index for all users in '2.904' secs
INFO  2005-07-27 16:47:37,073 | WriteToIndexOperation:run | Search
index operation complete






Reply via email to