What is this "Database error"?

I’ve been getting this a lot the past few months: I try to run a search, and, instead of “Internet Explorer cannot display the web page,” I get a message about a “Database error” (which what appears to be a square-root symbol displayed). And the Board still seems to count that result as a “search” and requires you to wait five minutes before trying again. What’s going on here?

You’re not alone.

The square-root is actually the vbulletin logo. And I think the DB error is a time-out. Because the boards are struggling to cope with the volume of traffic again.

You could be right, Lob. But I’ve found that a simple refresh of the page will bring up the search findings right after a database error. I’m not sure whether that fits with a time out. I think a DB time out would result in no data returned at all. I don’t know how MySQL works, but with Microsoft SQL and IIS, you can customized error messages, like “Oops. Our bad!” or even “Database error”, whereas allowing native messages to show gives more information about the error (including a field dump), but can sometimes be used to get information by unscrupulous hacks. So, in our company, if we hit a bug, we turn off customized error messages just long enough to get a real error description, and then we turn them back on again immediately.

I am thinking more of a board timeout. More often than not the database query is succesful, but the doper fails to receive the results page. The reason pressing F5 will work (assuming the bandwidth issue has died down) is that the query results are sat waiting with a query id so the refresh just grabs them.

(Or so I assume)

And, I’m surprised/impressed by your knwledge Lib. I always took you for an old dude with some unusual Political beleifs. Not a guy who knows about MSSQL and descriptive errors.

ETA: No offence meant. I meant ‘old’ as in ‘seems to be wise’

Lobsang, I understand that this is meant as a compliment, but there is a sort of left-handed aspect to it. So, just for anyone else reading this thread, please, no personal insults in this forum. (This isn’t a warning, nor even a “friendly reminder,” it’s far more gentle than that… I just don’t want anyone using that as a springboard into unhappy territory.)

No offense taken at all. Ever since I put my soap box away, people have gotten to know me better. I’m glad about that. So, thanks, Lob. :slight_smile:

CK By ‘Left-Handed’ did you mean’Back-Handed’?

If so it wasn’t meant that way. And consider my wrist very politely slapped :smiley:

Again? 20% of my searches have done this since they extended the time between them to 5 minutes. That’s been what, at least a year, right?

It didn’t for me. I did a refresh and got the warning about POSTDATA; when the screen came back, I got the “Screw you, you gotta wait 300 seconds message.”

Yeah, in all likelihood, that means that there was a board timeout before the data fetch was completed. The post data thing is what is passed from the page where you fill out your search criteria to the page that does the actual searching. So, in order to get your data, it has to restart the search, and the information from the page you filled out has to be resent.

It’s sorta like this. Think of the DMV. You hand the lady your slip. She gives you a snarly expression as she takes the slip from you. The slip is now gone. It’s in her hands. She finds your tag. But she looks at her watch, and it’s time for her break. Shortly, another lady comes to the counter and asks you for your slip. But you say you already gave your slip to the other lady. So she has to go find the other lady to get your slip. But by the time she comes back to the window, your tag has expired.

Hope that helps. :slight_smile:

Is it the searches themselves that cause the database error, or merely a victim of them? I do occasionally have timeouts on simple link/page requests.

For me it’s only been in the past month that I’ve been getting database errors.

Keep in mind that there are two separate timeout flags: one for the server request, and one for the SQL call. If the server times out BEFORE the SQL call returns its result set, then you will have to resend the data (username, search thread titles only, date range, etc.) to get the result set back. On the other hand, if the SQL call times out before the server, then you will get a database error. Refreshing will re-initialize the call, but will not require resending data.

To top it all off, however, there is a delay setting. So, if your query began at all — even if it timed out — you will have to wait for the delay to requery. But a server timeout will also be affected by the delay since your query is being re-initialized.

Hope that helps. :slight_smile: