Huaisi Xu has submitted this change and it was merged.

Change subject: IMPALA-3093: ReopenClient() could NULL out 'client_key' causing 
a crash
......................................................................


IMPALA-3093: ReopenClient() could NULL out 'client_key' causing a crash

When ReopenClient() calls CreateClient() and CreateClient() fails, it
sets 'client_key' to NULL. ReopenClient(), then on seeing that
CreateClient() has failed has to restore the old client key back to
the 'client_key' so that it doesn't remain NULL.

However, there was a bug in the logic which made 'old_client_key' and
'client_key' point to the same thing thereby effectively leaving
'client_key' permanently NULLed out (because even old_client_key got
NULLed out). This on use (mostly in DoRpc()), caused a crash.

This patch fixes the logic so that the correct old client key is
restored on a failure to CreateClient().

Change-Id: I16699534d5e48acfc2720f23e420d63af7bd2931
Reviewed-on: http://gerrit.cloudera.org:8080/2338
Reviewed-by: Tim Armstrong <[email protected]>
Reviewed-by: Henry Robinson <[email protected]>
Reviewed-by: Silvius Rus <[email protected]>
Tested-by: Internal Jenkins
(cherry picked from commit b45ad069d17967e977c2ad7a235655586046ead3)
Reviewed-on: http://gerrit.cloudera.org:8080/2352
Reviewed-by: Sailesh Mukil <[email protected]>
Reviewed-by: Juan Yu <[email protected]>
Tested-by: Huaisi Xu <[email protected]>
---
M be/src/runtime/client-cache.cc
1 file changed, 2 insertions(+), 2 deletions(-)

Approvals:
  Huaisi Xu: Verified
  Juan Yu: Looks good to me, approved
  Sailesh Mukil: Looks good to me, but someone else must approve



-- 
To view, visit http://gerrit.cloudera.org:8080/2352
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I16699534d5e48acfc2720f23e420d63af7bd2931
Gerrit-PatchSet: 2
Gerrit-Project: Impala
Gerrit-Branch: cdh5-2.2.0_5.4.x
Gerrit-Owner: Huaisi Xu <[email protected]>
Gerrit-Reviewer: Henry Robinson <[email protected]>
Gerrit-Reviewer: Huaisi Xu <[email protected]>
Gerrit-Reviewer: Internal Jenkins
Gerrit-Reviewer: Juan Yu <[email protected]>
Gerrit-Reviewer: Sailesh Mukil <[email protected]>
Gerrit-Reviewer: Silvius Rus <[email protected]>
Gerrit-Reviewer: Tim Armstrong <[email protected]>

Reply via email to