You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@impala.apache.org by "Csaba Ringhofer (Code Review)" <ge...@cloudera.org> on 2021/04/30 14:53:50 UTC

[Impala-ASF-CR] IMPALA-10691: Fix multithreading related crash in CAST FORMAT

Hello Zoltan Borok-Nagy, Impala Public Jenkins, 

I'd like you to reexamine a change. Please visit

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

to look at the new patch set (#3).

Change subject: IMPALA-10691: Fix multithreading related crash in CAST FORMAT
......................................................................

IMPALA-10691: Fix multithreading related crash in CAST FORMAT

The issue occurs when a CastFormatExpr is shared among threads and
multiple threads call its OpenEvaluator(). Later calls delete the
DateTimeFormatContext created by older calls which makes
fn_ctx->GetFunctionState() a dangling pointer.

This only happens when CastFormatExpr is shared among
FragmentInstances - in case of scanner threads OpenEvaluator() is
called with THREAD_LOCAL and returns early without modifying anything.

Testing:
- added a regression test

Change-Id: I501c8a184591b1c836b2ca4cada1f2117f9f5c99
---
M be/src/exprs/cast-format-expr.cc
M be/src/exprs/cast-format-expr.h
M testdata/workloads/functional-query/queries/QueryTest/cast_format_from_table.test
3 files changed, 23 insertions(+), 9 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/74/17374/3
-- 
To view, visit http://gerrit.cloudera.org:8080/17374
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I501c8a184591b1c836b2ca4cada1f2117f9f5c99
Gerrit-Change-Number: 17374
Gerrit-PatchSet: 3
Gerrit-Owner: Csaba Ringhofer <cs...@cloudera.com>
Gerrit-Reviewer: Impala Public Jenkins <im...@cloudera.com>
Gerrit-Reviewer: Zoltan Borok-Nagy <bo...@cloudera.com>