GitHub user sandhyasun opened a pull request:
https://github.com/apache/incubator-trafodion/pull/1230
Trafodion-2735 :LOB: Drop table/schema returns 8616 error but the drop
statement can't be retried
LOB drop table is not supported by DTM currently.
Each LOB tables contains 3 underlying Hbase tables and one or more HDFS
data files that contain the LOB data.
During drop the code used to delete all the HDFS files first and then drop
the LOB hbase tables.
This PR chnages that by doing 2 things 1. Move the code drop HDFS files
below the calls that drop the Hase tables. This way if there are any errors
during the Hbase drop tables, the TM will protect them and roll them back. The
HDFS files will stay intact. 2. Ignore errors from "File Not Found" errors when
dropping a LOB table.
The issue is that twhen a conflict occured between 2 sessions and the LOB
table lost its HDFS data but the LOB Hbase descriptor tables got rolled back. A
subsequenct drop from another session, expected the HDFS files to be there and
raised an error. SInce the HDFS files are not protected by TM, there is
currently no way to roll them back. So the current fix doe snot fully
addressthe issue but alleviates the issue and allows 2 streams of tests to run
and handle conflict errors just fine.
The real fix need to be in TM where the LOB data files are also protected
by a transaction.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/sandhyasun/incubator-trafodion
san_2.2traf_misc
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-trafodion/pull/1230.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1230
----
commit e8c09ebb678ab6560130bf687dc1e52c9b04d64a
Author: Sandhya Sundaresan <[email protected]>
Date: 2017-09-11T17:57:02Z
Changes to handle errors during drop of lob tables that leave the table
inconsistent.
(cherry picked from commit 749295ad774620d49db79d961b1bbacac8d589c7)
----
---