Link to home
Start Free TrialLog in
Avatar of k_murli_krishna
k_murli_krishnaFlag for India

asked on

Not enough memory

1) I am having db2 EE 7.2 server on Win NT4/2000.

2) When I was doing: insert into local_db_table select * from nickname (to remote server), I get the error:
SQL1022C There is not enough memory available to process the command.
SQLSTATE=57011

3) I failed to do anything from what was suggested as user response:

a) Change the MEMMAN NO SWAP, NO MOVE option in the CONFIG.SYS file to SWAP, MOVE. I could not find CONFIG.SYS anywhere. Can you tell me where it is located or if on windows it has a different name.

b) Remove background processes - How to do this?. First of all what all are the db2 background processes and what all can we remove.

c) Decrease the values of the configuration parameters that define allocation of memory, including udf_mem_sz if UDFs are involved in the failing statement.
This is a parameter of type db manager configuration. UDFs were not involved in the failing statement.
What all parameters define allocation of memory.

d) Install more random access memory (RAM). We are on the way.

e) If a remote procedure was invoked, ensure that the remote procedure uses a local variable space that is less than or equal to 4K. Even though remote procedure was not involved, I would like to know how to accomplish this.

f) If you are using Remote Data Services, increase the Remote Data Services heap size (rsheapsz) in the server and client configuration because at least one block is used per application. This is the one that fits I think. I could not find rsheapsz in list of db and dbm cfg parameters. When can I find and set this both in client and in server.

g) On OS/2 systems, increase the value of the min_priv_mem database manager configuration parameter. This will cause the database manager to reserve more private memory space at db2start time. I found this parameter in dbm cfg parameters. Can I set this and will it take effect for my windows system.



Avatar of k_murli_krishna
k_murli_krishna
Flag of India image

ASKER

4) This was there after all user response points:
NOTE: This is applicable only for releases of DB2 prior to Version 2. Does this point to all curatives or just for the last one i.e. 3) g).


ASKER CERTIFIED SOLUTION
Avatar of BigSchmuh
BigSchmuh
Flag of France image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of ghp7000
ghp7000

One thing you can try while you are waiting to install more memory is to shut down all un necessary programs that are running in the background. This means do not keep Micorsoft Office open for example, or any other program other than DB2.
Then retry your script. If you still get this message, you need more physical memory in the machine, or increase the swap file space under Windows, but it will slow down dB2 if you do. If your script runs, you can start opening those previously closed programs one by one and retrying your script until you egt the memory error. Then you will know how many programs (background processes) you can keep open while running DB2.
Experts: You have replied nicely but what remains is:
3) a) CONFIG.SYS e) and g)
According to you, the suggested user response was only for DB2 prior to release 2.
a) CONFIG.SYS has NOTHING to do with DB2 on WINNT or Win2000

e) You are not using remote procedures and this was although related to your CONFIG.SYS as it claims for more space on environment variable (An old DOS related problem !!!)

g) You are not using OS2 at all

==> I agree that, sometimes, editor's posts related to old release may help to answer current release troubles but not that old (Those was DOS or OS2 related...)

By the way, did you check your DB_HEAP, APP_CTL_HEAP_SZ and QUERY_HEAP_SZ parameters according to the "Calculating Database Shared Memory" Ref# 1053589 IBM post ?
Actually, that is true, you can recalculate your memory requirements and therefore REDUCE the values that DB_HEAP, APP_CTL_HEAP_SZ and all the other memory related parameters hold.