Hi

how to interpret the following lines and how can i make sure that the memory availability if it in case server throughs out of memory error

OS Available: 29400K, Working Set: 24680K, Cache Target: 89110K

thanks vhm

asked 26 Aug '13, 21:14

vhm's gravatar image

vhm
210131320
accept rate: 0%

edited 27 Aug '13, 08:14

Mark%20Culp's gravatar image

Mark Culp
23.0k9130270


The OS Available says that the OS is reporting only 29MB of free memory and that's pretty tight for most OSs. Do you have any other processes running with high memory demand? If there's only 29MB of memory free in the system and if the current cache size is the same as the target cache size (~29MB) I'd think you were running on a handheld device or that something else is using up lots of memory in your system.

The Working Set shows that the OS thinks that the database server has referenced about 25MB or memory "recently" and/or "frequently".

The Cache Target shows that the server thinks that 89MB would be a reasonable cache size given the state of the OS, the size of the databases, etc. Usually, the Cache Target is approximately OS Available + Working Set but limited to database sizes and the cache size lower & upper bounds (-cl, -ch). Since Cache Target is a fair bit larger than osavail+workingset, I'd guess that your min cache size is 89MB or so? Look at the startup messages: the min & max cache sizes are displayed there.

What command line switches were used to start the database and what is the size of the database? What OS are you using and how much memory is installed in the system?

permanent link

answered 26 Aug '13, 21:51

John%20Smirnios's gravatar image

John Smirnios
8.9k377112
accept rate: 39%

Hi John thanks for the clarification .. the SQL Anywhere Network Server Version 12.0.1.3894 is running on AIX shared with other application installed with 15 GB RAM in which 7GB is free and the server starting command is as follows dbsrv12 -c 256m -ch 1G -cs -gp 4096 -ud -n SERVER -xs "http(port=8080)"

The Database size is around 500MB

how to allocate more memory so that we wont encounter out of memory issue

thanks vhm

(27 Aug '13, 05:36) vhm
Replies hidden

Sorry, I misread the code. The Cache Target in that case doesn't accommodate the min cache size the way I thought it did. I'd say the server thinks that the size of all open database files is no more than 89MB, not 500MB. That's mysterious. I don't suppose you have multiple servers running and you copied a line from the wrong server's console log?

Can you paste the lines from the server startup that show min & max cache sizes? They will look something like the following:

1048576K of memory used for caching

Minimum cache size: 1048576K, maximum cache size: 7438452K

(27 Aug '13, 13:43) John Smirnios
Comment Text Removed

Running AIX 7 1 on PPC

Server built for PPC processor architecture

262144K of memory used for caching

Minimum cache size: 262144K, maximum cache size: 1048576K

Using a maximum page size of 4096 bytes

(27 Aug '13, 21:01) vhm

Now all the memory is used over the time and server shutdown by itself quite often .

(28 Aug '13, 21:22) vhm
Comment Text Removed
Comment Text Removed

Cache size adjusted to 940908K OS Available: 25556K, Working Set: 915432K,

Cache Target: 938 889K Fatal error: A disk write to file/tmp/.SQLAnywhere/serverr/tmp/tmp_000000" failed with error code: (27)

Connection terminated abnormally

I am hitting the above error while running report with more data what is the cause of the above error? do I need to allocate more space for temporary space to run long report?

thanks vhm

(29 Aug '13, 04:18) vhm

This sounds as there's not enough free space for the temporary file, either on the file system itself (is 27 the OS error?) or as specified with the max_temp_space option (though I would then expect a SQLSTATE_TEMP_SPACE_LIMIT SA error, which should not cancel the database connection...).

(29 Aug '13, 05:08) Volker Barth

What is the file system type used to store the temporary file? (In /tmp/ ?)

27 is ERRNO 27:

#define EFBIG 27 /* File too large */

Which is:

http://pic.dhe.ibm.com/infocenter/aix/v7r1/index.jsp?topic=%2Fcom.ibm.aix.basetechref%2Fdoc%2Fbasetrf2%2Fwrite.htm

An attempt was made to write a file that exceeds the process' file size limit or the maximum file size. If the user has set the environment variable XPG_SUS_ENV=ON prior to execution of the process, then the SIGXFSZ signal is posted to the process when exceeding the process' file size limit.

What is the ulimit for file sizes set to for the OS user running the database server?

(29 Aug '13, 09:19) Jeff Albion
1

I agree with Volker and Jeff -- that appears to be a problem with space (or a ulimit on the space) in /tmp.

(29 Aug '13, 12:21) John Smirnios

Thanks jeff. it was set to unlimited ,I didn't check and assume that it will take effect but actually it didn't due to some spaces in that particular user stanza in limits file. I have edited the limits file for file sizes set to unlimited for the OS user running the DB server and monitoring now .

Thanks vhm

(31 Aug '13, 09:58) vhm
More comments hidden
showing 3 of 9 show all flat view
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×412
×21

question asked: 26 Aug '13, 21:14

question was seen: 873 times

last updated: 31 Aug '13, 09:58