Document Type | Troubleshooting
Category | Monitoring/Inspection
Applicable Product Versions | 6FS06, 6FS07
Document Number | TMOTS029
Issue
During Parallel DPL (Direct Path Load) operation, a transaction rollback occurred, and an
Internal Error with condition '(cp->offset < l1blk->blkcnt)' error was triggered.Excerpt from sys.log
[2025-02-13T11:49:43.439228] [FRM-217] [I] THROW. ec=ERROR_TX_CANT_ALLOC_EXT(-21004) [ No more extent available in tablespace 'TS_XXXX'. ] (csr_id:4294967295) [tx_ts.c:1513:ts_extend] .. [2025-02-13T11:49:44.460000] [DPL-219] [I] Allocating DP sgmt: 1 [2025-02-13T11:49:44.460452] [DPL-220] [I] Allocating DP sgmt: 1 [2025-02-13T11:49:44.461300] [DPL-217] [I] Allocating DP sgmt: 1 [2025-02-13T11:49:44.576788] [DPL-219] [I] create dp temp sgmt: obj_id=41750, ts_id=8, shdrdba=22_00211017, extsize=16, lock_id=219.4375 [2025-02-13T11:49:44.578200] [DPL-217] [I] create dp temp sgmt: obj_id=41751, ts_id=8, shdrdba=37_00204649, extsize=16, lock_id=217.4377 .. [2025-02-13T13:28:43.592921] [TXR-102] [I] TX 0006.15.5444 recovery DONE [2025-02-13T13:28:43.701249] [COM-133] [I] Bucket dump generated by condition 'cp->offset < l1blk->blkcnt' [2025-02-13T13:28:43.701308] [COM-133] [I] Internal Error with condition '(cp->offset < l1blk->blkcnt)' (2 args) (tx_l1blk.c:184:redocp_tx_l1blk_set_bm_apply) (pid=489224, sessid=133, tid=133)
Excerpt from tbsvr.out file
[94] *** 2025/02/13 13:28:43.592 ***
[94] callstack dump from tbsvr_AGNT for [RSLV, 133, 489305/489224]
[133] Internal Error with condition: '(cp->offset < l1blk->blkcnt)' (2 args) (tx_l1blk.c:184:redocp_tx_l1blk_set_bm_apply) (pid=489224, sessid=133, tid=133)
(cp->offset) = 255 = 255 = 0xff
(l1blk->blkcnt) = 0 = 0 = 0x0
[133] client : ip [] process [TX RECOVERY SLAVE] logon time : [2025/02/13 13:28:43]
[133] prev sql : "NULL"
[133] current sql : "NULL"
pstack(/usr/bin/pstack) access failed. cannot dump
[94] *** 2025/02/13 13:28:43.701 ***
[94] callstack dump from tbsvr_AGNT for [RSLV, 133, 489305/489224]
================================
Thread #133 (Session #133): tb_thread_exit: (signo:0, sigtype:15)
[133] *** FATAL ASSERT INSIDE SIGNAL(0) HANDLER (PID=489224, TID=133, SESSID=133):
tbsvr_signal.c:652 (tb_thread_exit_internal): Assertion '0' failed.
[0] ***** FATAL ASSERT (PID = 488998, TID = 0, SESSID = 0):
***** tbsvr_signal.c:1951 (sig_fatal_assert_handler): Assertion 'false' failed.
***** Program: tbsvr -startup -t NORMAL -SVR_SID XXXXCause
A transaction rollback occurred due to tablespace space shortage during Parallel DPL execution.
In this process,
wlock_dp_temp_sgmt (hereafter wlock) was released first, and subsequently, other blocks overwrote the Temp Segment space, causing a consistency error.Solutions
Apply the FS06_CS_253829a patch to resolve the issue.
- FS06_CS_253829a: This patch modifies the logic to perform transaction rollback first and then release the wlock when extent allocation fails due to tablespace full.
When applying the binary with the patch applied (including previously applied) or newly applying patch 253829a, patch 273422a must also be applied together.
- 273422a: This patch removes the issue of WLOCK_DP_TEMP_SGMT being released redundantly during PDPL (Parallel Direct Path Load) execution.
CautionApply the patch through technical support provided by Tmax Tibero.