September 21, 2012 at 12:11 pm
Hello Everyone,
I have a proc, that is used as a job previously that pulls lot of data. From the past 2 days, it is getting failed due to the reason, Temp DB getting full. It is a proc with lot of Outer joins and Group By statements and pulling lot of data from XML too.. Is there any solution for this. This is how my temp db looks like right now.
I used the following query on my DB and got the
SELECT
name AS FileName,
size*1.0/128 AS FileSizeinMB,
CASE max_size
WHEN 0 THEN 'Autogrowth is off.'
WHEN -1 THEN 'Autogrowth is on.'
ELSE 'Log file will grow to a maximum size of 2 TB.'
END,
growth AS 'GrowthValue',
'GrowthIncrement' =
CASE
WHEN growth = 0 THEN 'Size is fixed and will not grow.'
WHEN growth > 0 AND is_percent_growth = 0
THEN 'Growth value is in 8-KB pages.'
ELSE 'Growth value is a percentage.'
END
FROM tempdb.sys.database_files;
GO
tempdev400.000000Autogrowth is on.10Growth value is a percentage.
templog300.000000Autogrowth is on.10Growth value is a percentage.
tempdev1400.000000Autogrowth is on.128Growth value is in 8-KB pages.
tempdev2400.000000Autogrowth is on.128Growth value is in 8-KB pages.
tempdev3400.000000Autogrowth is on.128Growth value is in 8-KB pages.
Any Suggestion would be really helpful. Thanks in advance.
Good Luck π .. Visit www.sqlsaga.com for more t-sql code snippets and BI related how to articles.
September 21, 2012 at 12:31 pm
Larger growth increments (fixed MB), grow TempDB manually, ensure there's enough space on the drive, tune the queries to use less TempDB.
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
September 21, 2012 at 1:31 pm
GilaMonster (9/21/2012)
Larger growth increments (fixed MB), grow TempDB manually, ensure there's enough space on the drive, tune the queries to use less TempDB.
Growth size is 8KB and 10% on the other.. I actually dont know what they are.. My question is do I have to change them??
Grow tempdb manually? are there any steps to do it?
Enough space on the drive -- There is like 40GB on the drive.
queries are using Left joins on XML and I will try to optimize too, before that any other suggestions on the above listed.
Good Luck π .. Visit www.sqlsaga.com for more t-sql code snippets and BI related how to articles.
September 21, 2012 at 2:18 pm
That's default growth increments, as I said, you probably want larger growth increments.
Growing a file manually - ALTER DATABASE ... ALTER FILE
Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability
September 21, 2012 at 4:10 pm
GilaMonster (9/21/2012)
That's default growth increments, as I said, you probably want larger growth increments.Growing a file manually - ALTER DATABASE ... ALTER FILE
Can you please elaborate more.. This is my first time doing this. Also can you tell me is that a good way to do it?
Good Luck π .. Visit www.sqlsaga.com for more t-sql code snippets and BI related how to articles.
September 21, 2012 at 9:46 pm
a4apple (9/21/2012)
Hello Everyone,I have a proc, that is used as a job previously that pulls lot of data. From the past 2 days, it is getting failed due to the reason, Temp DB getting full. It is a proc with lot of Outer joins and Group By statements and pulling lot of data from XML too.. Is there any solution for this. This is how my temp db looks like right now.
I used the following query on my DB and got the
SELECT
name AS FileName,
size*1.0/128 AS FileSizeinMB,
CASE max_size
WHEN 0 THEN 'Autogrowth is off.'
WHEN -1 THEN 'Autogrowth is on.'
ELSE 'Log file will grow to a maximum size of 2 TB.'
END,
growth AS 'GrowthValue',
'GrowthIncrement' =
CASE
WHEN growth = 0 THEN 'Size is fixed and will not grow.'
WHEN growth > 0 AND is_percent_growth = 0
THEN 'Growth value is in 8-KB pages.'
ELSE 'Growth value is a percentage.'
END
FROM tempdb.sys.database_files;
GO
tempdev400.000000Autogrowth is on.10Growth value is a percentage.
templog300.000000Autogrowth is on.10Growth value is a percentage.
tempdev1400.000000Autogrowth is on.128Growth value is in 8-KB pages.
tempdev2400.000000Autogrowth is on.128Growth value is in 8-KB pages.
tempdev3400.000000Autogrowth is on.128Growth value is in 8-KB pages.
Any Suggestion would be really helpful. Thanks in advance.
Unless I'm readinng this output you provided incorrectly, TempDb is sitting at a total of 1.6GB with a 300MB log. That's not what I'd consider to be a large TempDB. I boot my production servers with a 20GB TempDB and even that is small by some folk's standards.
Why do you think TempDB is getting full? Are you approaching the physical disk limit?
--Jeff Moden
Change is inevitable... Change for the better is not.
September 24, 2012 at 1:56 am
a4apple (9/21/2012)
Hello Everyone,I have a proc, that is used as a job previously that pulls lot of data. From the past 2 days, it is getting failed due to the reason, Temp DB getting full. It is a proc with lot of Outer joins and Group By statements and pulling lot of data from XML too.. Is there any solution for this.
...
Any Suggestion would be really helpful. Thanks in advance.
Breaking up a large complex query into smaller chunks as #temp tables can help if SQL Server is creating large worktables (and bitmaps to support joins) in tempdb, which it's likely to do if there are different aggregation levels in your queries. Can you post the code? Better still, the actual plan.
For fast, accurate and documented assistance in answering your questions, please read this article.
Understanding and using APPLY, (I) and (II) Paul White
Hidden RBAR: Triangular Joins / The "Numbers" or "Tally" Table: What it is and how it replaces a loop Jeff Moden
September 24, 2012 at 2:51 am
Dear Sir,
I have a query
there is only one field 'datetime' in the table.I have to calculate shifts ,intime and outtime is needed.
how to calculate intime and outtime?
Thanks and Regards
N.Ramachandran
September 24, 2012 at 2:56 am
ramachandran narayanan (9/24/2012)
Dear Sir,I have a query
there is only one field 'datetime' in the table.I have to calculate shifts ,intime and outtime is needed.
how to calculate intime and outtime?
Thanks and Regards
N.Ramachandran
Please do not hijack other peoples threads.
Please start your own thread and please also follow the information in the second link of my signature on how to post code and data for the best help.
Viewing 9 posts - 1 through 8 (of 8 total)
You must be logged in to reply to this topic. Login to reply