[Opensource] Exception replying to forum message

Peter A. Pilgrim peterp at xenonsoft.demon.co.uk
Thu Dec 11 16:45:21 PST 2003


Mike Traum wrote:
> Sorry, I should have told you that this was taken care of, at least I
> think it is. I found the same - referential integrity. I used the query:
> select FORUMSUBSCRIBE.* from FORUMSUBSCRIBE LEFT JOIN USERSTABLE ON
> (FORUMSUBSCRIBE.ExpUid = USERSTABLE.ExpUid) WHERE USERSTABLE.ExpUid is
> null;
> 
> to isolate the records. I just ran you're query - it returns 11664
> records. It's an outer join, so all of those records are not erroneous,
> right?
> 

Yep! My skill database person are still developing! Your SQL statement
issolates the missing records better. I TOO was looking for the outer join
isolate the rows where userstable uid were NULL.

> BTW, I took a look at the forum code, and it looks like this problem has
> been taken care of already and this data was leftover from a previous
> version.
> 
> mike
> 
> On Wed, 2003-12-10 at 17:19, Peter A. Pilgrim wrote:
> 
>>D Lloyd wrote:
>>
>>>I was trying to reply to an eForum message on the jcorporate site and
>>>recieved an exception.
>>>
>>>The message was
>>>http://www.jcorporate.com/eforum/Browse.do?state=promptReply&MessageId=6867
>>>
>>>exception:
>>>
>>>com.jcorporate.expresso.core.db.DBException: cannot find user: 470 at
>>>com.jcorporate.expresso.core.security.User.getUserFromId(User.java:1353)
>>>at com.jcorporate.eforum.dbobj.ForumMessage.add(ForumMessage.java:208) at
>>>com.jcorporate.eforum.controller.Browse.runReplyToState(Browse.java:1241)
>>>at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at
>>>sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>>at
>>>sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>>at java.lang.reflect.Method.invoke(Method.java:324) at
>>>com.jcorporate.expresso.core.controller.Controller.newState(Controller.java:1371)
>>>at
>>>com.jcorporate.expresso.core.controller.Controller.execute(Controller.java:1843)
>>>at
>>>org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
>>>at
>>>org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
>>>at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
>>>at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
>>>at javax.servlet.http.HttpServlet.service(HttpServlet.java:165) at 
>>>
>>>
>>>
>>>Is this a "normal" situation where a subscriber to the list would not be
>>>found?  Do we need a check here catching this exception?  I guess this is
>>>about the last thing that a user would want to see when posting unless
>>>noone would recieve the message.  Of course the person being ignored might
>>>not like it either unless the problem is the user has been deleted.  Which
>>>brings up the point - did my message get sent?
>>>
>>>Well my reply had mentioned it being late.  Now it is very late.  Good
>>>night.
>>>
>>>- David Lloyd
>>>  d a v i d @ l l o y d h o m e . c o m
>>>--------------
>>> I love deadlines. I like the whooshing sound they make as they fly by.
>>>    (Douglas Adams)
>>
>>I think this looks like a data integrity problem. Forum subscriber that does
>>not exist in the Expresso Users table.
>>
>>
>>
>>mysql> SELECT F.ExpUid, U.LoginName, U.Email, U.CreateDate, U.AccountStatus
>>FROM FORUMSUBSCRIBE F RIGHT OUTER JOIN USERSTABLE U
>>ON U.ExpUid = F.ExpUID
>>WHERE  F.ExpUid IS NULL;
>>
>>+--------+-----------+-------+---------------------+---------------+
>>| ExpUid | LoginName | Email | CreateDate          | AccountStatus |
>>+--------+-----------+-------+---------------------+---------------+
>>|   NULL | Anonymous | none  | 2002-08-28 02:21:11 | D             |
>>|   NULL | NONE      | none  | 2002-08-28 02:21:11 | D             |
>>+--------+-----------+-------+---------------------+---------------+
>>2 rows in set (0.00 sec)
>>
>>There should at least be two users.


-- 
Peter Pilgrim
            __ _____ _____ _____
           / //__  // ___// ___/   +  Serverside Java
          / /___/ // /__ / /__     +  Struts
         / // ___// ___// ___/     +  Expresso Committer
      __/ // /__ / /__ / /__       +  Independent Contractor
     /___//____//____//____/       +  Intrinsic Motivation
On Line Resume
    ||
    \\===>  `` http://www.xenonsoft.demon.co.uk/no-it-striker.html ''




More information about the Opensource mailing list