Re: infinite loop performing a SQLTemplate query

From: Andrus Adamchik (andru..bjectstyle.org)
Date: Mon Jan 30 2006 - 22:26:57 EST

  • Next message: Tore Halset: "Re: memory usage"

    What I was suggesting is to do a "kill -QUIT <pid>" on the JVM (Ctrl-
    Break on Windows) to see what the threads are doing during that period.

    http://java.sun.com/developer/technicalArticles/Programming/Stacktrace/

    Andrus

    On Jan 30, 2006, at 9:51 PM, Bryan Lewis wrote:

    > A nonSeletingQuery didn't change it. I made sure I was using the
    > 1.2M10
    > jar. Mysterious, I'll try to put together a small test case
    > tomorrow.
    >
    > There is no stack dump worth seeing. The log shows "[QueryLogger] ===
    > updated 20 rows" forever, until I kill the server.
    >
    >
    > Andrus Adamchik wrote:
    >
    >> Hmm... I can't reproduce it with M10 or the current CVS code. If you
    >> can provide a test case (or maybe a stack dump?) it would be great.
    >>
    >> It shouldn't really matter (I tested it both ways), but does it work
    >> if you replace "dc.performQuery(query)" with
    >> "dc.performNonSelectingQuery(query)"?
    >>
    >> Andrus
    >>
    >>
    >>
    >> On Jan 30, 2006, at 7:32 PM, Bryan Lewis wrote:
    >>
    >>> I have some code that worked well in earlier versions of Cayenne
    >>> (1.2M4
    >>> or before) but now it goes into an infinite loop.
    >>>
    >>> String sql = "delete from Search_Data where UserName = 'joe'";
    >>> SQLTemplate query = new SQLTemplate(Company.class, sql);
    >>> dc.performQuery(query);
    >>>
    >>> The query is deleting all the rows from the user's previous
    >>> search. In
    >>> this case there are 20 rows.
    >>>
    >>> The code enters the performQuery() but never comes out. The log
    >>> shows
    >>> an infinite list of this message:
    >>>
    >>> [QueryLogger] === updated 20 rows.
    >>>
    >>>
    >>>
    >>
    >
    >



    This archive was generated by hypermail 2.0.0 : Mon Jan 30 2006 - 22:26:59 EST