[
https://issues.apache.org/jira/browse/TRAFODION-2946?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16496928#comment-16496928
]
ASF GitHub Bot commented on TRAFODION-2946:
-------------------------------------------
Github user sandhyasun commented on a diff in the pull request:
https://github.com/apache/trafodion/pull/1586#discussion_r192185716
--- Diff: core/sql/executor/ExExeUtilLoad.cpp ---
@@ -3459,6 +3458,25 @@ short ExExeUtilLobUpdateTcb::work()
char outLobHandle[LOB_HANDLE_LEN];
Int32 outHandleLen;
Int64 requestTag = 0;
+ if (lobTdb().lobLocking())
+ {
+ ExpLOBoper::genLobLockId(uid,lobNum,lobLockId_);
+ NABoolean found = FALSE;
+ retcode = SQL_EXEC_CheckLobLock(lobLockId_ , &found);
+ if (! retcode && !found)
+ {
+ retcode = SQL_EXEC_SetLobLock(lobLockId_);
--- End diff --
Will add the error condition for non zero retcode too.
> LOB : Locking/transaction support needed for LOB files for DDL and IUD
> operations
> ----------------------------------------------------------------------------------
>
> Key: TRAFODION-2946
> URL: https://issues.apache.org/jira/browse/TRAFODION-2946
> Project: Apache Trafodion
> Issue Type: New Feature
> Components: dtm, sql-general
> Affects Versions: any
> Reporter: Sandhya Sundaresan
> Assignee: Sandhya Sundaresan
> Priority: Major
> Attachments: Locking issue for concurrent access of LOBs.docx
>
>
> Trafodion DTM needs to recognize LOB HDFS data files that contain the actual
> critical data for a LOB column and treat them as part of the Trafodion object
> that contains the LOB column. The Trafodion table itself contains the LOB
> handle that can be used to derive the LOB data file name/location.
> DDL operations performed on LOB tables today only work on the Trafodion
> table. The dependent HDFS data files are not treated as part of the DDL
> transaction. ANy parallel operations or errors during create/drop will leave
> the table in an inconsistent state.
>
> DML operations on any LOB table only work on the LOB table and it's dependent
> descriptor tables that are also Trafodion tables (contain offset/length
> information in the HDFS data file for each LOB column). But the HDFS data
> file operation is not covered as part of the transaction. So any IUD error
> will leave the LOB table in an inconsistent state .
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)