impala-reviews mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Tauber-Marshall (Code Review)" <ger...@cloudera.org>
Subject [Impala-ASF-CR] IMPALA-5799: Kudu DML can crash if schema has changed
Date Wed, 16 Aug 2017 19:16:52 GMT
Thomas Tauber-Marshall has uploaded a new change for review.

  http://gerrit.cloudera.org:8080/7688

Change subject: IMPALA-5799: Kudu DML can crash if schema has changed
......................................................................

IMPALA-5799: Kudu DML can crash if schema has changed

We check that the number/types of columns in a Kudu DML match the
underlying table during analysis. However, its possible that the
schema may be modified between analysis and execution, and if its
modified in incompatible ways it can cause Impala to crash.

Once the KuduTable object has been opened by the KuduTableSink, its
schema will remain the same, so we can check in Open() that the schema
is what we're expecting.

If the schema changes between Open() and when the DML is sent to Kudu,
Kudu will send back an error and we already handle this gracefully.

Testing:
- Added an e2e test that concurrently inserts into a Kudu table while
  dropping and then adding a column. It relies on timing, but running
  in a loop locally it caused Impala to crash every time without this
  change.

Change-Id: I9fd6bf164310df0041144f75f5ee722665e9f587
---
M be/src/exec/kudu-table-sink.cc
M be/src/exec/kudu-util.cc
M be/src/exec/kudu-util.h
M tests/query_test/test_kudu.py
4 files changed, 77 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/88/7688/1
-- 
To view, visit http://gerrit.cloudera.org:8080/7688
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9fd6bf164310df0041144f75f5ee722665e9f587
Gerrit-PatchSet: 1
Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-Owner: Thomas Tauber-Marshall <tmarshall@cloudera.com>

Mime
View raw message