Domino on Linux/Unix, Troubleshooting, Best Practices, Tips and more ...


Daniel Nashed

NSF Buffer Pool Size on Notes Client

Daniel Nashed – 29 July 2013 09:42:36

A friend asked me today why he is getting "The buffer pool is too full to bring in another page" on his Notes Client.
I am not sure why exactly this is happening in his environment but I tried to explain and remembered a configuration change that I did in my Notes Client log time ago.

The NSF Buffer Pool (aka the UBM) is used for NSF I/O operations. It's a kind of I/O buffer. All NSF I/O goes thru this buffer pool.
On the server side for 32Bit the default size is 512 MB. For 64bit Domino it's 1 GB.

On the client side the calculation is done differently. The current default size is still 8 MB on Windows!

The error message means that your buffer pool is too small to keep up with the current requests (there is more in the pool than what is asked for). We have also seen this on very busy servers.

Here is an example from my machine but I am running with NSF_BUFFER_POOL_SIZE_MB=256
That's how you see the currently allocated size. But the buffer pool limit could be higher than that. It's allocated step by step as needed.
For a client with the default settings 8 MB is reached quite quickly. On the server side it needs a while to grow.
But on the server side there is statistic setting that you could check.

<@@ ------ Notes Memory -> Usage Summary -> Top 10 Memory Block Usage -> Memhandles By Size :: (Shared) (Time 09:01:29) ------ @@>

Type TotalSize Count Typename
0x82cd 267665408 68 BLK_UBMBUFFER

So what I did on my client a long time ago is to increase the NSF buffer pool on my client using NSF_BUFFER_POOL_SIZE_MB. This will override the default settings on the client.
It will also increase the number of dbcache handles. The default is 3 times the NSF buffer pool size in MB.

If you have many databases or many large databases you might want to increase the size of the buffer pool at bit.
Maybe 80 MB would be a good setting for most clients. This will give you more room for the NSF Buffer Pool to work in the why it is designed.

The default of 8 MB is what has been defined long time ago when memory was quite constrained.
I have not done performance tests and it would be different depending on your environment.
But if you have a moderate increase like this it should be good invested memory in most cases.
And 80 MB do not harm even Notes is just 32Bit. There should be plenty of room for other memory areas.

-- Daniel



    • [HCL Domino]
    • [Domino on Linux]
    • [Nash!Com]
    • [Daniel Nashed]