[kudu-CR] [client] make metacache reset safe
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16839 ) Change subject: [client] make metacache reset safe .. Patch Set 1: (1 comment) > Thanks for finding and fixing this! Thank you for fast review! http://gerrit.cloudera.org:8080/#/c/16839/1//COMMIT_MSG Commit Message: PS1: I also verified that the TxnManagerTest.BeginManyTransactions scenario no longer fails with similar warning once this fix applied. Before: http://dist-test.cloudera.org//job?job_id=aserbin.1607497251.54221 After: http://dist-test.cloudera.org//job?job_id=aserbin.1607497958.62002 The relevant part of the ASAN reports for TxnManagerTest.BeginManyTransactions before the fix was: AddressSanitizer: heap-use-after-free on address 0x606000569fd8 at pc 0x004d6d8a bp 0x7f83c62f27d0 sp 0x7f83c62f1f80 READ of size 1342177400 at 0x606000569fd8 thread T168 (rpc reactor-136) #0 0x4d6d89 in __asan_memcpy thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_interceptors_memintrinsics.cc:22:3273 #1 0x52f96d in std::char_traits::copy(char*, char const*, unsigned long) ../../../include/c++/8/bits/char_traits.h:352:33 #2 0x52f6eb in std::string::_Rep::_M_clone(std::allocator const&, unsigned long) ../../../include/c++/8/bits/basic_string.tcc:1081:2 #3 0x52f50d in std::basic_string, std::allocator >::basic_string(std::string const&) ../../../include/c++/8/bits/basic_string.tcc:611:35 #4 0x7f8429d95347 in kudu::client::internal::RemoteTabletServer::ToString() const src/kudu/client/meta_cache.cc:225:16 #5 0x7f842ace83db in kudu::rpc::RetriableRpc::SendRpcCb(kudu::Status const&) src/kudu/rpc/retriable_rpc.h:323:85 #6 0x7f842acf2400 in kudu::rpc::RetriableRpc::ReplicaFoundCb(kudu::Status const&, kudu::client::internal::RemoteTabletServer*)::'lambda'()::operator()() const src/kudu/rpc/retriable_rpc.h:307:32 #7 0x7f8421245a30 in kudu::rpc::OutboundCall::CallCallback() src/kudu/rpc/outbound_call.cc:274:5 #8 0x7f8421245f00 in kudu::rpc::OutboundCall::SetResponse(std::unique_ptr >) src/kudu/rpc/outbound_call.cc:306:5 #9 0x7f84211f336e in kudu::rpc::Connection::HandleCallResponse(std::unique_ptr >) src/kudu/rpc/connection.cc:735:14 0x606000569ff9 is located 0 bytes to the right of 57-byte region [0x606000569fc0,0x606000569ff9) freed by thread T70 (rpc worker-1265) here: #0 0x517650 in operator delete(void*) thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_new_delete.cc:160:399 #1 0x531aee in std::string::_Rep::_M_destroy(std::allocator const&) ../../../include/c++/8/bits/basic_string.tcc:899:29 #2 0x529dfe in std::basic_string, std::allocator >::~basic_string() ../../../include/c++/8/bits/basic_string.h:3640:19 #3 0x7f8429db5bd3 in std::__detail::_Hashtable_alloc, true> > >::_M_deallocate_node(std::__detail::_Hash_node, true>*) ../../../include/c++/8/bits/hashtable_policy.h:2100:7 #4 0x7f8429db5ae5 in std::__detail::_Hashtable_alloc, true> > >::_M_deallocate_nodes(std::__detail::_Hash_node, true>*) ../../../include/c++/8/bits/hashtable_policy.h:2113:4 #5 0x7f8429db5961 in std::_Hashtable, std::allocator >, std::__detail::_Select1st, std::equal_to, std::hash, std::__detail::_Mod_range_hashing, std::__detail::_Default_ranged_hash, std::__detail::_Prime_rehash_policy, std::__detail::_Hashtable_traits >::clear() ../../../include/c++/8/bits/hashtable.h:2050:13 #6 0x7f8429da8188 in kudu::client::internal::MetaCache::ClearCache() src/kudu/client/meta_cache.cc:1257:3 #7 0x7f8429cb408d in kudu::client::KuduTableAlterer::Alter() src/kudu/client/client.cc:1487:41 #8 0x7f842ad3679e in kudu::transactions::TxnSystemClient::AddTxnStatusTableRangeWithClient(long, long, kudu::client::KuduClient*) src/kudu/transactions/txn_system_client.cc:119:9 #9 0x7f842f0b87e0 in kudu::transactions::TxnSystemClient::AddTxnStatusTableRange(long, long) src/kudu/transactions/txn_system_client.h:75:12 #10 0x7f842f0b628a in kudu::transactions::TxnManager::BeginTransaction(std::string const&, kudu::MonoTime const&, long*, unsigned int*) src/kudu/master/txn_manager.cc:187:48 #11 0x7f842f0b999d in kudu::transactions::TxnManagerServiceImpl::BeginTransaction(kudu::transactions::BeginTransactionRequestPB const*, kudu::transactions::BeginTransactionResponsePB*, kudu::rpc::RpcContext*) src/kudu/master/txn_manager_service.cc:75:42 previously allocated by thread T166 (rpc reactor-136) here: #0 0x516c98 in operator new(unsigned long) thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_new_delete.cc:99:386 #1 0x52f7a8 in std::string::_Rep::_S_create(unsigned long, unsigned long, std::allocator const&) ../../../include/c++/8/bits/basic_string.tcc:1057:49 #2 0x5328d2 in std::string::_M_mutate(unsigned long, unsigned long, unsigned long) ../../../include/c++/8/bits/basic_string.tcc:929:16 #3 0x53281
[kudu-CR] [client] make metacache reset safe
Alexey Serbin has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16839 ) Change subject: [client] make metacache reset safe .. [client] make metacache reset safe I noticed that the newly added TxnManagerTest.BeginManyTransactions test scenario started failing with ASAN heap-use-after-free warnings. After looking a that, it turned out that the original code was assuming the cache wouldn't be ever reset before calling the MetaCache's destructor. However, changelist 232474a51 introduced a new method MetaCache::ClearCache() and since then the method is being called upon altering a table if the partitioning scheme has been updated. This patch resolves the issue by introducing so-called tablet server registry that's never reset indeed, where entries in the tablet server cache are just references to the entries in the registry (they are raw pointers, actually). The newly added test scenario was reliably producing AddressSanitizer's heap-use-after-free warnings every time I ran it using ASAN build. Below is a snapshot of the relevant traces captured when running the new test scenario without the changes in the client metacache. AddressSanitizer: heap-use-after-free on address 0x608000129e20 at pc 0x0078bd54 bp 0x7fa731d0b240 sp 0x7fa731d0b238 READ of size 4 at 0x608000129e20 thread T149 (rpc reactor-146) #0 0x78bd53 in base::subtle::NoBarrier_Load(int const volatile*) src/kudu/gutil/atomicops-internals-x86.h:200:10 #1 0x7fa79520e227 in base::SpinLock::SpinLoop(long, int*) src/kudu/gutil/spinlock.cc:86:10 #2 0x7fa79520e38b in base::SpinLock::SlowLock() src/kudu/gutil/spinlock.cc:104:25 #3 0x7fa7a099aab0 in std::unique_lock::lock() ../../../include/c++/8/bits/std_mutex.h:267:17 #4 0x7fa7a0991e3e in std::unique_lock::unique_lock(kudu::simple_spinlock&) ../../../include/c++/8/bits/std_mutex.h:197:2 #5 0x7fa7a0abfda1 in kudu::client::internal::RemoteTabletServer::InitProxy(kudu::client::KuduClient*, std::function const&) src/kudu/client/meta_cache.cc:145:39 #6 0x7fa7a0ac60f5 in kudu::client::internal::MetaCacheServerPicker::PickLeader(std::function const&, kudu::MonoTime const&) src/kudu/client/meta_cache.cc:524:11 #7 0x7fa7a09b2dcf in kudu::rpc::RetriableRpc::SendRpc() src/kudu/rpc/retriable_rpc.h:163:19 #8 0x7fa7a09ac6cc in kudu::client::internal::Batcher::FlushBuffer(kudu::client::internal::RemoteTablet*, std::vector > const&) src/kudu/client/batcher.cc:911:8 #9 0x7fa7a09a9e38 in kudu::client::internal::Batcher::FlushBuffersIfReady() src/kudu/client/batcher.cc:884:5 #10 0x7fa7a09abd2d in kudu::client::internal::Batcher::TabletLookupFinished(kudu::client::internal::InFlightOp*, kudu::Status const&) src/kudu/client/batcher.cc:851:3 #11 0x7fa7a0acec66 in kudu::client::internal::LookupRpc::SendRpcCb(kudu::Status const&) src/kudu/client/meta_cache.cc:923:3 #12 0x7fa7a0ab8800 in kudu::client::internal::AsyncLeaderMasterRpc::SendRpc()::'lambda'()::operator()() const src/kudu/client/master_proxy_rpc.cc:130:26 0x608000129e20 is located 0 bytes inside of 96-byte region [0x608000129e20,0x608000129e80) freed by thread T163 here: #0 0x65c650 in operator delete(void*) thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_new_delete.cc:160:399 #1 0x7fa7a0aec859 in void STLDeleteContainerPairSecondPointers, false, true> >(std::__detail::_Node_iterator, false, true>, std::__detail::_Node_iterator, false, true>) src/kudu/gutil/stl_util.h:199:5 #2 0x7fa7a0ad96d1 in void STLDeleteValues, std::equal_to, std::allocator > > >(std::unordered_map, std::equal_to, std::allocator > >*) src/kudu/gutil/stl_util.h:400:3 #3 0x7fa7a0ad4188 in kudu::client::internal::MetaCache::ClearCache() src/kudu/client/meta_cache.cc:1257:3 previously allocated by thread T149 (rpc reactor-146) here: #0 0x65bc98 in operator new(unsigned long) thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_new_delete.cc:99:386 #1 0x7fa7a0ac7bcb in kudu::client::internal::MetaCache::UpdateTabletServerUnlocked(kudu::master::TSInfoPB const&) src/kudu/client/meta_cache.cc:596:48 #2 0x7fa7a0ad0802 in kudu::client::internal::MetaCache::ProcessGetTableLocationsResponse(kudu::client::KuduTable const*, std::string const&, bool, kudu::master::GetTableLocationsResponsePB const&, kudu::client::internal::MetaCacheEntry*, int) src/kudu/client/meta_cache.cc:1030:7 #3 0x7fa7a0acf9c0 in kudu::client::internal::MetaCache::ProcessLookupResponse(kudu::client::internal::LookupRpc const&, kudu::client::internal::MetaCacheEntry*, int) src/kudu/client/meta_cache.cc:941:10 #4 0x7fa7a0ace64e in kudu::client::internal::LookupRpc::SendRpcCb(kudu::Status const&) src/kudu/client/meta_cache.cc:911:31 #5 0x7fa7a0ab8800 in kudu::client::internal::AsyncLeaderMasterRpc::SendRpc()::'lam
[kudu-CR] [client] make metacache reset safe
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16839 ) Change subject: [client] make metacache reset safe .. Patch Set 1: Code-Review+2 Thanks for finding and fixing this! -- To view, visit http://gerrit.cloudera.org:8080/16839 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I03ec9318526fbfc2da9b068eb3bbd9cd996efbca Gerrit-Change-Number: 16839 Gerrit-PatchSet: 1 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Wed, 09 Dec 2020 06:50:22 + Gerrit-HasComments: No
[kudu-CR] [client] make metacache reset safe
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16839 ) Change subject: [client] make metacache reset safe .. Patch Set 1: Verified+1 unrelated test failure in RaftConsensusITest.TestLargeBatches -- To view, visit http://gerrit.cloudera.org:8080/16839 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I03ec9318526fbfc2da9b068eb3bbd9cd996efbca Gerrit-Change-Number: 16839 Gerrit-PatchSet: 1 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Wed, 09 Dec 2020 06:47:08 + Gerrit-HasComments: No
[kudu-CR] [client] make metacache reset safe
Alexey Serbin has removed a vote on this change. Change subject: [client] make metacache reset safe .. Removed Verified-1 by Kudu Jenkins (120) -- To view, visit http://gerrit.cloudera.org:8080/16839 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: deleteVote Gerrit-Change-Id: I03ec9318526fbfc2da9b068eb3bbd9cd996efbca Gerrit-Change-Number: 16839 Gerrit-PatchSet: 1 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR] [client] make metacache reset safe
Alexey Serbin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/16839 Change subject: [client] make metacache reset safe .. [client] make metacache reset safe I noticed that the newly added TxnManagerTest.BeginManyTransactions test scenario started failing with ASAN heap-use-after-free warnings. After looking a that, it turned out that the original code was assuming the cache wouldn't be ever reset before calling the MetaCache's destructor. However, changelist 232474a51 introduced a new method MetaCache::ClearCache() and since then the method is being called upon altering a table if the partitioning scheme has been updated. This patch resolves the issue by introducing so-called tablet server registry that's never reset indeed, where entries in the tablet server cache are just references to the entries in the registry (they are raw pointers, actually). The newly added test scenario was reliably producing AddressSanitizer's heap-use-after-free warnings every time I ran it using ASAN build. Below is a snapshot of the relevant traces captured when running the new test scenario without the changes in the client metacache. AddressSanitizer: heap-use-after-free on address 0x608000129e20 at pc 0x0078bd54 bp 0x7fa731d0b240 sp 0x7fa731d0b238 READ of size 4 at 0x608000129e20 thread T149 (rpc reactor-146) #0 0x78bd53 in base::subtle::NoBarrier_Load(int const volatile*) src/kudu/gutil/atomicops-internals-x86.h:200:10 #1 0x7fa79520e227 in base::SpinLock::SpinLoop(long, int*) src/kudu/gutil/spinlock.cc:86:10 #2 0x7fa79520e38b in base::SpinLock::SlowLock() src/kudu/gutil/spinlock.cc:104:25 #3 0x7fa7a099aab0 in std::unique_lock::lock() ../../../include/c++/8/bits/std_mutex.h:267:17 #4 0x7fa7a0991e3e in std::unique_lock::unique_lock(kudu::simple_spinlock&) ../../../include/c++/8/bits/std_mutex.h:197:2 #5 0x7fa7a0abfda1 in kudu::client::internal::RemoteTabletServer::InitProxy(kudu::client::KuduClient*, std::function const&) src/kudu/client/meta_cache.cc:145:39 #6 0x7fa7a0ac60f5 in kudu::client::internal::MetaCacheServerPicker::PickLeader(std::function const&, kudu::MonoTime const&) src/kudu/client/meta_cache.cc:524:11 #7 0x7fa7a09b2dcf in kudu::rpc::RetriableRpc::SendRpc() src/kudu/rpc/retriable_rpc.h:163:19 #8 0x7fa7a09ac6cc in kudu::client::internal::Batcher::FlushBuffer(kudu::client::internal::RemoteTablet*, std::vector > const&) src/kudu/client/batcher.cc:911:8 #9 0x7fa7a09a9e38 in kudu::client::internal::Batcher::FlushBuffersIfReady() src/kudu/client/batcher.cc:884:5 #10 0x7fa7a09abd2d in kudu::client::internal::Batcher::TabletLookupFinished(kudu::client::internal::InFlightOp*, kudu::Status const&) src/kudu/client/batcher.cc:851:3 #11 0x7fa7a0acec66 in kudu::client::internal::LookupRpc::SendRpcCb(kudu::Status const&) src/kudu/client/meta_cache.cc:923:3 #12 0x7fa7a0ab8800 in kudu::client::internal::AsyncLeaderMasterRpc::SendRpc()::'lambda'()::operator()() const src/kudu/client/master_proxy_rpc.cc:130:26 0x608000129e20 is located 0 bytes inside of 96-byte region [0x608000129e20,0x608000129e80) freed by thread T163 here: #0 0x65c650 in operator delete(void*) thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_new_delete.cc:160:399 #1 0x7fa7a0aec859 in void STLDeleteContainerPairSecondPointers, false, true> >(std::__detail::_Node_iterator, false, true>, std::__detail::_Node_iterator, false, true>) src/kudu/gutil/stl_util.h:199:5 #2 0x7fa7a0ad96d1 in void STLDeleteValues, std::equal_to, std::allocator > > >(std::unordered_map, std::equal_to, std::allocator > >*) src/kudu/gutil/stl_util.h:400:3 #3 0x7fa7a0ad4188 in kudu::client::internal::MetaCache::ClearCache() src/kudu/client/meta_cache.cc:1257:3 previously allocated by thread T149 (rpc reactor-146) here: #0 0x65bc98 in operator new(unsigned long) thirdparty/src/llvm-9.0.0.src/projects/compiler-rt/lib/asan/asan_new_delete.cc:99:386 #1 0x7fa7a0ac7bcb in kudu::client::internal::MetaCache::UpdateTabletServerUnlocked(kudu::master::TSInfoPB const&) src/kudu/client/meta_cache.cc:596:48 #2 0x7fa7a0ad0802 in kudu::client::internal::MetaCache::ProcessGetTableLocationsResponse(kudu::client::KuduTable const*, std::string const&, bool, kudu::master::GetTableLocationsResponsePB const&, kudu::client::internal::MetaCacheEntry*, int) src/kudu/client/meta_cache.cc:1030:7 #3 0x7fa7a0acf9c0 in kudu::client::internal::MetaCache::ProcessLookupResponse(kudu::client::internal::LookupRpc const&, kudu::client::internal::MetaCacheEntry*, int) src/kudu/client/meta_cache.cc:941:10 #4 0x7fa7a0ace64e in kudu::client::internal::LookupRpc::SendRpcCb(kudu::Status const&) src/kudu/client/meta_cache.cc:911:31 #5 0x7fa7a0ab8800 in kudu::client::internal::AsyncLeaderMasterRpc::SendRpc()::'lambda'()::o
[kudu-CR] [master][consensus] Procedure for copying system catalog
Hello Kudu Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16830 to look at the new patch set (#3). Change subject: [master][consensus] Procedure for copying system catalog .. [master][consensus] Procedure for copying system catalog This change outlines procedure to copy system catalog for the newly added master using existing CLI tools and the master ChangeConfig RPC. - Flag --consensus_allow_status_msg_for_failed_peer must be turned on for existing masters. - Start the new master with --master_address_add_new_master= and --master_addresses that contains itself and existing masters. - Invoke ChangeConfig to add the master. - If the new master is promoted to being a VOTER then following tablet copy steps can be skipped. - Shutdown the new master. - Delete the system catalog on the new master. - Copy the system catalog from the leader master to the new master. - Bring up the new master. - Verify the new master is promoted as VOTER. Bulk of the change is in the test code and involves refactoring to use common parts of the earlier postive test case. One functional change is in Raft consensus and adds the ability for the leader to send status only messages to the peer even if it's in FAILED_UNRECOVERABLE state. Without this change when the system catalog is copied externally the new master remains in FAILED_UNRECOVERABLE state and doesn't get promoted to being a VOTER despite the system catalog being up to date. This behavior is currently disabled by default and hidden under the --consensus_allow_status_msg_for_failed_peer flag. Change-Id: I142c1dec442ec72c38c5be9d62cdf270e441d6e3 --- M src/kudu/consensus/consensus_queue.cc M src/kudu/master/dynamic_multi_master-test.cc 2 files changed, 275 insertions(+), 130 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/30/16830/3 -- To view, visit http://gerrit.cloudera.org:8080/16830 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I142c1dec442ec72c38c5be9d62cdf270e441d6e3 Gerrit-Change-Number: 16830 Gerrit-PatchSet: 3 Gerrit-Owner: Bankim Bhavsar Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR] KUDU-2612 keep-alive txn heartbeating for C++ client
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16779 ) Change subject: KUDU-2612 keep-alive txn heartbeating for C++ client .. Patch Set 3: (3 comments) Overall looks good to me http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/client.h File src/kudu/client/client.h: http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/client.h@444 PS3, Line 444: /// : /// An nit: A Also remove the extra line above? http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/transaction-internal.cc File src/kudu/client/transaction-internal.cc: http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/transaction-internal.cc@357 PS3, Line 357: DCHECK(status.IsAborted()); nit: could you add a comment adding some insight into where these errors may come from? e.g. when failing to schedule onto the reactor thread? Hoping it'd be useful for future readers to better understand how this gets called, as well as add insight into why just Aborted() and not, e.g. TimedOut() or ServiceUnavailable() or somesuch http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/transaction-internal.cc@387 PS3, Line 387: req This gave me pause because it's scoped to be destructed at the end of the task function. But I think that's OK since we only access it when we send the RPC, which we do within this scope. -- To view, visit http://gerrit.cloudera.org:8080/16779 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0283d8e16908f641388f7a30b513a672df27a186 Gerrit-Change-Number: 16779 Gerrit-PatchSet: 3 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zoltan Borok-Nagy Gerrit-Comment-Date: Tue, 08 Dec 2020 23:12:20 + Gerrit-HasComments: Yes
[kudu-CR] KUDU-2612 keep-alive tracking for transactions
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16729 ) Change subject: KUDU-2612 keep-alive tracking for transactions .. Patch Set 9: (1 comment) http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc File src/kudu/transactions/txn_status_manager.cc: http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc@401 PS9, Line 401: return Status::IllegalState( > Should set this to TXN_ILLEGAL_STATE to rely on the more specific error, no Actually I think this is correct as is, since this isn't a replicated call (i.e. no surprise errors from the Raft module). Feel free to ignore this. -- To view, visit http://gerrit.cloudera.org:8080/16729 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iae926e02fa7ca597b63ccea90124964c3b6a1175 Gerrit-Change-Number: 16729 Gerrit-PatchSet: 9 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Comment-Date: Tue, 08 Dec 2020 22:24:59 + Gerrit-HasComments: Yes
[kudu-CR] KUDU-2612 keep-alive tracking for transactions
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16729 ) Change subject: KUDU-2612 keep-alive tracking for transactions .. Patch Set 9: (9 comments) http://gerrit.cloudera.org:8080/#/c/16729/9//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16729/9//COMMIT_MSG@9 PS9, Line 9: liviness nit: liveness http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/integration-tests/txn_status_manager-itest.cc File src/kudu/integration-tests/txn_status_manager-itest.cc: http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/integration-tests/txn_status_manager-itest.cc@373 PS9, Line 373: for (auto i = 0; i < 5; ++i) { We discussed this on Slack that there is flakiness here since new leaders don't call LoadFromTablet(). Instead, it's only called when we bootstrap the replica. It's probably worth disabling this part of the test until https://gerrit.cloudera.org/c/16648/ lands, or updating this to ensure that we always restart all tservers and reload them before making these calls. http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc File src/kudu/transactions/txn_status_manager.cc: http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc@69 PS9, Line 69: the task is not run, meaning the TxnStatusManager doesn't " : "automatically abort any stale/abandoned transactions. This aspect of the flag isn't runtime is it? If not, we should clarify that just the value is tunable at runtime, not the enabling/disabling of the staleness checking. Also I may be missing it, but I don't see where 0 disables the check? http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc@401 PS9, Line 401: return Status::IllegalState( Should set this to TXN_ILLEGAL_STATE to rely on the more specific error, now that we've agreed on that error handling. http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc@462 PS9, Line 462: // Allow safety margin for receving and processing keep-alive heartbeats : // (half of the keepalive interval). nit: remove this now that it's no longer true? http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc@521 PS9, Line 521: Substitute( nit: remove Substitute? http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/transactions/txn_status_manager.cc@524 PS9, Line 524: return; Would it also make sense to check whether the replica is still running, and exit if not? Though I think it's benign as is -- a deleted replica would remain in scope and log warnings above, and upon completion, deletion could complete, right? Might be worth adding a test that has a very low --txn_staleness_tracker_interval_ms, has many transactions, and deletes or shuts down the tablet? Though FWIW I don't know that deleting the partition will be exercised heavily since I think we would only want to delete a range once all transactions are terminal. http://gerrit.cloudera.org:8080/#/c/16729/5/src/kudu/tserver/ts_tablet_manager.cc File src/kudu/tserver/ts_tablet_manager.cc: http://gerrit.cloudera.org:8080/#/c/16729/5/src/kudu/tserver/ts_tablet_manager.cc@1372 PS5, Line 1372: true) { : // Wait for a notification on shutdown or a timeout expiration. : if (shutdown_latch_.WaitFor( : MonoDelta::FromMilliseconds(FLAGS_txn_staleness_tracker_interval_ms))) { : return; : } > Done I meant as: while (!shutdown_latch_.WaitFor(...))) { ... } http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/tserver/ts_tablet_manager.cc File src/kudu/tserver/ts_tablet_manager.cc: http://gerrit.cloudera.org:8080/#/c/16729/9/src/kudu/tserver/ts_tablet_manager.cc@1375 PS9, Line 1375: FLAGS_txn_staleness_tracker_interval_ms Is this a tight loop if this is 0? -- To view, visit http://gerrit.cloudera.org:8080/16729 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iae926e02fa7ca597b63ccea90124964c3b6a1175 Gerrit-Change-Number: 16729 Gerrit-PatchSet: 9 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Comment-Date: Tue, 08 Dec 2020 21:51:26 + Gerrit-HasComments: Yes
[kudu-CR] KUDU-2612 keep-alive txn heartbeating for C++ client
Hao Hao has posted comments on this change. ( http://gerrit.cloudera.org:8080/16779 ) Change subject: KUDU-2612 keep-alive txn heartbeating for C++ client .. Patch Set 3: (1 comment) http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG@14 PS3, Line 14: goes : out of scope. In contrast, if the transaction handle is created by : KuduTransaction::Deserialize(), the keepalive messages are or aren't > As you can see, the default behavior for KuduTransactionSerializer does exa Hmm, yeah, I think that should be sufficient. -- To view, visit http://gerrit.cloudera.org:8080/16779 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0283d8e16908f641388f7a30b513a672df27a186 Gerrit-Change-Number: 16779 Gerrit-PatchSet: 3 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zoltan Borok-Nagy Gerrit-Comment-Date: Tue, 08 Dec 2020 21:30:18 + Gerrit-HasComments: Yes
[kudu-CR] txn participant: return TXN ILLEGAL STATE code on illegal state errors
Andrew Wong has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16831 ) Change subject: txn_participant: return TXN_ILLEGAL_STATE code on illegal state errors .. txn_participant: return TXN_ILLEGAL_STATE code on illegal state errors I have a patch coming up that sends RPCs that submit participant ops to the TxnParticipant and retries if necessary. One of the criteria to retry an RPC is checking if the Raft application returned an IllegalState error, e.g. in RaftConsensus::CheckLeadershipAndBindTerm. This is problematic, as TxnParticipants may also return IllegalState if the transaction is not in an appropriate state (e.g. an RPC tries to abort an already-committed transaction). To disambiguate such cases, this patch updates the TxnParticipants to also set a TabletServerErrorPB code when such an error occurs, allowing for more specific error handling to be determined. Change-Id: Ibfb8400666855c694b78b1425b1c121597ec7ccf Reviewed-on: http://gerrit.cloudera.org:8080/16831 Reviewed-by: Alexey Serbin Tested-by: Andrew Wong --- M src/kudu/integration-tests/txn_participant-itest.cc M src/kudu/tablet/ops/participant_op.cc M src/kudu/tablet/ops/participant_op.h M src/kudu/tablet/txn_participant-test.cc M src/kudu/tablet/txn_participant.h 5 files changed, 159 insertions(+), 88 deletions(-) Approvals: Alexey Serbin: Looks good to me, approved Andrew Wong: Verified -- To view, visit http://gerrit.cloudera.org:8080/16831 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ibfb8400666855c694b78b1425b1c121597ec7ccf Gerrit-Change-Number: 16831 Gerrit-PatchSet: 4 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR] txn participant: return TXN ILLEGAL STATE code on illegal state errors
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16831 ) Change subject: txn_participant: return TXN_ILLEGAL_STATE code on illegal state errors .. Patch Set 3: Verified+1 Test failure was unrelated: dynamic_multi_master-test -- To view, visit http://gerrit.cloudera.org:8080/16831 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ibfb8400666855c694b78b1425b1c121597ec7ccf Gerrit-Change-Number: 16831 Gerrit-PatchSet: 3 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Tue, 08 Dec 2020 21:14:48 + Gerrit-HasComments: No
[kudu-CR] [build] CMake fixes for Apple ARM builds
Grant Henke has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16816 ) Change subject: [build] CMake fixes for Apple ARM builds .. [build] CMake fixes for Apple ARM builds This patch includes some small tweaks for CMake when building Kudu on Apple ARM architectures. It also includes some logging to help debug an issues in the future. Change-Id: Ifad9a4d272e6d720ac006da313f53490cfd47a9c Reviewed-on: http://gerrit.cloudera.org:8080/16816 Tested-by: Kudu Jenkins Reviewed-by: Andrew Wong --- M CMakeLists.txt M src/kudu/gutil/CMakeLists.txt 2 files changed, 13 insertions(+), 3 deletions(-) Approvals: Kudu Jenkins: Verified Andrew Wong: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/16816 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ifad9a4d272e6d720ac006da313f53490cfd47a9c Gerrit-Change-Number: 16816 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR] txn participant: return TXN ILLEGAL STATE code on illegal state errors
Andrew Wong has removed a vote on this change. Change subject: txn_participant: return TXN_ILLEGAL_STATE code on illegal state errors .. Removed Verified-1 by Kudu Jenkins (120) -- To view, visit http://gerrit.cloudera.org:8080/16831 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: deleteVote Gerrit-Change-Id: Ibfb8400666855c694b78b1425b1c121597ec7ccf Gerrit-Change-Number: 16831 Gerrit-PatchSet: 3 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR](gh-pages) Publish docs changes from master
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16828 ) Change subject: Publish docs changes from master .. Patch Set 1: > > Patch Set 2: > > > > shouldn't we replace the symlinks with a newly generated docs > instead of changing the 1.13.0 docs? it would be nice to keep > 1.13.0 as-is for posterity in case someone needs to look at the > docs for 1.13 specifically. > > This is a good concern, but I think the changes in this patch do > apply to 1.13 (e.g. support for rolling restarts, no reliance on > NTP, etc). Even the OS dependencies were announced in 1.12 > https://kudu.apache.org/releases/1.12.0/docs/release_notes.html. > It'd be good to double check and confirm that everything in these > new docs applies to 1.13. Indeed, why to change already published docs for 1.13? What was so crucial to replace 1.13 docs? Instead, should we introduce a new 'in-development' section for these types of updates? -- To view, visit http://gerrit.cloudera.org:8080/16828 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 Gerrit-Change-Number: 16828 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 20:36:59 + Gerrit-HasComments: No
[kudu-CR](gh-pages) Publish docs changes from master
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16828 ) Change subject: Publish docs changes from master .. Patch Set 1: > > Patch Set 2: > > > > shouldn't we replace the symlinks with a newly generated docs > instead of changing the 1.13.0 docs? it would be nice to keep > 1.13.0 as-is for posterity in case someone needs to look at the > docs for 1.13 specifically. > > This is a good concern, but I think the changes in this patch do > apply to 1.13 (e.g. support for rolling restarts, no reliance on > NTP, etc). Even the OS dependencies were announced in 1.12 > https://kudu.apache.org/releases/1.12.0/docs/release_notes.html. > It'd be good to double check and confirm that everything in these > new docs applies to 1.13. What about adding > shouldn't we replace the symlinks with a newly generated docs > instead of changing the 1.13.0 docs? it would be nice to keep > 1.13.0 as-is for posterity in case someone needs to look at the > docs for 1.13 specifically. +1 -- To view, visit http://gerrit.cloudera.org:8080/16828 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 Gerrit-Change-Number: 16828 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 20:34:28 + Gerrit-HasComments: No
[kudu-CR] [build] CMake fixes for Apple ARM builds
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16816 ) Change subject: [build] CMake fixes for Apple ARM builds .. Patch Set 1: Code-Review+2 I don't have an M1 chip handy, but I built on Catalina 10.15.7, CentOS 7.3.1611, and CentOS 6.6 and nothing broke. -- To view, visit http://gerrit.cloudera.org:8080/16816 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ifad9a4d272e6d720ac006da313f53490cfd47a9c Gerrit-Change-Number: 16816 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Tue, 08 Dec 2020 20:30:10 + Gerrit-HasComments: No
[kudu-CR](gh-pages) Publish docs changes from master
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16828 ) Change subject: Publish docs changes from master .. Patch Set 2: Code-Review+2 > Patch Set 2: > > shouldn't we replace the symlinks with a newly generated docs instead of > changing the 1.13.0 docs? it would be nice to keep 1.13.0 as-is for posterity > in case someone needs to look at the docs for 1.13 specifically. This is a good concern, but I think the changes in this patch do apply to 1.13 (e.g. support for rolling restarts, no reliance on NTP, etc). Even the OS dependencies were announced in 1.12 https://kudu.apache.org/releases/1.12.0/docs/release_notes.html. It'd be good to double check and confirm that everything in these new docs applies to 1.13. -- To view, visit http://gerrit.cloudera.org:8080/16828 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 Gerrit-Change-Number: 16828 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 20:29:06 + Gerrit-HasComments: No
[kudu-CR] KUDU-2612 keep-alive txn heartbeating for C++ client
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16779 ) Change subject: KUDU-2612 keep-alive txn heartbeating for C++ client .. Patch Set 3: (1 comment) http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG@14 PS3, Line 14: goes : out of scope. In contrast, if the transaction handle is created by : KuduTransaction::Deserialize(), the keepalive messages are or aren't > Thanks for the explanation! Makes sense. In this case maybe it is worth to As you can see, the default behavior for KuduTransactionSerializer does exactly this. Instead of putting that into documentation, I decided to enforce that using the API because nobody reads docs (TM). -- To view, visit http://gerrit.cloudera.org:8080/16779 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0283d8e16908f641388f7a30b513a672df27a186 Gerrit-Change-Number: 16779 Gerrit-PatchSet: 3 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zoltan Borok-Nagy Gerrit-Comment-Date: Tue, 08 Dec 2020 20:18:18 + Gerrit-HasComments: Yes
[kudu-CR] Replace boost::iequals with our own implementation
Grant Henke has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16826 ) Change subject: Replace boost::iequals with our own implementation .. Replace boost::iequals with our own implementation This patch replaces uses of boost::iequals with our own implementation. This is a step in our ongoing work to reduce dependence on boost. Note that we don’t need to worry about locale awareness or performance given all usage today is against ASCII strings (not locale specific) and are not in performance sensitive code paths. Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Reviewed-on: http://gerrit.cloudera.org:8080/16826 Reviewed-by: Alexey Serbin Tested-by: Grant Henke --- M src/kudu/clock/hybrid_clock.cc M src/kudu/hms/hms_client.cc M src/kudu/integration-tests/hms_itest-base.cc M src/kudu/rpc/sasl_common.cc M src/kudu/security/tls_context.cc M src/kudu/server/default_path_handlers.cc M src/kudu/server/server_base.cc M src/kudu/tools/ksck.cc M src/kudu/tools/ksck.h M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/table_scanner.cc M src/kudu/tools/tool_action_cluster.cc M src/kudu/tools/tool_action_common.cc M src/kudu/tools/tool_action_hms.cc M src/kudu/tools/tool_action_master.cc M src/kudu/tools/tool_action_table.cc M src/kudu/tools/tool_action_test.cc M src/kudu/tools/tool_action_tserver.cc M src/kudu/util/flags.cc M src/kudu/util/string_case-test.cc M src/kudu/util/string_case.cc M src/kudu/util/string_case.h 22 files changed, 164 insertions(+), 108 deletions(-) Approvals: Alexey Serbin: Looks good to me, approved Grant Henke: Verified -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 11 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR] Replace boost::iequals with our own implementation
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/16826 ) Change subject: Replace boost::iequals with our own implementation .. Patch Set 10: Verified+1 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 10 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy Gerrit-Comment-Date: Tue, 08 Dec 2020 20:07:06 + Gerrit-HasComments: No
[kudu-CR] Replace boost::iequals with our own implementation
Grant Henke has removed a vote on this change. Change subject: Replace boost::iequals with our own implementation .. Removed Verified-1 by Kudu Jenkins (120) -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: deleteVote Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 10 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR](gh-pages) Update the home page
Grant Henke has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Update the home page This patch updates the home page to be a bit more current on Kudu’s current goals and common usage. It also adds a quickstart button to help users get started using Kudu quickly. Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Reviewed-on: http://gerrit.cloudera.org:8080/16834 Reviewed-by: Alexey Serbin Tested-by: Grant Henke --- M _includes/bottom_common.html M index.html 2 files changed, 8 insertions(+), 10 deletions(-) Approvals: Alexey Serbin: Looks good to me, approved Grant Henke: Verified -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: merged Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 4 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke
[kudu-CR](gh-pages) Update the home page
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 3: Verified+1 -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 3 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 20:01:14 + Gerrit-HasComments: No
[kudu-CR](gh-pages) Publish docs changes from master
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/16828 ) Change subject: Publish docs changes from master .. Patch Set 2: (1 comment) http://gerrit.cloudera.org:8080/#/c/16828/1/releases/1.13.0/docs/installation.html File releases/1.13.0/docs/installation.html: http://gerrit.cloudera.org:8080/#/c/16828/1/releases/1.13.0/docs/installation.html@172 PS1, Line 172: 7.0 > I bet it was a typo going from v6 to v7 and missed dropping the .6 Done -- To view, visit http://gerrit.cloudera.org:8080/16828 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 Gerrit-Change-Number: 16828 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 20:00:52 + Gerrit-HasComments: Yes
[kudu-CR](gh-pages) Update the home page
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 3: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 3 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 20:00:05 + Gerrit-HasComments: No
[kudu-CR] Replace boost::iequals with our own implementation
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16826 ) Change subject: Replace boost::iequals with our own implementation .. Patch Set 10: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 10 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy Gerrit-Comment-Date: Tue, 08 Dec 2020 19:59:24 + Gerrit-HasComments: No
[kudu-CR](gh-pages) Update the home page
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 2: (1 comment) http://gerrit.cloudera.org:8080/#/c/16834/2/index.html File index.html: http://gerrit.cloudera.org:8080/#/c/16834/2/index.html@16 PS2, Line 16: > nit: remove this extra new empty line Done -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 19:59:03 + Gerrit-HasComments: Yes
[kudu-CR](gh-pages) Update the home page
Hello Alexey Serbin, Andrew Wong, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16834 to look at the new patch set (#3). Change subject: Update the home page .. Update the home page This patch updates the home page to be a bit more current on Kudu’s current goals and common usage. It also adds a quickstart button to help users get started using Kudu quickly. Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 --- M _includes/bottom_common.html M index.html 2 files changed, 8 insertions(+), 10 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/34/16834/3 -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: newpatchset Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 3 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong
[kudu-CR](gh-pages) Update the home page
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 2: Code-Review+2 (1 comment) http://gerrit.cloudera.org:8080/#/c/16834/2/index.html File index.html: http://gerrit.cloudera.org:8080/#/c/16834/2/index.html@16 PS2, Line 16: nit: remove this extra new empty line -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Comment-Date: Tue, 08 Dec 2020 19:56:15 + Gerrit-HasComments: Yes
[kudu-CR](gh-pages) Update the home page
Hello Alexey Serbin, Andrew Wong, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16834 to look at the new patch set (#2). Change subject: Update the home page .. Update the home page This patch updates the home page to be a bit more current on Kudu’s current goals and common usage. It also adds a quickstart button to help users get started using Kudu quickly. Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 --- M _includes/bottom_common.html M index.html 2 files changed, 9 insertions(+), 10 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/34/16834/2 -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: newpatchset Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong
[kudu-CR] KUDU-2612 keep-alive txn heartbeating for C++ client
Hao Hao has posted comments on this change. ( http://gerrit.cloudera.org:8080/16779 ) Change subject: KUDU-2612 keep-alive txn heartbeating for C++ client .. Patch Set 3: (1 comment) http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG@14 PS3, Line 14: goes : out of scope. In contrast, if the transaction handle is created by : KuduTransaction::Deserialize(), the keepalive messages are or aren't > Yes, of course it's possible to have two actors sending keepalive messages Thanks for the explanation! Makes sense. In this case maybe it is worth to call out explicitly somewhere in the doc that 'it's preferable to keep the number as low as possible to put less load on the cluster as possible' ? -- To view, visit http://gerrit.cloudera.org:8080/16779 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0283d8e16908f641388f7a30b513a672df27a186 Gerrit-Change-Number: 16779 Gerrit-PatchSet: 3 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zoltan Borok-Nagy Gerrit-Comment-Date: Tue, 08 Dec 2020 19:49:08 + Gerrit-HasComments: Yes
[kudu-CR](gh-pages) Update the home page
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 1: Code-Review+1 (2 comments) http://gerrit.cloudera.org:8080/#/c/16834/1/index.html File index.html: http://gerrit.cloudera.org:8080/#/c/16834/1/index.html@16 PS1, Line 16: nit: extra space http://gerrit.cloudera.org:8080/#/c/16834/1/index.html@35 PS1, Line 35: Hadoop Apache big data ? -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Comment-Date: Tue, 08 Dec 2020 19:44:34 + Gerrit-HasComments: Yes
[kudu-CR](gh-pages) Update the home page
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 1: (1 comment) http://gerrit.cloudera.org:8080/#/c/16834/1/index.html File index.html: http://gerrit.cloudera.org:8080/#/c/16834/1/index.html@16 PS1, Line 16: nit: drop the new line? -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Comment-Date: Tue, 08 Dec 2020 19:43:14 + Gerrit-HasComments: Yes
[kudu-CR](gh-pages) Update the home page
Andrew Wong has posted comments on this change. ( http://gerrit.cloudera.org:8080/16834 ) Change subject: Update the home page .. Patch Set 1: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Comment-Date: Tue, 08 Dec 2020 19:42:41 + Gerrit-HasComments: No
[kudu-CR](gh-pages) Publish docs changes from master
Attila Bukor has posted comments on this change. ( http://gerrit.cloudera.org:8080/16828 ) Change subject: Publish docs changes from master .. Patch Set 2: shouldn't we replace the symlinks with a newly generated docs instead of changing the 1.13.0 docs? it would be nice to keep 1.13.0 as-is for posterity in case someone needs to look at the docs for 1.13 specifically. -- To view, visit http://gerrit.cloudera.org:8080/16828 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: comment Gerrit-Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 Gerrit-Change-Number: 16828 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Attila Bukor Gerrit-Reviewer: Grant Henke Gerrit-Comment-Date: Tue, 08 Dec 2020 19:41:46 + Gerrit-HasComments: No
[kudu-CR] Replace boost::iequals with our own implementation
Hello Mahesh Reddy, Alexey Serbin, Kudu Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16826 to look at the new patch set (#10). Change subject: Replace boost::iequals with our own implementation .. Replace boost::iequals with our own implementation This patch replaces uses of boost::iequals with our own implementation. This is a step in our ongoing work to reduce dependence on boost. Note that we don’t need to worry about locale awareness or performance given all usage today is against ASCII strings (not locale specific) and are not in performance sensitive code paths. Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 --- M src/kudu/clock/hybrid_clock.cc M src/kudu/hms/hms_client.cc M src/kudu/integration-tests/hms_itest-base.cc M src/kudu/rpc/sasl_common.cc M src/kudu/security/tls_context.cc M src/kudu/server/default_path_handlers.cc M src/kudu/server/server_base.cc M src/kudu/tools/ksck.cc M src/kudu/tools/ksck.h M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/table_scanner.cc M src/kudu/tools/tool_action_cluster.cc M src/kudu/tools/tool_action_common.cc M src/kudu/tools/tool_action_hms.cc M src/kudu/tools/tool_action_master.cc M src/kudu/tools/tool_action_table.cc M src/kudu/tools/tool_action_test.cc M src/kudu/tools/tool_action_tserver.cc M src/kudu/util/flags.cc M src/kudu/util/string_case-test.cc M src/kudu/util/string_case.cc M src/kudu/util/string_case.h 22 files changed, 164 insertions(+), 108 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/26/16826/10 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 10 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR] Replace boost::iequals with our own implementation
Hello Mahesh Reddy, Alexey Serbin, Kudu Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16826 to look at the new patch set (#9). Change subject: Replace boost::iequals with our own implementation .. Replace boost::iequals with our own implementation This patch replaces uses of boost::iequals with our own implementation. This is a step in our ongoing work to reduce dependence on boost. Note that we don’t need to worry about locale awareness or performance given all usage today is against ASCII strings (not locale specific) and are not in performance sensitive code paths. Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 --- M src/kudu/clock/hybrid_clock.cc M src/kudu/hms/hms_client.cc M src/kudu/integration-tests/hms_itest-base.cc M src/kudu/rpc/sasl_common.cc M src/kudu/security/tls_context.cc M src/kudu/server/default_path_handlers.cc M src/kudu/server/server_base.cc M src/kudu/tools/ksck.cc M src/kudu/tools/ksck.h M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/table_scanner.cc M src/kudu/tools/tool_action_cluster.cc M src/kudu/tools/tool_action_common.cc M src/kudu/tools/tool_action_hms.cc M src/kudu/tools/tool_action_master.cc M src/kudu/tools/tool_action_table.cc M src/kudu/tools/tool_action_test.cc M src/kudu/tools/tool_action_tserver.cc M src/kudu/util/flags.cc M src/kudu/util/string_case-test.cc M src/kudu/util/string_case.cc M src/kudu/util/string_case.h 22 files changed, 162 insertions(+), 107 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/26/16826/9 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 9 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR] Replace boost::iequals with our own implementation
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16826 ) Change subject: Replace boost::iequals with our own implementation .. Patch Set 8: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 8 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy Gerrit-Comment-Date: Tue, 08 Dec 2020 19:04:46 + Gerrit-HasComments: No
[kudu-CR] [tserver] KUDU-2612: participant op RPC endpoint
Andrew Wong has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16814 ) Change subject: [tserver] KUDU-2612: participant op RPC endpoint .. [tserver] KUDU-2612: participant op RPC endpoint This adds an RPC endpoint to the tablet servers that allows proxies to interact with transaction participants. This will be used in step 13 and step 18 of the transaction write path[1], allowing the TxnStatusManagers to update participants' transaction states. [1] https://docs.google.com/document/d/1qv7Zejpfzg-HvF5azRL49g5lRLQ4437EmJ53GiupcWQ/edit#heading=h.4lm41o75ev1x Change-Id: Ic48895438ce67e453d235934ac560efe8415921b Reviewed-on: http://gerrit.cloudera.org:8080/16814 Reviewed-by: Hao Hao Tested-by: Kudu Jenkins Reviewed-by: Alexey Serbin --- M src/kudu/integration-tests/txn_participant-itest.cc M src/kudu/tserver/tablet_service.cc M src/kudu/tserver/tablet_service.h M src/kudu/tserver/tserver_admin.proto 4 files changed, 280 insertions(+), 1 deletion(-) Approvals: Hao Hao: Looks good to me, approved Kudu Jenkins: Verified Alexey Serbin: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/16814 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ic48895438ce67e453d235934ac560efe8415921b Gerrit-Change-Number: 16814 Gerrit-PatchSet: 5 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR] Replace boost::iequals with our own implementation
Hello Mahesh Reddy, Alexey Serbin, Kudu Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16826 to look at the new patch set (#8). Change subject: Replace boost::iequals with our own implementation .. Replace boost::iequals with our own implementation This patch replaces uses of boost::iequals with our own implementation. This is a step in our ongoing work to reduce dependence on boost. Note that we don’t need to worry about locale awareness or performance given all usage today is against ASCII strings (not locale specific) and are not in performance sensitive code paths. Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 --- M src/kudu/clock/hybrid_clock.cc M src/kudu/hms/hms_client.cc M src/kudu/integration-tests/hms_itest-base.cc M src/kudu/rpc/sasl_common.cc M src/kudu/security/tls_context.cc M src/kudu/server/default_path_handlers.cc M src/kudu/server/server_base.cc M src/kudu/tools/ksck.cc M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/table_scanner.cc M src/kudu/tools/tool_action_cluster.cc M src/kudu/tools/tool_action_common.cc M src/kudu/tools/tool_action_hms.cc M src/kudu/tools/tool_action_master.cc M src/kudu/tools/tool_action_table.cc M src/kudu/tools/tool_action_test.cc M src/kudu/tools/tool_action_tserver.cc M src/kudu/util/flags.cc M src/kudu/util/string_case-test.cc M src/kudu/util/string_case.cc M src/kudu/util/string_case.h 21 files changed, 161 insertions(+), 106 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/26/16826/8 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 8 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR] Replace boost::iequals with our own implementation
Hello Mahesh Reddy, Alexey Serbin, Kudu Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16826 to look at the new patch set (#7). Change subject: Replace boost::iequals with our own implementation .. Replace boost::iequals with our own implementation This patch replaces uses of boost::iequals with our own implementation. This is a step in our ongoing work to reduce dependence on boost. Note that we don’t need to worry about locale awareness or performance given all usage today is against ASCII strings (not locale specific) and are not in performance sensitive code paths. Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 --- M src/kudu/clock/hybrid_clock.cc M src/kudu/hms/hms_client.cc M src/kudu/integration-tests/hms_itest-base.cc M src/kudu/rpc/sasl_common.cc M src/kudu/security/tls_context.cc M src/kudu/server/default_path_handlers.cc M src/kudu/server/server_base.cc M src/kudu/tools/ksck.cc M src/kudu/tools/ksck.h M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/table_scanner.cc M src/kudu/tools/tool_action_cluster.cc M src/kudu/tools/tool_action_common.cc M src/kudu/tools/tool_action_hms.cc M src/kudu/tools/tool_action_master.cc M src/kudu/tools/tool_action_table.cc M src/kudu/tools/tool_action_test.cc M src/kudu/tools/tool_action_tserver.cc M src/kudu/util/flags.cc M src/kudu/util/string_case-test.cc M src/kudu/util/string_case.cc M src/kudu/util/string_case.h 22 files changed, 168 insertions(+), 107 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/26/16826/7 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 7 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR] [docs] Fix a typo in the installation docs
Grant Henke has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/16832 ) Change subject: [docs] Fix a typo in the installation docs .. [docs] Fix a typo in the installation docs Change-Id: I96bfdd3d5245313b40205eab69434d34506e766c Reviewed-on: http://gerrit.cloudera.org:8080/16832 Tested-by: Kudu Jenkins Reviewed-by: Alexey Serbin --- M docs/installation.adoc 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Kudu Jenkins: Verified Alexey Serbin: Looks good to me, approved -- To view, visit http://gerrit.cloudera.org:8080/16832 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I96bfdd3d5245313b40205eab69434d34506e766c Gerrit-Change-Number: 16832 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120)
[kudu-CR](gh-pages) Update the home page
Grant Henke has uploaded this change for review. ( http://gerrit.cloudera.org:8080/16834 Change subject: Update the home page .. Update the home page This patch updates the home page to be a bit more current on Kudu’s current goals and common usage. It also adds a quickstart button to help users get started using Kudu quickly. Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 --- M _includes/bottom_common.html M index.html 2 files changed, 8 insertions(+), 9 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/34/16834/1 -- To view, visit http://gerrit.cloudera.org:8080/16834 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: newchange Gerrit-Change-Id: I207932825ab5767efc9be9eba7877902e1338ae3 Gerrit-Change-Number: 16834 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke
[kudu-CR] Replace boost::iequals with our own implementation
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16826 ) Change subject: Replace boost::iequals with our own implementation .. Patch Set 6: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 6 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy Gerrit-Comment-Date: Tue, 08 Dec 2020 18:10:26 + Gerrit-HasComments: No
[kudu-CR] txn participant: return TXN ILLEGAL STATE code on illegal state errors
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16831 ) Change subject: txn_participant: return TXN_ILLEGAL_STATE code on illegal state errors .. Patch Set 3: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16831 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ibfb8400666855c694b78b1425b1c121597ec7ccf Gerrit-Change-Number: 16831 Gerrit-PatchSet: 3 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Tue, 08 Dec 2020 18:09:36 + Gerrit-HasComments: No
[kudu-CR] [tserver] KUDU-2612: participant op RPC endpoint
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16814 ) Change subject: [tserver] KUDU-2612: participant op RPC endpoint .. Patch Set 4: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16814 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic48895438ce67e453d235934ac560efe8415921b Gerrit-Change-Number: 16814 Gerrit-PatchSet: 4 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Tue, 08 Dec 2020 18:09:16 + Gerrit-HasComments: No
[kudu-CR] [docs] Fix a typo in the installation docs
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16832 ) Change subject: [docs] Fix a typo in the installation docs .. Patch Set 1: Code-Review+2 -- To view, visit http://gerrit.cloudera.org:8080/16832 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I96bfdd3d5245313b40205eab69434d34506e766c Gerrit-Change-Number: 16832 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Comment-Date: Tue, 08 Dec 2020 18:08:00 + Gerrit-HasComments: No
[kudu-CR](gh-pages) Publish docs changes from master
Hello Andrew Wong, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16828 to look at the new patch set (#2). Change subject: Publish docs changes from master .. Publish docs changes from master This patch publishes a bunch of recent docs changes from the master branch. It also updates the .gitignore file to prevent issues when switching branches. Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 --- M .gitignore M releases/1.13.0/docs/administration.html M releases/1.13.0/docs/background_tasks.html M releases/1.13.0/docs/command_line_tools.html M releases/1.13.0/docs/command_line_tools_reference.html M releases/1.13.0/docs/configuration.html M releases/1.13.0/docs/configuration_reference.html M releases/1.13.0/docs/configuration_reference_unsupported.html M releases/1.13.0/docs/contributing.html M releases/1.13.0/docs/developing.html M releases/1.13.0/docs/export_control.html M releases/1.13.0/docs/hive_metastore.html M releases/1.13.0/docs/index.html M releases/1.13.0/docs/installation.html M releases/1.13.0/docs/known_issues.html M releases/1.13.0/docs/kudu-master_configuration_reference.html M releases/1.13.0/docs/kudu-master_configuration_reference_unsupported.html A releases/1.13.0/docs/kudu-master_metrics_reference.html M releases/1.13.0/docs/kudu-tserver_configuration_reference.html M releases/1.13.0/docs/kudu-tserver_configuration_reference_unsupported.html A releases/1.13.0/docs/kudu-tserver_metrics_reference.html M releases/1.13.0/docs/kudu_impala_integration.html A releases/1.13.0/docs/metrics_reference.html M releases/1.13.0/docs/prior_release_notes.html M releases/1.13.0/docs/quickstart.html M releases/1.13.0/docs/quickstartdev.html M releases/1.13.0/docs/release_notes.html M releases/1.13.0/docs/scaling_guide.html M releases/1.13.0/docs/schema_design.html M releases/1.13.0/docs/security.html M releases/1.13.0/docs/transaction_semantics.html M releases/1.13.0/docs/troubleshooting.html 32 files changed, 40,872 insertions(+), 73 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/28/16828/2 -- To view, visit http://gerrit.cloudera.org:8080/16828 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: gh-pages Gerrit-MessageType: newpatchset Gerrit-Change-Id: Iedaa57269d77665331fb2846d837ba0f9d544e43 Gerrit-Change-Number: 16828 Gerrit-PatchSet: 2 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke
[kudu-CR] Replace boost::iequals with our own implementation
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/16826 ) Change subject: Replace boost::iequals with our own implementation .. Patch Set 5: (2 comments) http://gerrit.cloudera.org:8080/#/c/16826/5//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16826/5//COMMIT_MSG@13 PS5, Line 13: ascii > nit: ASCII Done http://gerrit.cloudera.org:8080/#/c/16826/5/src/kudu/util/string_case-test.cc File src/kudu/util/string_case-test.cc: http://gerrit.cloudera.org:8080/#/c/16826/5/src/kudu/util/string_case-test.cc@66 PS5, Line 66: string foo = "foo"; : string capital = "Foo"; : string caps = "FOO"; : string mix = "FoO"; : string zero = "FO0"; > nit: if there is an idea to test for 'const' qualifier of the parameters o Done -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 5 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy Gerrit-Comment-Date: Tue, 08 Dec 2020 18:00:20 + Gerrit-HasComments: Yes
[kudu-CR] Replace boost::iequals with our own implementation
Hello Mahesh Reddy, Alexey Serbin, Kudu Jenkins, I'd like you to reexamine a change. Please visit http://gerrit.cloudera.org:8080/16826 to look at the new patch set (#6). Change subject: Replace boost::iequals with our own implementation .. Replace boost::iequals with our own implementation This patch replaces uses of boost::iequals with our own implementation. This is a step in our ongoing work to reduce dependence on boost. Note that we don’t need to worry about locale awareness or performance given all usage today is against ASCII strings (not locale specific) and are not in performance sensitive code paths. Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 --- M src/kudu/clock/hybrid_clock.cc M src/kudu/hms/hms_client.cc M src/kudu/integration-tests/hms_itest-base.cc M src/kudu/rpc/sasl_common.cc M src/kudu/security/tls_context.cc M src/kudu/server/default_path_handlers.cc M src/kudu/server/server_base.cc M src/kudu/tools/ksck.cc M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/table_scanner.cc M src/kudu/tools/tool_action_cluster.cc M src/kudu/tools/tool_action_common.cc M src/kudu/tools/tool_action_hms.cc M src/kudu/tools/tool_action_master.cc M src/kudu/tools/tool_action_table.cc M src/kudu/tools/tool_action_test.cc M src/kudu/tools/tool_action_tserver.cc M src/kudu/util/flags.cc M src/kudu/util/string_case-test.cc M src/kudu/util/string_case.cc M src/kudu/util/string_case.h 21 files changed, 158 insertions(+), 104 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/26/16826/6 -- To view, visit http://gerrit.cloudera.org:8080/16826 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I6d2fdd30b739cee53e1551f784dbebfbe76e9233 Gerrit-Change-Number: 16826 Gerrit-PatchSet: 6 Gerrit-Owner: Grant Henke Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Mahesh Reddy
[kudu-CR] [docs] Fix a typo in the installation docs
Grant Henke has uploaded this change for review. ( http://gerrit.cloudera.org:8080/16832 Change subject: [docs] Fix a typo in the installation docs .. [docs] Fix a typo in the installation docs Change-Id: I96bfdd3d5245313b40205eab69434d34506e766c --- M docs/installation.adoc 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/32/16832/1 -- To view, visit http://gerrit.cloudera.org:8080/16832 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I96bfdd3d5245313b40205eab69434d34506e766c Gerrit-Change-Number: 16832 Gerrit-PatchSet: 1 Gerrit-Owner: Grant Henke
[kudu-CR] KUDU-2612 keep-alive txn heartbeating for C++ client
Alexey Serbin has posted comments on this change. ( http://gerrit.cloudera.org:8080/16779 ) Change subject: KUDU-2612 keep-alive txn heartbeating for C++ client .. Patch Set 3: (2 comments) Thank you for the review! http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/16779/3//COMMIT_MSG@14 PS3, Line 14: goes : out of scope. In contrast, if the transaction handle is created by : KuduTransaction::Deserialize(), the keepalive messages are or aren't > Can it happen that the original txn handle doesn't go out of scope and anot Yes, of course it's possible to have two actors sending keepalive messages for the same transaction. No, of course it's not a problem at all to have such a situation -- it doesn't hurt to have few actors sending those. It's enough to have just one actor sending keepalive messages for an ongoing transaction, and it's preferable to keep the number as low as possible to put less load on the cluster as possible. http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/client.h File src/kudu/client/client.h: http://gerrit.cloudera.org:8080/#/c/16779/3/src/kudu/client/client.h@485 PS3, Line 485: ring topology > Just curious, do you know any applications (that integrate with Kudu or not No, at this point I don't know about such applications. -- To view, visit http://gerrit.cloudera.org:8080/16779 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0283d8e16908f641388f7a30b513a672df27a186 Gerrit-Change-Number: 16779 Gerrit-PatchSet: 3 Gerrit-Owner: Alexey Serbin Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tim Armstrong Gerrit-Reviewer: Zoltan Borok-Nagy Gerrit-Comment-Date: Tue, 08 Dec 2020 17:43:49 + Gerrit-HasComments: Yes
[kudu-CR] KUDU-2612: fuzz transactional inserts
Grant Henke has posted comments on this change. ( http://gerrit.cloudera.org:8080/16699 ) Change subject: KUDU-2612: fuzz transactional inserts .. Patch Set 4: (9 comments) http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc File src/kudu/integration-tests/fuzz-itest.cc: http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@169 PS4, Line 169: constexpr const int kNoTxnId = -1; nit: Maybe `kNoVal` since not all ops use this value as a txn id. http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@277 PS4, Line 277: const vector kPkOnlyOps {TEST_INSERT_PK_ONLY, Any reason not to test transaction related ops here? http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@787 PS4, Line 787: // Generate a random valid sequence of operations for use as a fuzz test, i.e. More documentation. Awesome! http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@949 PS4, Line 949: if (!txn_operating_on_row && !exists[row_key]) { Dos this completely skip UPDATE_IGNORE ops for missing rows? http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@978 PS4, Line 978: if (!txn_operating_on_row && !exists[row_key]) { Dos this completely skip DELETE_IGNORE ops for missing rows? http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@992 PS4, Line 992: if (!ContainsKey(txns_needing_session_flush, txn_id)) continue; Nit: Add a comment explaining this continue like the others. http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@1075 PS4, Line 1075: if (pending_existence_per_txn.size() == 1 + FLAGS_max_open_txns) continue; Nit: Add a comment explaining this continue like the others. http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@1154 PS4, Line 1154: case TEST_UPSERT: Mind adding a TODO for the future about handling UPSERT pending_rows_per_txn when transactions supports UPSERTS? The same for UPDATE and DELETE below. http://gerrit.cloudera.org:8080/#/c/16699/4/src/kudu/integration-tests/fuzz-itest.cc@1177 PS4, Line 1177: // INSERT_IGNORE operation. Would it be worth also storing the OP type in the pending_rows_per_txn too so we can check this? I suspect that would be useful in the future for handling UPSERT/UPDATE/DELETE too. -- To view, visit http://gerrit.cloudera.org:8080/16699 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I719d42327ab18fda874332c9d6e1ae34aca8e846 Gerrit-Change-Number: 16699 Gerrit-PatchSet: 4 Gerrit-Owner: Andrew Wong Gerrit-Reviewer: Alexey Serbin Gerrit-Reviewer: Andrew Wong Gerrit-Reviewer: Grant Henke Gerrit-Reviewer: Hao Hao Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Tidy Bot (241) Gerrit-Comment-Date: Tue, 08 Dec 2020 16:29:59 + Gerrit-HasComments: Yes