DB2 - Problem description
Problem IT31719 | Status: Closed |
ADDING A NEW TABLE USE FOR DISABLING VECTORIZED ADC | |
product: | |
DB2 FOR LUW / DB2FORLUW / B50 - DB2 | |
Problem description: | |
Previously, when we disable Vectorized ADC we would pass in a cached tableUse in the disableVectADCRPC message for other nodes to use to build a table accessor to disable vectorized ADC. This can cause several issues if the table accessor's table use causes it to perform unnecessary actions. For example, if the table use is TableIsUsedFor_FastInsert, then the table accessor will attempt to reserve an insert range when it does not need to. Thus, our solution to this problem is to create a new table use specifically for disabling Vectorized ADC that we will pass in disableVectADCRPC. This tableUse will allow the table accessor to bypass all of these unnecessary actions. If you are getting an assertion related to this issue, a key sign that you have this problem is if you see a message similar to the one posted below dumped in the CDE_DATA flight recorder (...CDE_SERVICES.CDE_DATA.events.fmt) inside the FODC_AppErr folder. Specifically, what makes this message abnormal is that we see "18" under Data4, but there is no Data5. If Data4 has "18" and Data5 is also present, that is normal. The reason why this issue occurs is that two threads are given the same logical thread ID, and both will try to reserve insert ranges, leading to an assertion. 7972 Event sequence number: 753479514 Time: TableAccessorAllocator::TableAccessorAllocator (3.220.935.0.126) PID: 24296 TID: 17712109515104 EDUID: 71004 APPHDL: 0-52215 Data1 (PD_TYPE_STRING,31) String: this / mAddressMode / mTableUse Data2 (PD_TYPE_PTR,8) Pointer: 0x00001019b3251d10 Data3 (PD_TYPE_UINT,4) unsigned integer: 0 Data4 (PD_TYPE_UINT,4) unsigned integer: 18 Stack: =========== -----Frame------ ------Address----- ------Function + Offset------ 0x0000101936FE7EA0 0x000010000008FE7C pthread_kill + 0x006c ( = offset 0xFE7C in /lib64/libpthread.so.0) 0x0000101936FE7ED0 0x000010000470C3AC _Z15sqldDumpContextP9sqeBsuEduiiiiiPKcPvi + 0x112c ( = offset 0x43AC3AC in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE85F0 0x000010000EB7EFB0 _Z15sqlrr_dump_ffdcP8sqlrr_cbii + 0x0790 ( = offset 0xE81EFB0 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE87F0 0x000010001062FE60 _Z13sqlzeDumpFFDCP8sqeAgentjP5sqlcai + 0x01a0 ( = offset 0x102CFE60 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE88B0 0x000010001062F974 _Z12sqlzeSqlCodeP8sqeAgentjmjP5sqlcaitPc + 0x02b4 ( = offset 0x102CF974 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE89F0 0x000010000ECFA884 sqlrrSqlCode + 0x0184 ( = offset 0xE99A884 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE8C60 0x0000100004BFEE7C _ZN7ibm_cde8services24AssertionFailedException4doneEv + 0x056c ( = offset 0x489EE7C in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE9140 0x0000100004BFFBC8 _ZN7ibm_cde8services24AssertionFailedException17constructAndThro wENS0_11ComponentIDEPKcmS4_S4_RNS0_16CdeOStringStreamE + 0x0108 ( = offset 0x489FBC8 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE9A50 0x0000100005ACDCFC _ZN7ibm_cde4data22InsertRangeDistributor18reserveInsertRangeEPNS 0_14CDEApplicationERNS0_13TableAccessorEPS4_m + 0x07cc ( = offset 0x576DCFC in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FE9F90 0x000010000517255C _ZN7ibm_cde4data14CDEApplication24findOrReserveInsertRangeERNS0_ 13TableAccessorEPS2_mRb + 0x067c ( = offset 0x4E1255C in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEA3A0 0x0000100005E3F34C _ZN7ibm_cde4data13TableAccessor24associateWithInsertRangeEPS1_mR b + 0x009c ( = offset 0x5ADF34C in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEA420 0x0000100005E166F0 _ZN7ibm_cde4data22TableAccessorAllocator34setupSharedTableAccess orsForInsertENS_8services18CountedPtrWithCopyINS0_13TableAccesso rELNS2_16CountedPtrDeleteE0ELNS2_19CountedPtrThreadingE1EEES7_ + 0x00c0 ( = offset 0x5AB66F0 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEA4E0 0x0000100005E1656C _ZN7ibm_cde4data22TableAccessorAllocator25allocTandemTableAccess orsERKSbIcSt11char_traitsIcENS_8services9AllocatorIcEEES9_RKNS0_ 7TableIDEm + 0x023c ( = offset 0x5AB656C in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEA620 0x0000100005E1579C _ZN7ibm_cde4data22TableAccessorAllocator18allocTableAccessorERKS bIcSt11char_traitsIcENS_8services9AllocatorIcEEES9_RKNS0_7TableI DEm + 0x040c ( = offset 0x5AB579C in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEA780 0x0000100005E14794 _ZN7ibm_cde4data22TableAccessorAllocator23getTableAccessorNoStri pERKSbIcSt11char_traitsIcENS_8services9AllocatorIcEEES9_RKNS0_7T ableIDEm + 0x02a4 ( = offset 0x5AB4794 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEA940 0x0000100005D80E44 _ZN7ibm_cde4data22TableAccessorAllocator16getTableAccessorERKSbI cSt11char_traitsIcENS_8services9AllocatorIcEEES9_RKNS0_7TableIDE m + 0x0394 ( = offset 0x5A20E44 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEAAC0 0x0000100006495680 _ZN7ibm_cde4data23TableAccessorRPCHandler25getUpdatableTableAcce ssorEv + 0x0050 ( = offset 0x6135680 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) 0x0000101936FEAAF0 0x00001000064E2730 _ZN7ibm_cde4data17DisableVectADCRPC10processReqEv + 0x00b0 ( = offset 0x6182730 in /head/home/db2inst1/sqllib/lib64/libdb2e.so.1) .....etc | |
Problem Summary: | |
**************************************************************** * USERS AFFECTED: * * ALL * **************************************************************** * PROBLEM DESCRIPTION: * * See Error Description * **************************************************************** * RECOMMENDATION: * * Upgrade to Db2 11.5 Mod 2 Fixpack 0 or higher * **************************************************************** | |
Local Fix: | |
Disable Vectorized ADC using db2set command: DB2_CDE_COMPRESSION_SETTINGS="ENABLE_VECT_ADC:0" --Instance recycle needed. --Note, this may be a workaround to try until the complete fix is given by IBM, as enabling this has more performance impact. Also, once tested and if this registry helps solving the issue, then reset to original value and contact IBM support with the test outcome. --This registry is not a permanent fix ,just a temporary workaround to test if issue resolves. reset the registry: DB2_CDE_COMPRESSION_SETTINGS= --Instance recycle needed. | |
Solution | |
Workaround | |
not known / see Local fix | |
Timestamps | |
Date - problem reported : Date - problem closed : Date - last modified : | 31.01.2020 18.02.2020 18.02.2020 |
Problem solved at the following versions (IBM BugInfos) | |
Problem solved according to the fixlist(s) of the following version(s) |