View Only
  • 1.  Virtual segments on SDS server

    Posted Fri October 15, 2021 07:21 AM
    Hello everyone.

    We are running 14.10 in SDS mode. Roughly 2 weeks ago a heavy update was performed on the primary which resulted in a lot of 

    9/29/2021 13:32:10 Dynamically allocated new virtual shared memory segment (size 134400KB)

    on the secondary (48 segments were allocated). The problem is that these segments are all still in use (blkfree=1) so onmode -F won't work. No allocation took place on the primary during this update.
    Is this normal?
    The primary does allocate new segments from time to time but they can always be freed after the session causing the allocation has finished.
    I've had this issue before and then I had to reboot the secondary to get rid of these segments.

    Thanks in advance,

    Snorri Bergmann

  • 2.  RE: Virtual segments on SDS server

    Posted Sun October 17, 2021 06:11 PM

    onstat -g afr

    What is the fragment in each additional shared memory segment?

    Which thread does that come from?

    Is that ffrom a user session?



    David Williams

  • 3.  RE: Virtual segments on SDS server

    Posted Mon October 18, 2021 11:58 AM
    Thanks David.

    I'm not sure how I can determine the thread the segment(s) belong to. But they don't belong to any running session, that's for sure.

    Best regards,

    Snorri Bergmann

  • 4.  RE: Virtual segments on SDS server

    Posted Fri December 24, 2021 09:19 AM
    On a stand-alone database server, I often encounter the phenomenon that there are many V segments (blkfree = 1), so onmode - F will not work.
    Once, segment V was allocated quickly when an application of the developer was started. The final positioning was that there was a problem with the writing of the application.
    But more often it is impossible to locate who caused it.

    ZhiWei Cui

  • 5.  RE: Virtual segments on SDS server

    Posted Fri December 24, 2021 09:36 AM
    Just a thought...If the lock table was dynamically expanded during the big update, they may allocate space in additional virtual memory segments, and thereby prevent you from releasing the segments with onmode -F

    If this happened, you will see messages in the Informix log, and onstat -k | tail will show if there were any lock table overflows.

    Mike Walker
    xDB Systems, Inc