vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Hi I have a question in relation to errant queries. Now once and a while the database that I'm using gets itself into a bit of "state" due to errnt process. If you go in and manually kill that process the database then starts perfoming as it should. Now this involves manual intervention, now I was thinking about a reaper process (killing zombie queries), I know there may be an issue relating to time queries take to run(ie a really big query may appear to have hung, but they are still extracting the data). Now not know mysql that well, can I ask the following questions? Is the concept of a reaper frought with danger and such a bad idea? Does mysql have any sort of monitoring facility to determine if a thread has a period of inactivity, hung itself? (at this stage not concerned with db overhead, as would probably consider getting a chunkier machine) Alternativley could you point me in a direction of any useful documentation. Before I get flammed, yes I know how to use google, and have done a broad search, but not exactly sure of what I'm after, so I'm trying to pick the brains of some experts. Any tips and pointers would be useful, thanking you indvance for your time and consideration, and I look forward to your reply. David |
| ||||
| >I have a question in relation to errant queries. Now once and a while >the database that I'm using gets itself into a bit of "state" due to >errnt process. My interpretation of this is that your process is holding a MySQL lock, which is blocking other queries. The process is perhaps off doing something else besides a query. It is premature to say that there is anything "errant" about the query or the process. And killing it may be asking for data corruption that the lock was supposed to prevent. >If you go in and manually kill that process the database >then starts perfoming as it should. >Now this involves manual intervention, now I was thinking about a >reaper process (killing zombie queries), The term "zombie" has a specific technical meaning on UNIX and UNIX-like systems, and you can't kill "zombie" processes, they are already stuck trying to exit. What is the process REALLY doing? Use "show processlist". Is the process in the middle of performing a query? What query? Or is it off doing something in the real world? >I know there may be an issue >relating to time queries take to run(ie a really big query may appear >to have hung, but they are still extracting the data). >Now not know mysql that well, can I ask the following questions? >Is the concept of a reaper frought with danger and such a bad idea? Is the concept of a "restaurant reaper" who throws out customers who haven't finished their meal in 10 minutes a bad idea? >Does mysql have any sort of monitoring facility to determine if a >thread has a period of inactivity, hung itself? (at this stage not >concerned with db overhead, as would probably consider getting a >chunkier machine) There should be no need for such a thing. What supposedly hung, the process or the query? They are different. >Alternativley could you point me in a direction of any useful >documentation. Before I get flammed, yes I know how to use google, and >have done a broad search, but not exactly sure of what I'm after, so >I'm trying to pick the brains of some experts. > >Any tips and pointers would be useful, thanking you indvance for your >time and consideration, and I look forward to your reply. |