List Info

Thread: GC lossage




GC lossage
user name
2006-11-10 20:53:24
Hello,

We have recently been seeing processes dropping into ldb
under 19c with GC lossage errors (example errors with
backtraces at the end of this post). I haven't yet tested
under 19d pre-release because I don't yet have any way of
reliably triggering this behavior; I've seen this only on
production servers.

I did see this in the 19d (pre-)release notes:

      - Some issues with GC of weak pointers and weak
hash-tables have
        been fixed.  (CMUCL would sometimes crash to ldb
about weird,
        invalid objects.)  There are, however, still issues
with weak
        pointers.

Is it this issue to which the notes are referring?

Thanks,

--Eli

Example 1:

*A2 gc_alloc_large failed, nbytes=272.
 CMUCL has run out of dynamic heap space (512 MB).
  You can control heap size with the -dynamic-space-size
commandline option.
NOT BOXED: 5ff96000 660f6000 77efd000
GC lossage.  No scavenge function for object 0x00000006
LDB monitor
ldb> ba
Backtrace:
   0: Foreign fp = 0x3fff6324, ra = 0x804dcfd
   1: Foreign fp = 0x3fff6464, ra = 0x804df71
   2: Foreign fp = 0x3fff6524, ra = 0x804dfc8
   3: Foreign fp = 0x3fff6534, ra = 0x804f15e
   4: Foreign fp = 0x3fff6554, ra = 0x8059794
   5: Foreign fp = 0x3fff6584, ra = 0x8057d37
   6: Foreign fp = 0x3fff65b4, ra = 0x805af46
   7: Foreign fp = 0x3fff65e4, ra = 0x805c615
   8: Foreign fp = 0x3fff6624, ra = 0x805ca5d
   9: LISP::COLLECT-GARBAGE
  10: (COMMON-LISP::FLET G5 LISP::SUB-GC)
  11: LISP::SUB-GC
  12: LISP::MAYBE-GC
  13: (COMMON-LISP::FLET G0 COMMON-LISP::GETHASH)
  14: COMMON-LISP::GETHASH
  15: WCOF::GET-SERVICE
  16: (COMMON-LISP::METHOD IMHO::ASLEEP ()
(WCO::WEBCHECKOUT-SESSION))
  17: (COMMON-LISP::FLET G34)
  18: (COMMON-LISP::METHOD IMHO::GENERATE-RESPONSE ()
(IMHO::APPLICATION COMMON-LISP::T))
  19: (COMMON-LISP::METHOD IMHO::GENERATE-RESPONSE
(KEYWORD::AROUND) (WCO::WEBCHECKOUT COMMON-LISP::T))
  20: IMHO::HANDLE-REQUEST
  21: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST-RESPONSE
() (WCO-ARANEIDA::WCO-HANDLER COMMON-LISP::T COMM
ON-LISP::T))
  22: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST ()
(ARANEIDA::HANDLER COMMON-LISP::T))
  23: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST ()
(ARANEIDA::HANDLER COMMON-LISP::T))
  24: (COMMON-LISP::LABELS ARANEIDA:O-IT
ARANEIDA::SERVE-EVENT-HTTP-LISTENER-ACCEPT-ONE-REQUEST)
  25: ARANEIDA::SERVE-EVENT-HTTP-LISTENER-ACCEPT-ONE-REQUEST
  26: LISP::SUB-SERVE-EVENT
  27: SYSTEM::WAIT-UNTIL-FD-USABLE
  28: LISP:O-INPUT
  29: LISP::INPUT-CHARACTER
  30: LISP::SYNONYM-IN
  31: LISP::TWO-WAY-IN
  32: COMMON-LISP::READ-CHAR
  33: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  34: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  35: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  36: LISP::READ-INTERNAL
  37: COMMON-LISP::READ
  38: LISP::%TOP-LEVEL
  39: WCO::%INIT
  40: EXTENSIONS::EVAL-SWITCH-DEMON
  41: EXTENSIONS::INVOKE-SWITCH-DEMONS
  42: (COMMON-LISP::LABELS LISP::%RESTART-LISP
EXTENSIONS::SAVE-LISP)
  43: (COMMON-LISP::LABELS LISP::RESTART-LISP
EXTENSIONS::SAVE-LISP)

Example 2:

*A2 gc_alloc_large failed, nbytes=272.
 CMUCL has run out of dynamic heap space (512 MB).
  You can control heap size with the -dynamic-space-size
commandline option.
NOT BOXED: 64db3000 7772c000 77efd000
GC lossage.  No scavenge function for object 0x00000002
LDB monitor
ldb> ()
unknown command: ``()''
ldb> ba
Backtrace:
   0: Foreign fp = 0x3fff605c, ra = 0x804dcfd
   1: Foreign fp = 0x3fff619c, ra = 0x804df71
   2: Foreign fp = 0x3fff625c, ra = 0x804dfc8
   3: Foreign fp = 0x3fff626c, ra = 0x804f15e
   4: Foreign fp = 0x3fff628c, ra = 0x8059794
   5: Foreign fp = 0x3fff62bc, ra = 0x8057d37
   6: Foreign fp = 0x3fff62ec, ra = 0x805af46
   7: Foreign fp = 0x3fff631c, ra = 0x805c615
   8: Foreign fp = 0x3fff635c, ra = 0x805ca5d
   9: LISP::COLLECT-GARBAGE
  10: (COMMON-LISP::FLET G5 LISP::SUB-GC)
  11: LISP::SUB-GC
  12: LISP::MAYBE-GC
  13: (COMMON-LISP::FLET G0 COMMON-LISP::GETHASH)
  14: COMMON-LISP::GETHASH
  15: ALIEN::ALIEN-TYPE-CLASS-OR-LOSE
  16: ALIEN::COMPUTE-LISP-REP-TYPE
  17: ALIEN::ALIEN-TYPEP
  18: (COMMON-LISP::METHOD CLSQL-SYS:ATABASE-
EXECUTE-COMMAND () (COMMON-LISP::T
CLSQL-POSTGRESQL::POSTGRESQL
-DATABASE))
  19: (COMMON-LISP::METHOD CLSQL-SYS::EXECUTE-COMMAND ()
(COMMON-LISP::STRING))
  20: (COMMON-LISP::METHOD CLSQL-SYS:ATABASE-
ABORT-TRANSACTION () (CLSQL-SYS:ATABASE)
)
  21: (COMMON-LISP::FLET G21)
  22: (COMMON-LISP::METHOD WCOF::PERFORM (KEYWORD::AROUND)
(WCOF::FRAMEWORK-COMMAND))
  23: (COMMON-LISP::METHOD IMHO::AWAKE (KEYWORD::BEFORE)
(WCO::CIRCULATION-FORM))
  24: "LAMBDA (G7186 G7187 G7188)"
  25: (COMMON-LISP::METHOD IMHO::GENERATE-RESPONSE ()
(IMHO::APPLICATION COMMON-LISP::T))
  26: (COMMON-LISP::METHOD IMHO::GENERATE-RESPONSE
(KEYWORD::AROUND) (WCO::WEBCHECKOUT COMMON-LISP::T))
  27: IMHO::HANDLE-REQUEST
  28: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST-RESPONSE
() (WCO-ARANEIDA::WCO-HANDLER COMMON-LISP::T COMM
ON-LISP::T))
  29: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST ()
(ARANEIDA::HANDLER COMMON-LISP::T))
  30: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST ()
(ARANEIDA::HANDLER COMMON-LISP::T))
  31: (COMMON-LISP::LABELS ARANEIDA:O-IT
ARANEIDA::SERVE-EVENT-HTTP-LISTENER-ACCEPT-ONE-REQUEST)
  32: ARANEIDA::SERVE-EVENT-HTTP-LISTENER-ACCEPT-ONE-REQUEST
  33: LISP::SUB-SERVE-EVENT
  34: SYSTEM::WAIT-UNTIL-FD-USABLE
  35: LISP:O-INPUT
  36: LISP::INPUT-CHARACTER
  37: LISP::SYNONYM-IN
  38: LISP::TWO-WAY-IN
  39: LISP::SYNONYM-IN
  40: COMMON-LISP::READ-CHAR
  41: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  42: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  43: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  44: LISP::READ-INTERNAL
  45: COMMON-LISP::READ
  46: LISP::%TOP-LEVEL
  47: WCO::START
  48: EXTENSIONS::EVAL-SWITCH-DEMON
  49: EXTENSIONS::INVOKE-SWITCH-DEMONS
  50: (COMMON-LISP::LABELS LISP::%RESTART-LISP
EXTENSIONS::SAVE-LISP)
  51: (COMMON-LISP::LABELS LISP::RESTART-LISP
EXTENSIONS::SAVE-LISP)

Example 3:

*A2 gc_alloc_new_region failed, nbytes=8.
 CMUCL has run out of dynamic heap space (512 MB).
  You can control heap size with the -dynamic-space-size
commandline option.
GC lossage.  No scavenge function for object 0x3c058bca
LDB monitor
ldb> ba
Backtrace:
   0: Foreign fp = 0x3fff62ec, ra = 0x804dcfd
   1: Foreign fp = 0x3fff642c, ra = 0x804df71
   2: Foreign fp = 0x3fff64ec, ra = 0x804dfc8
   3: Foreign fp = 0x3fff64fc, ra = 0x804f15e
   4: Foreign fp = 0x3fff651c, ra = 0x8059794
   5: Foreign fp = 0x3fff654c, ra = 0x8057d37
   6: Foreign fp = 0x3fff657c, ra = 0x805af46
   7: Foreign fp = 0x3fff65ac, ra = 0x805c615
   8: Foreign fp = 0x3fff65ec, ra = 0x805ca5d
   9: LISP::COLLECT-GARBAGE
  10: (COMMON-LISP::FLET G5 LISP::SUB-GC)
  11: LISP::SUB-GC
  12: LISP::MAYBE-GC
  13: (COMMON-LISP::FLET G0 COMMON-LISP::GETHASH)
  14: COMMON-LISP::GETHASH
  15: WCOF::GET-SERVICE
  16: (COMMON-LISP::METHOD IMHO::ASLEEP ()
(WCO::WEBCHECKOUT-SESSION))
  17: (COMMON-LISP::FLET G34)
  18: (COMMON-LISP::METHOD IMHO::GENERATE-RESPONSE ()
(IMHO::APPLICATION COMMON-LISP::T))
  19: (COMMON-LISP::METHOD IMHO::GENERATE-RESPONSE
(KEYWORD::AROUND) (WCO::WEBCHECKOUT COMMON-LISP::T))
  20: IMHO::HANDLE-REQUEST
  21: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST-RESPONSE
() (WCO-ARANEIDA::WCO-HANDLER COMMON-LISP::T COMM
ON-LISP::T))
  22: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST ()
(ARANEIDA::HANDLER COMMON-LISP::T))
  23: (COMMON-LISP::METHOD ARANEIDA::HANDLE-REQUEST ()
(ARANEIDA::HANDLER COMMON-LISP::T))
  24: (COMMON-LISP::LABELS ARANEIDA:O-IT
ARANEIDA::SERVE-EVENT-HTTP-LISTENER-ACCEPT-ONE-REQUEST)
  25: ARANEIDA::SERVE-EVENT-HTTP-LISTENER-ACCEPT-ONE-REQUEST
  26: LISP::SUB-SERVE-EVENT
  27: SYSTEM::WAIT-UNTIL-FD-USABLE
  28: LISP:O-INPUT
  29: LISP::INPUT-CHARACTER
  30: LISP::SYNONYM-IN
  31: LISP::TWO-WAY-IN
  32: COMMON-LISP::READ-CHAR
  33: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  34: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  35: LISP::READ-PRESERVING-WHITESPACE-INTERNAL
  36: LISP::READ-INTERNAL
  37: COMMON-LISP::READ
  38: LISP::%TOP-LEVEL
  39: WCO::%INIT
  40: EXTENSIONS::EVAL-SWITCH-DEMON
  41: EXTENSIONS::INVOKE-SWITCH-DEMONS
  42: (COMMON-LISP::LABELS LISP::%RESTART-LISP
EXTENSIONS::SAVE-LISP)
  43: (COMMON-LISP::LABELS LISP::RESTART-LISP
EXTENSIONS::SAVE-LISP)

GC lossage
user name
2006-11-10 22:54:50
>>>>> "Eli" == Eli Naeher
<enaeheronshored.com> writes:

    Eli> We have recently been seeing processes dropping
into ldb
    Eli> under 19c with GC lossage errors (example errors
with
    Eli> backtraces at the end of this post). I haven't
yet tested

Read the messages closely. They all say 

    CMUCL has run out of dynamic heap space (512 MB).
     You can control heap size with the -dynamic-space-size
commandline option.

It's a bug that you don't get the heap overflow restarts,
but that's
really irrelevant here.  You have run out of heap.  You can
use the
-dynamic-space-size option to increase your heap.

However, if you don't expect to be using 512 MB of heap,
then it might
be a problem.

    Eli> I did see this in the 19d (pre-)release notes:

    Eli>       - Some issues with GC of weak pointers and
weak hash-tables have
    Eli>         been fixed.  (CMUCL would sometimes
crash to ldb about weird,
    Eli>         invalid objects.)  There are, however,
still issues with weak
    Eli>         pointers.

    Eli> Is it this issue to which the notes are
referring?

I think this is relevant only if you using weak pointers or
weak
hash-tables.  Are you?

Ray


[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )