Welcome to the dBforums forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions, articles and access our other FREE features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload your own photos and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact support.

If you prefer not to see double-underlined words and corresponding ads, place your cursor
here for ContentLink opt out.

Go Back  dBforums > Database Server Software > Informix > No LRU Writes

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 03-12-04, 12:08
etae9090 etae9090 is offline
Registered User
 
Join Date: Mar 2004
Posts: 1
No LRU Writes

I am trying to tune checkpoint time for an Informix 9.21 instance on a solaris box... and no matter what I do I always get long checkpoints because it appears that I only have chunk writes ... never LRU writes ...

Here are the relevant bits of the onconfig:

BUFFERS 768000
LRUS 8
CLEANERS 8
LRU_MAX_DIRTY = 2
LRU_MIN_DIRTY = 1
CKPTINTVL = 300

The weird thing is that onstat -F shows only chunk writes (no LRU writes or foreground writes). onstat -R shows the actual dirty buffers is way past the number that should trigger LRU writes ... but they never happen.

I will be increasing the LRU/CLEANERS up to 128 since that makes it easier to hit the dirty ratio (so says onstat -R in my test env anyway since the % is a ratio of LRUS to buffers) but I am worried that ALL the writing is happening as a CHUNK write during a checkpoint which is dragging the system down ...

Any help would be appreciated.
Reply With Quote
  #2 (permalink)  
Old 03-16-04, 09:18
gurey gurey is offline
Registered User
 
Join Date: Aug 2003
Location: Argentina
Posts: 777
Re: No LRU Writes

Quote:
Originally posted by etae9090
I am trying to tune checkpoint time for an Informix 9.21 instance on a solaris box... and no matter what I do I always get long checkpoints because it appears that I only have chunk writes ... never LRU writes ...

Here are the relevant bits of the onconfig:

BUFFERS 768000
LRUS 8
CLEANERS 8
LRU_MAX_DIRTY = 2
LRU_MIN_DIRTY = 1
CKPTINTVL = 300

The weird thing is that onstat -F shows only chunk writes (no LRU writes or foreground writes). onstat -R shows the actual dirty buffers is way past the number that should trigger LRU writes ... but they never happen.

I will be increasing the LRU/CLEANERS up to 128 since that makes it easier to hit the dirty ratio (so says onstat -R in my test env anyway since the % is a ratio of LRUS to buffers) but I am worried that ALL the writing is happening as a CHUNK write during a checkpoint which is dragging the system down ...

Any help would be appreciated.


Hi,

The chunks write is the best operation. The problem is if exist foreground write.
Now, if checkpoint time are big, then please send me output of onstat -d, onstat -m, onstat -F, onstat -R and ONCONFIG file.

Thanks

Gustavo.
Reply With Quote
  #3 (permalink)  
Old 03-23-04, 10:34
fprose fprose is offline
Curmudgeon
 
Join Date: Apr 2003
Location: Phoenix, AZ
Posts: 177
Based upon the number of buffers/LRU's you would need 1920 dirty pages before the flush would start. Since your checkpoint interval is 300 seconds you might try timing a "onstat -R" just before the checkpoint would naturally occure.

I think most people would disagree with the previous post - you DO NOT want Chunk Writes.

There's several causes for a long checkpoint. Obviously, the number of pages to be flushed is one cause. Q: How many pages does the checkpoint message say it flushed when it occures?

Also keep in mind that the Physical log plays a very important role in the checkpoint process. The placement (and number) of affected db spaces also has a big influence.

How are these db spaces (including physical and logical logs) positioned?
How many dbspaces are actually affected by the checkpoint. If it's a very few dbspaces you will have little or no parrallel activity.

Before I considered a dramatic increase of LRU's (from 8 to 128) I'd consider lowering the dirty threshholds to 1 and 0.
__________________
Fred Prose
Reply With Quote
  #4 (permalink)  
Old 03-24-04, 15:31
RobP RobP is offline
Registered User
 
Join Date: Mar 2004
Location: Netherlands
Posts: 181
Setting the LRU cleaning parameters to 1 and 0 is a solution. But in heavy load systems the 0 setting culd be a problem. The problem could be several things, maybe tou can monitor the database state during a checkpoint. Is it (CKPT REQ) then the cleaning itself is not the problem, but stopping all critical sections is (quite difficult to solve), is it (CKPT) then the real clening is the problem.

Especially for the cleaning problem IDS 9.40 has a new 'feature'. LRU max and MIN dirty can now be percentages (like 0.0002) this features is very usefull if you have a relatively large bufferpool.

Greetings,

Rob Prop
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On