Skip to content
  • Jan Wedvik's avatar
    d94d8143
    This commit fixes bug #19976428 ("reports failing with 'out of · d94d8143
    Jan Wedvik authored
    longmessagebuffer' error"), and a set of other issues related to the
    pool of "Fired Trigger" records.
    
    When exhausting the fired triggers pool, cluster wrongly issues the error
    message 218 (Out of LongMessageBuffer). This commit adds a new error code
    (221) for that situation. In addition, the commit fixes one more case where
    218 may wrongly be reported.
    Other issues fixed by this commit:
    
    * Setting low values for MaxNoOfFiredTriggers trigers an error in DLMHashTable
    template. The DLMHashTable fails to allocate memory if there is just one hash 
    bucket.
    
    * This commit ensures that a transaction releases any "fired trigger" records
    it holds when it aborts. Earlier, these records would be held until the 
    ApiConnectRecord was reused by another transaction.
    
    * For the "Fired Trigger" pool in ndbinfo.ndb$pools, 'high' would always equal 
    'total'. This was beacuse all records were momentarily seized when initializing them.
    This commit fixes that, so that 'high' gives the maximal value *after*
    initialization.
    d94d8143
    This commit fixes bug #19976428 ("reports failing with 'out of
    Jan Wedvik authored
    longmessagebuffer' error"), and a set of other issues related to the
    pool of "Fired Trigger" records.
    
    When exhausting the fired triggers pool, cluster wrongly issues the error
    message 218 (Out of LongMessageBuffer). This commit adds a new error code
    (221) for that situation. In addition, the commit fixes one more case where
    218 may wrongly be reported.
    Other issues fixed by this commit:
    
    * Setting low values for MaxNoOfFiredTriggers trigers an error in DLMHashTable
    template. The DLMHashTable fails to allocate memory if there is just one hash 
    bucket.
    
    * This commit ensures that a transaction releases any "fired trigger" records
    it holds when it aborts. Earlier, these records would be held until the 
    ApiConnectRecord was reused by another transaction.
    
    * For the "Fired Trigger" pool in ndbinfo.ndb$pools, 'high' would always equal 
    'total'. This was beacuse all records were momentarily seized when initializing them.
    This commit fixes that, so that 'high' gives the maximal value *after*
    initialization.
Loading