You are viewing a plain text version of this content. The canonical link for it is here.
Posted to reviews@kudu.apache.org by "Alexey Serbin (Code Review)" <ge...@cloudera.org> on 2024/05/14 19:55:51 UTC

[kudu-CR] [tablet] fix race accessing OpState's start time

Alexey Serbin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/21427


Change subject: [tablet] fix race accessing OpState's start time
......................................................................

[tablet] fix race accessing OpState's start time

This patch addresses a race reported by TSAN with traces like below:

WARNING: ThreadSanitizer: data race (pid=11024)
  Write of size 8 at 0x7b580011f260 by thread T174:
    #0 kudu::tablet::OpState::set_start_time(kudu::MonoTime) src/kudu/tablet/ops/op.h:274:58
    #1 kudu::tablet::WriteOp::Start() src/kudu/tablet/ops/write_op.cc:273:11
    #2 kudu::tablet::OpDriver::Prepare() src/kudu/tablet/ops/op_driver.cc:329:7
    #3 kudu::tablet::OpDriver::PrepareTask() src/kudu/tablet/ops/op_driver.cc:249:31
    ...

  Previous read of size 8 at 0x7b580011f260 by thread T5 (mutexes: write M835553159786377312):
    #0 kudu::tablet::OpState::start_time() const src/kudu/tablet/ops/op.h:272:40
    #1 kudu::tablet::WriteOp::ToString() const src/kudu/tablet/ops/write_op.cc:378:36
    #2 kudu::tablet::OpDriver::ToStringUnlocked() const src/kudu/tablet/ops/op_driver.cc:209:23
    #3 kudu::tablet::OpDriver::ToString() const src/kudu/tablet/ops/op_driver.cc:203:10
    #4 kudu::tablet::TabletReplica::GetInFlightOps(...) const src/kudu/tablet/tablet_replica.cc:728:41
    #5 kudu::tserver::TabletServerPathHandlers::HandleTransactionsPage(...) src/kudu/tserver/tserver_path_handlers.cc:286:14
    ...

Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
---
M src/kudu/tablet/ops/op.h
1 file changed, 1 insertion(+), 1 deletion(-)



  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/27/21427/1
-- 
To view, visit http://gerrit.cloudera.org:8080/21427
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
Gerrit-Change-Number: 21427
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>

[kudu-CR] [tablet] fix race accessing OpState's start time

Posted by "Abhishek Chennaka (Code Review)" <ge...@cloudera.org>.
Abhishek Chennaka has posted comments on this change. ( http://gerrit.cloudera.org:8080/21427 )

Change subject: [tablet] fix race accessing OpState's start time
......................................................................


Patch Set 1: Code-Review+2


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
Gerrit-Change-Number: 21427
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: KeDeng <kd...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Comment-Date: Tue, 14 May 2024 22:18:17 +0000
Gerrit-HasComments: No

[kudu-CR] [tablet] fix race accessing OpState's start time

Posted by "Abhishek Chennaka (Code Review)" <ge...@cloudera.org>.
Abhishek Chennaka has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/21427 )

Change subject: [tablet] fix race accessing OpState's start time
......................................................................

[tablet] fix race accessing OpState's start time

This patch addresses a race reported by TSAN with traces like below:

WARNING: ThreadSanitizer: data race (pid=11024)
  Write of size 8 at 0x7b580011f260 by thread T174:
    #0 kudu::tablet::OpState::set_start_time(kudu::MonoTime) src/kudu/tablet/ops/op.h:274:58
    #1 kudu::tablet::WriteOp::Start() src/kudu/tablet/ops/write_op.cc:273:11
    #2 kudu::tablet::OpDriver::Prepare() src/kudu/tablet/ops/op_driver.cc:329:7
    #3 kudu::tablet::OpDriver::PrepareTask() src/kudu/tablet/ops/op_driver.cc:249:31
    ...

  Previous read of size 8 at 0x7b580011f260 by thread T5 (mutexes: write M835553159786377312):
    #0 kudu::tablet::OpState::start_time() const src/kudu/tablet/ops/op.h:272:40
    #1 kudu::tablet::WriteOp::ToString() const src/kudu/tablet/ops/write_op.cc:378:36
    #2 kudu::tablet::OpDriver::ToStringUnlocked() const src/kudu/tablet/ops/op_driver.cc:209:23
    #3 kudu::tablet::OpDriver::ToString() const src/kudu/tablet/ops/op_driver.cc:203:10
    #4 kudu::tablet::TabletReplica::GetInFlightOps(...) const src/kudu/tablet/tablet_replica.cc:728:41
    #5 kudu::tserver::TabletServerPathHandlers::HandleTransactionsPage(...) src/kudu/tserver/tserver_path_handlers.cc:286:14
    ...

Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
Reviewed-on: http://gerrit.cloudera.org:8080/21427
Tested-by: Kudu Jenkins
Reviewed-by: Abhishek Chennaka <ac...@cloudera.com>
---
M src/kudu/tablet/ops/op.h
1 file changed, 1 insertion(+), 1 deletion(-)

Approvals:
  Kudu Jenkins: Verified
  Abhishek Chennaka: Looks good to me, approved

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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
Gerrit-Change-Number: 21427
Gerrit-PatchSet: 2
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: KeDeng <kd...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)

[kudu-CR] [tablet] fix race accessing OpState's start time

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21427 )

Change subject: [tablet] fix race accessing OpState's start time
......................................................................


Patch Set 1: Verified+1

Build Successful 

http://jenkins.kudu.apache.org/job/pre_commit/145/ : SUCCESS


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
Gerrit-Change-Number: 21427
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Abhishek Chennaka <ac...@cloudera.com>
Gerrit-Reviewer: KeDeng <kd...@gmail.com>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Comment-Date: Tue, 14 May 2024 20:59:37 +0000
Gerrit-HasComments: No

[kudu-CR] [tablet] fix race accessing OpState's start time

Posted by "Kudu Jenkins (Code Review)" <ge...@cloudera.org>.
Kudu Jenkins has posted comments on this change. ( http://gerrit.cloudera.org:8080/21427 )

Change subject: [tablet] fix race accessing OpState's start time
......................................................................


Patch Set 1:

Build Started http://jenkins.kudu.apache.org/job/pre_commit/145/


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

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I52de0840aa20f64cf15c7a9da2d553257c7e85e7
Gerrit-Change-Number: 21427
Gerrit-PatchSet: 1
Gerrit-Owner: Alexey Serbin <al...@apache.org>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Comment-Date: Tue, 14 May 2024 19:56:01 +0000
Gerrit-HasComments: No