My application, in a nutshell, allows you to click within a series of HTML
table data cells, and this dynamically creates hidden input boxes on a form,
which when submitted, the server processes into SQL, and returns the result
of.

The problem: 'selecting' too many data cells causes the site to skip the
lengthy db query (which normally takes at least 3 minutes,) and it
immediately returns the results as a downloadable file (set up using
res.setContentType & setHeader.)  It then churns away downloading this file
indefinitely.  Select only a few data cells, and you get a nicely formatted
comma-delimited set of data in a text file, after 3-10 minutes...  the table
has tens of millions of rows.

The log files haven't helped me much.  The servlet I believe to be causing
the problem is called from a form's post action (Is there a limit on header
sizes with post?,) but there is no record of a call to it in the access log
when this error occurs.  It is clearly being run at least partially, though.
I can see a log entry I submit from within the offending servlet to
localhost_log for the final SQL statement that it should be submitting to
the Postgres database, and also a localhost_log entry for representing the
number of cells that have been selected.

The error is reproducable, but it doesn't appear to be an absolute number of
cells selected, or an inherent problem with the SQL statement, or the length
of the SQL statement.  If you're familar with Postgres, I've used psql to
run the generated SQL, and it works perfectly, although the statement takes
something like 8 to 10 minutes to run.  And I've set up Postgres to log all
queries, and it definitely starts processing the query; but when the error
occurs I get a response immediately, and it's empty.

Thinking it might be a JDBC error, I wrote a simple test page which submits
a SQL statement I know causes this error as a string directly through a
Statement.executeQuery.  Alas, after the correct amount of time, it presents
a page with the correct results.

myWitsI'm

I don't suspect this is a bug, and I realize it could be Tomcat, Postgres,
JDBC, or IE for all that, but I figure I'd start here.

Any ideas or thoughts are welcome and appreciated.

Colin Freas
Systems Analyst
Center for Population and Health
Georgetown University


--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to