[CBRD-26477] Implement LOB file move instead of copy during INSERT#6886
[CBRD-26477] Implement LOB file move instead of copy during INSERT#6886InChiJun merged 66 commits intoCUBRID:developfrom
Conversation
|
/run all |
|
/run all |
|
/run all |
|
참고
|
|
🗑️ TC Branch Finalized for Engine PR was closed (not merged). Cleanup Results: TC develop branch is ready for the next PR. |
|
🗑️ TC Branch Finalized for Engine PR was closed (not merged). Cleanup Results: TC develop branch is ready for the next PR. |
🧪 TC Test Environment ReadyCircleCI Testing:
TC Repositories & Branches:
Next Steps:
|
|
Reviews (24): Last reviewed commit: "Merge remote-tracking branch 'upstream/d..." | Re-trigger Greptile |
|
/run all |
|
Reviews (25): Last reviewed commit: "refactor slob_*_dir()" | Re-trigger Greptile |
Important Files Changed
Reviews (28): Last reviewed commit: "Remove unnecessary call assert()" | Re-trigger Greptile |
|
/run all |
|
✅ TC Branch Finalized for Engine PR was merged. Cleanup Results:
TC base branch is ready for the next PR. |
|
✅ TC Branch Finalized for Engine PR was merged. Cleanup Results:
TC base branch is ready for the next PR. |
…py during INSERT (CUBRID#6886)
…py during INSERT (CUBRID#6886)
…UBRID#6886) http://jira.cubrid.org/browse/CBRD-26477 Modified LOB data insertion to perform a move operation rather than a copy operation.
…UBRID#6886) http://jira.cubrid.org/browse/CBRD-26477 Modified LOB data insertion to perform a move operation rather than a copy operation.
http://jira.cubrid.org/browse/CBRD-26477
Purpose
#6833 이후 서브 이슈로 진행되는 PR입니다.
LOB 데이터 삽입 시 temp file을 copy하지 않고 move 하도록 합니다.
Implementation
#6833 의 구현은 db_elo_copy_with_prefix() ~> xes_posix_copy_file_with_prefix() 로 수행되는 콜스택 하나만 존재했습니다.
이 PR에서는 elo_copy_with_prefix() 함수를 수정하여 STATE에 따라 move/copy 동작으로 분기하도록 구현하였습니다.
AS-IS
-> STATE에 상관 없이 copy 동작만 수행
TO-BE
-> STATE에 따라 다른 동작(각 STATE의 상황은 이슈 description을 참고하시면 됩니다.)
Remarks
이 PR의 core를 담당하는 db_elo_copy_with_prefix() 함수 외에 다른 함수도 수정되었습니다.
slob_remove_dir()
-> 반영되지 않은 commit 반영
lob_process_dir_add_attr()
-> 함수명 변경
-> 로직 변경 (lob_attrid_arr_length는 2 이하일 가능성이 높기 때문에, 조건문 순서를 우선으로 변경)
-> 코드 가독성 (중복된 for문을 한 곳에서 수행하도록 변경)
lob_process_dir_drop_attr()
-> 함수명 변경
locator_lob_process_dir()
-> 로직 변경 (lob_attrid_arr_length는 2 이하일 가능성이 높기 때문에, 조건문 순서를 우선으로 변경)
-> 코드 가독성 (중복된 for문을 한 곳에서 수행하도록 변경)