[CentOS] MySQL error 28, can't write temp files - how to debug? [SOLVED]

Thu Nov 5 23:07:10 UTC 2009
Rudi Ahlers <rudiahlers at gmail.com>

On Fri, Nov 6, 2009 at 1:02 AM, Les Mikesell <lesmikesell at gmail.com> wrote:
> Rudi Ahlers wrote:
>
>>>>>> What else could cause this kind of problem?
>>>>> You only have 449MB free on /tmp. It could easily fill that up during the
>>>>> query, and then delete the file before you run df again. Run it while the
>>>>> query is executing, I bet you see /tmp filling up.
>>>>>
>>>> Thanx, that seems to have solved the problem. I didn't think of
>>>> checking to see if the tmp folder got full during the SQL statement
>>>> execution. So, by increasing it to 1GB, the problem is solved
>
>>> I've seen mysql do dumb stuff like building a huge temp table in a 3-way
>>> join before evaluating any of the WHEN clause that would eliminate most
>>> of it, but does it really have to make a copy of a single table to pick
>>> a random chunk?
>>>
>
>>
>> This could very well be the case. The website in question is written
>> in PERL (yea, I know.....) and the client doesn't really pay much for
>> us to look into the code to see if it can be optimized either. So I
>> just have to make sure the VPS copes with it. But for now it's working
>> fine :)
>
>
> There's nothing inherently wrong with perl for web programming and it
> doesn't have anything at all to do with the query passed to mysql.
> There are some quirks with apache/mod_perl that might matter for
> efficiency, though.
>
> --
>   Les Mikesell
>    lesmikesell at gmail.com
> _______________________________________________



well, let me put it this way ( I should have said it in the previous
email), the code was written about 6 years ago, and the developer has
since "dissapeared", so it's old & outdated. PERL is good, I agree,
but PERL programmers are few and far apart where we are, so it's a bit
of a pain to keep up.



-- 
Kind Regards
Rudi Ahlers
CEO, SoftDux Hosting
Web: http://www.SoftDux.com
Office: 087 805 9573
Cell: 082 554 7532