Re: "No Results were returned by the query" exception

From: Dave Cramer <Dave(at)micro-automation(dot)net>
To: Jon Swinth <jswinth(at)atomicpc(dot)com>
Cc: Joe Shevland <jshevland(at)j-elite(dot)com>, "pgsql-jdbc(at)postgresql(dot)org" <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: "No Results were returned by the query" exception
Date: 2002-06-07 02:25:21
Message-ID: 1023416722.1427.694.camel@inspiron.cramers
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Jon,

Ok, then the next thing to do is to look at the logs from the backend.
See why it is failing on the server.

Dave
On Thu, 2002-06-06 at 20:56, Jon Swinth wrote:
> Dave,
>
> Thanks for the guess, but no the insert is not failing. If I comment out the call to the sequence then everything works fine.
>
> I only think the insert has something to do with it because I don't get the exception every time a poll the sequence.
> I get the exception only in this one place. And it is the only place I can think of where an insert happens before
> a sequence select. The insert may be irrelevant to the issue, but it is the only thing I can see different from where
> things work and don't work.
>
> What I am actually doing is trying to advance the sequence beyond a certain value. The code actually calls a select
> from currval() first and then on exception calls nextval() to see what the sequence is currently at. The currval() call is
> failing too. I had to implement things this way because PostGre will throw an error if the sequence has been newly
> created and you try to call currval() on it. I need to currval() (or nextval()) to make sure that the user is not trying to
> set the sequence to a previous value.
>
> I used to have this issue with the non-dev driver all the time. Especially when I would be making a lot of successive
> calls. Upgrading to the dev driver did away with all the errors until now.
>
> Jon
>
> On Thursday 06 June 2002 05:19 pm, Dave Cramer wrote:
> > Jon,
> >
> > then chances are the insert is failing and then the transaction needs to
> > be rolledback. Once a transaction has an error it cannot be used until
> > ended, by either rollback, or commit
> >
> > Dave
> >
> > On Thu, 2002-06-06 at 20:01, Jon Swinth wrote:
> > > Thanks for the reply Joe.
> > >
> > > I am using PostGreSQL 7.2.1 with JDBC driver of
> > > http://jdbc.postgresql.org/download/devpgjdbc2.jar.
> > >
> > > Code is:
> > >
> > > public int getNextValue(
> > > String sequenceName )
> > > throws SQLException {
> > > checkAll(sequenceName);
> > > Statement s = null ;
> > > ResultSet rs = null ;
> > > try {
> > > s = connection.createStatement() ;
> > > rs = s.executeQuery("SELECT nextval('"+sequenceName+"')");
> > > if (!rs.next()) {
> > > throw new SQLException("No Rows Returned from Sequence " +
> > > sequenceName); } //end if
> > > int returnValue = rs.getInt(1) ;
> > > rs.close();
> > > s.close();
> > > return returnValue ;
> > > } catch (SQLException e) {
> > > if (rs != null) {
> > > rs.close();
> > > } //end if
> > > if (s != null) {
> > > s.close();
> > > } //end if
> > > throw e ;
> > > } //end try
> > > } //end getNextValue()
> > >
> > > And yes I am using it from within a transaction.
> > >
> > > What is odd is it is not consistant. This same code runs fine for a lot
> > > of things.
> > >
> > > My guess is that there is a variable that is not being reset properly in
> > > the driver. That would explain why it does not happen all the time. In
> > > this case, I am receiving an error when running the above code after an
> > > INSERT statement on the same connection.
> > >
> > > Jon
> > >
> > > On Thursday 06 June 2002 04:02 pm, Joe Shevland wrote:
> > > > Sorry I'm not across the actual issue, but have you got a small snippet
> > > > of Java code to demonstrate the problem (enough to see if its inside a
> > > > transaction etc and how you're executing the statement and looping
> > > > through the RS)? Also the version number of the PostgreSQL backend.
> > > >
> > > > I do the below sort of thing regularly and haven't had a problem. The
> > > > drivers on http://jdbc.postgresql.org/download are the best ones to go
> > > > for if you're not already using those.
> > > >
> > > > Cheers,
> > > > Joe
> > >
> > > ---------------------------(end of broadcast)---------------------------
> > > TIP 2: you can get off all lists at once with the unregister command
> > > (send "unregister YourEmailAddressHere" to majordomo(at)postgresql(dot)org)
>
>

In response to

Browse pgsql-jdbc by date

  From Date Subject
Next Message Barry Lind 2002-06-07 04:22:42 Re: "No Results were returned by the query" exception
Previous Message Barry Lind 2002-06-07 01:01:13 Re: Problem with java.sql.DatabaseMetaData