error 17122 : initdata: Warning: Could not set working set size to 519104 KB.

error 17122 : initdata: Warning: Could not set working set size to 519104 KB.

Post by Gerard Esteba » Sun, 31 Mar 2002 00:10:53



All,

I am receiving error 17122.  I am probably going to reconfigure the server
to dynamically allocate memory, but can somebody answer the following
question?  Why is SQL Server attempting to set the working set size to
519104KB, when the configuration is as follows (basically, fixed memory at
350MB)?

SQL Server 7.0 SP2
512MB

Set working set size = 1
Min Server Memory = 350MB
Max Server Memory = 350MB

I have searched everywhere, and I have check the SP3 fixlist, and have
failed to find an explanation.  Any help would be appreciated.

Thanks,
Gerard

 
 
 

error 17122 : initdata: Warning: Could not set working set size to 519104 KB.

Post by [MS] Hai-Wei » Wed, 03 Apr 2002 11:58:11


Hi ,

There are two main areas of memory within SQL Server's address space, the
buffer
pool (BPool) and a second memory pool sometimes called the "MemToLeave"
area.
The contents of the SQL Server buffer pool include cached table data,
workspace
memory used during query execution for in-memory sorts or hashes, most
cached
stored procedure and query plans, memory for locks and other internal
structures, and the majority of other miscellaneous memory needs of the SQL
Server. SQL Server 7.0 introduced dynamic memory management to the buffer
pool,
which means that the amount of memory under SQL Server's direct control may
grow
and shrink in response to internal SQL Server needs and external memory
pressure
from other applications. It is normal for the size of the SQL Server buffer
pool
to increase over time until most memory on the server is consumed. This
design
can give the false appearance of a memory leak in the SQL Server buffer pool
when operating under normal circumstances. For more detailed information
please
reference the Books Online articles "Server Memory Options", "Memory
Architecture", and (SQL Server 2000 only) "Effects of min and max server
memory".

The other significant memory area is sometimes called MemToLeave, and it is
primarily used by non-SQL Server code that happens to be executing within
the
SQL Server process. The MemToLeave area is memory that is left unallocated
and
unreserved, primarily for code that is not part of the core SQL Server and
therefore does not know how to access memory in the SQL Server buffer pool.
Some
examples of components that may use this memory include extended stored
procedures, OLE Automation/COM objects, linked server OLEDB providers and
ODBC
drivers, MAPI components used by SQLMail, and thread stacks (one-half MB per
thread). This does not just include the .EXE and .DLL binary images for
these
components; any memory allocated at runtime by the components listed above
will
also be allocated from the MemToLeave area. Non-SQL Server code makes its
memory
allocation requests directly from the OS, not from the SQL Server buffer
pool.
The entire SQL Server buffer pool is reserved at server startup, so any
requests
for memory made directly from the operating system must be satisfied from
the
MemToLeave area, which is the only source of unreserved memory in the SQL
Server
address space. SQL Server itself also uses the MemToLeave memory area for
certain allocations; for example, SQL Server 7.0 stores procedure plans in
the
MemToLeave area if they are too large for a single 8KB buffer pool page.

The server configurations such mas "max memory", "min memory" and "working
set" can only affect the size of buffer pool. They can't control the size
of MemToLeave.

I hope these could answer your question.

This posting is provided 'AS IS' with no warranties, and confers no rights.

Regards,
Haiwei Xu

 
 
 

1. 17122 :initdata: Warning: Could not set working set size to 519104 KB.

Hi,

Every time I start sql server the event viewer I get the above message.

I think this means that it's trying to allocate 512 Megs or RAM but is
unable to.  Am I correct?

I have set SQL server to use 256 megs or RAM and to reserve physical memory
for it.

The BOL is really poor when it comes to covering details of error messages.
What use is it to repeat the text of the error message?  Tell my WHY it's
happening and what to do to fix it... not just the text of the message.

Any insight is appreciated.

2. HELP - Disable Radio Button

3. Eventlog Mesg 17122 : initdata: Warning: Could not set working set size to 519104 KB

4. Sybase CT-Lib under Linux

5. Error 17122 : initdata: Warning: Could not set working set size to 1038848 KB.

6. How to take SNMP on?

7. initdata: Warning: Could not set working set size to 1038848 KB.

8. Stored Procedure Problem

9. initdata error 17122 & PAGE_FAULT

10. SQL Error Could not set working set size to ... KB

11. Setting Working Set Size on SQL 7 under Windows 2000

12. UPDATE / Multiple SET not working - fields being set to NULL

13. SQL 7.0 - Working set size ERROR