YottaDB / YDB

Mirrored from https://gitlab.com/YottaDB/DB/YDB
Other
76 stars 37 forks source link

Various issues with GTM-8182 changes (to support multiple replication instances) in V6.3-003 #312

Closed nars1 closed 6 years ago

nars1 commented 6 years ago

Final Release Note

Description

Various issues were identified during a code review of the GTM-8182 enhancement (in GT.M V6.3-003).

  1. REPLINSTMISMTCH error gets issued incorrectly when updates are done to multiple instances using extended references (tested by r124/ydb312_gtm8182f subtest).
  2. A fatal GTMASSERT2 error is issued incorrectly in some cases (tested by r124/ydb312_gtm8182e subtest).
  3. A fatal SIG-11 (aka KILLBYSIGSINFO1/SIGMAPERR) error is issued incorrectly in some cases. In fact, this does not even require multiple instances. Just one replication instance is enough (tested by r124/ydb312_gtm8182d subtest).
  4. An error in a database file turns instance freeze ON in the wrong instance in some cases (tested by r124/ydb312_gtm8182c subtest).
  5. Repeatedly using PEEKBYNAME on the journal pool when the latter is not up causes a memory leak (tested by r124/ydb312_gtm8182b subtest).
  6. A process incorrectly attaches a database region to an instance file at the first access to the region instead of at the first update to the region when gtm_custom_errors is not defined (tested by r124/ydb312_gtm8182a subtest).

Draft Release Note

Updates to database files corresponding to multiple replication instances works correctly in the same process. Previously it was possible in various cases for the process to incorrectly a) issue REPLINSTMISMTCH errors or b) terminate with a fatal GTMASSERT2 error or c) terminate with a fatal KILLBYSIGSINFO1/SIGMAPERR/SIG-11 error or d) set instance freeze on the wrong instance or e) cause a memory leak when using PEEKBYNAME on the journal pool or f) attach to the journal pool even though no update was attempted on the corresponding database file.