Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Res: Solaris - Memory allocation error - Solved

72 views
Skip to first unread message

Cesar Inacio Martins

unread,
Sep 5, 2008, 4:35:11 PM9/5/08
to informix-list cdi
    This situation are solved... was a my mistake.
    I interpreted wrong the machine notes. Where i believed the parameters are automatically configured on the Solaris 10 and the man of rctladm not help to clarify.
    I just set all semaphores and memory configurations like suggested to Solaris 9 and now works fine! 21GB (5GB SHARED + 16GB BUFFER)
   
    Here is the text what confusing my mind.
1.  Kernel Parameters

    a) The values of the kernel parameters that were used for testing this
       product on Solaris 9 systems are given below. These values might need
       to be tuned depending on the application and availability of system
       resources. These entries are in /etc/system.

       set semsys:seminfo_semmap=64
       set semsys:seminfo_semmni=4096
       set semsys:seminfo_semmns=4096
       set semsys:seminfo_semmnu=4096
       set semsys:seminfo_semume=64
       set semsys:seminfo_semmsl=500
       set shmsys:shminfo_shmmax=4398046511104
       set shmsys:shminfo_shmmin=100
       set shmsys:shminfo_shmmni=500
       set shmsys:shminfo_shmseg=100

       The value of the kernel parameter "semmsl" should be set to at least
       100. This is the maximum number of semaphores per set.

    b) On Solaris 10, all System V IPC facilities are either automatically
       configured or can be controlled by resource controls.

       The following kernel parameters are either removed or commented out
       from /etc/system:

       semsys:seminfo_semmap
       semsys:seminfo_semmns
       semsys:seminfo_semmnu
       semsys:seminfo_semume
       shmsys:shminfo_shmmin
       shmsys:shminfo_shmseg

       The following obsolete IPC tunables are replaced by their resource
       controls with the new default values:

       The following obsolete IPC tunables are replaced by their resource
       controls with the new default values:

       semsys:seminfo_semmni
       semsys:seminfo_semmsl
       shmsys:shminfo_shmmax
       shmsys:shminfo_shmmni

       Refer to rctladm(1m) man page for more information about available
       resource controls.


 


----- Mensagem original ----
De: Cesar Inacio Martins <cesar_inac...@yahoo.com.br>
Para: informix-list cdi <inform...@iiug.org>
Enviadas: Quinta-feira, 4 de Setembro de 2008 15:31:57
Assunto: Solaris - Memory allocation error

Hi,

    I'm preparing a evaluating environment on Sun Solaris 10 SPARC with IDS 11.50 FC1TL (Time Limited).

The Version of Solaris is:
    # isainfo -v
    64-bit sparcv9 applications
            asi_blk_init vis2 vis
    32-bit sparc applications
            asi_blk_init vis2 vis v8plus div32 mul32
    # uname -a
    SunOS unknown 5.10 Generic_127111-09 sun4v sparc SUNW,SPARC-Enterprise-T5120
    # cat /etc/release
                       Solaris 10 8/07 s10s_u4wos_12b SPARC
           Copyright 2007 Sun Microsystems, Inc.  All Rights Reserved.
                        Use is subject to license terms.
                            Assembled 16 August 2007

I know this version is't the last update... and no patches are installed.
This machine have 32GB of memory.

When try to start the IDS with more then 8GB TOTAL (Buffer+Shared), a memory allocation error occurr, see this situations:

------- THIS WORK! ------- SHM = 3.7GB    BUFFER = 4GB -------
    > egrep "^SHM|^BUFFER" onconfig.sv
    SHMBASE 0x10A000000L
    SHMVIRTSIZE 3700000
    SHMADD 1024000
    SHMTOTAL 28672000
    SHMVIRT_ALLOCSEG 0,3
    SHMNOACCESS
    BUFFERPOOL          default,buffers=10000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000
    BUFFERPOOL      size=4K,buffers=1000000,lrus=128,lru_min_dirty=50.000000,lru_max_dirty=60.500000
    BUFFERPOOL      size=2K,buffers=10000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000

    >onstat -m
    15:04:51  IBM Informix Dynamic Server Started.
    15:04:51  Requested shared memory segment size rounded from 4299776KB to     4325376KB
    15:04:56  Segment locked: addr=10a000000, size=4429185024
    15:04:56  Requested shared memory segment size rounded from 3700000KB to     3702784KB
    15:05:01  Segment locked: addr=212000000, size=3791650816
    ...
    15:05:13  On-Line Mode

    >onstat -g seg
    id         key        addr             size             ovhd     class     blkused  blkfree
    19         52604801   10a000000        4429185024       52335944 R*        1074796  6548
    20         52604802   212000000        3791650816       44435248 V*    17874    907822


------- THIS NOT WORK! ------- SHM = 3.9GB    BUFFER = 4GB -------
    > egrep "^SHM|^BUFFER" onconfig.sv
    SHMBASE 0x10A000000L
    SHMVIRTSIZE 3900000
    SHMADD 1024000
    SHMTOTAL 28672000
    SHMVIRT_ALLOCSEG 0,3
    SHMNOACCESS
    BUFFERPOOL          default,buffers=10000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000
    BUFFERPOOL      size=4K,buffers=1000000,lrus=128,lru_min_dirty=50.000000,lru_max_dirty=60.500000
    BUFFERPOOL      size=2K,buffers=10000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000

    >onstat -m
    15:08:57  IBM Informix Dynamic Server Started.
    15:08:57  Requested shared memory segment size rounded from 4299776KB to     4325376KB
    15:09:02  Segment locked: addr=10a000000, size=4429185024
    15:09:02  Requested shared memory segment size rounded from 3900000KB to     3932160KB
    15:09:05  shmget: [EINVAL][22]: key 52604803: invalid segment size
    15:09:06  mt_shm_init: can't create virtual segment

------- THIS NOT WORK! ------- SHM = 3.7GB    BUFFER = 4.4GB -------
    > egrep "^SHM|^BUFFER" onconfig.sv432_a_tcp
    SHMBASE 0x10A000000L
    SHMVIRTSIZE 3700000
    SHMADD 1024000
    SHMTOTAL 28672000
    SHMVIRT_ALLOCSEG 0,3
    SHMNOACCESS
    BUFFERPOOL          default,buffers=10000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000
    BUFFERPOOL      size=4K,buffers=1100000,lrus=128,lru_min_dirty=50.000000,lru_max_dirty=60.500000
    BUFFERPOOL              size=2K,buffers=10000,lrus=8,lru_min_dirty=50.000000,lru_max_dirty=60.500000

    >onstat -m
    15:10:59  IBM Informix Dynamic Server Started.
    15:10:59  Requested shared memory segment size rounded from 4761600KB to     4784128KB
    15:11:06  Segment locked: addr=10a000000, size=4898947072
    15:11:06  Requested shared memory segment size rounded from 3700000KB to     3702784KB
    15:11:08  shmget: [EINVAL][22]: key 52604803: invalid segment size
    15:11:09  mt_shm_init: can't create virtual segment
   
 
I followed the machine notes, where I set the kernel parameter on the /etc/system:
    set mmu_ism_pagesize=4194304
This not work.
I found more configurations about problem allocation on DB2, I try , without success:
    set disable_large_pages=0x30
    set disable_ism_large_pages=0x34

This could be a miss of any Solaris patches? or something on this Time Limited version?

One more think:
After reboot with mmu_ism_pagesize, I check with command bellow, and appear do not effected:
    # adb -k
    physmem 3f05b7
    mmu_ism_pagesize /D
    mmu_ism_pagesize:
    mmu_ism_pagesize:               0

so, then I try force the config:
    # adb -wk
    physmem 3f05b7
    mmu_ism_pagesize/W 0T4194304
    mmu_ism_pagesize:               0               =       0x400000

But, after this the IDS still get memory allocation error.

Thanks
Cesar




Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com.


Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com.
0 new messages