[jira] [Assigned] (KUDU-3524) The {{TestScannerKeepAlivePeriodicallyCrossServers}} scenario fails with SIGABRT

2023-11-13 Thread Alexey Serbin (Jira)


 [ 
https://issues.apache.org/jira/browse/KUDU-3524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexey Serbin reassigned KUDU-3524:
---

Assignee: (was: Alexey Serbin)

> The {{TestScannerKeepAlivePeriodicallyCrossServers}} scenario fails with 
> SIGABRT
> 
>
> Key: KUDU-3524
> URL: https://issues.apache.org/jira/browse/KUDU-3524
> Project: Kudu
>  Issue Type: Bug
>Reporter: Alexey Serbin
>Priority: Major
>
> Running the newly added tests scenario 
> {{TestScannerKeepAlivePeriodicallyCrossServers}} fails with SIGABRT when run 
> as the following on macOS (but I guess it's not macOS-specific) in DEBUG 
> build:
> {noformat}
> ./bin/client-test --stress_cpu_threads=32 
> --gtest_filter='*TestScannerKeepAlivePeriodicallyCrossServers*'
> {noformat}
> The error message and the stacktrace is below:
> {noformat}
> F20231113 12:21:13.431455 41195482 thread_restrictions.cc:79] Check failed: 
> LoadTLS()->wait_allowed Waiting is not allowed to be used on this thread to 
> prevent server-wide latency aberrations and deadlocks. Thread 41195482 (name: 
> "rpc reactor", category: "reactor")
> *** Check failure stack trace: ***
> Process 77090 stopped
> * thread #335, name = 'rpc reactor-41195482', stop reason = signal SIGABRT
> frame #0: 0x7fff205b890e libsystem_kernel.dylib`__pthread_kill + 10
> libsystem_kernel.dylib`__pthread_kill:
> ->  0x7fff205b890e <+10>: jae0x7fff205b8918; <+20>
> 0x7fff205b8910 <+12>: movq   %rax, %rdi
> 0x7fff205b8913 <+15>: jmp0x7fff205b2ab9; cerror_nocancel
> 0x7fff205b8918 <+20>: retq   
> Target 0: (client-test) stopped.
> (lldb) bt
> * thread #335, name = 'rpc reactor-41195482', stop reason = signal SIGABRT
>   * frame #0: 0x7fff205b890e libsystem_kernel.dylib`__pthread_kill + 10
> frame #1: 0x7fff205e75bd libsystem_pthread.dylib`pthread_kill + 263
> frame #2: 0x7fff2053c406 libsystem_c.dylib`abort + 125
> frame #3: 0x00010f64ebd8 
> libglog.1.dylib`google::LogMessage::SendToLog() [inlined] 
> google::LogMessage::Fail() at logging.cc:1946:3 [opt]
> frame #4: 0x00010f64ebd2 
> libglog.1.dylib`google::LogMessage::SendToLog(this=0x70001a95e108) at 
> logging.cc:1920:5 [opt]
> frame #5: 0x00010f64f47a 
> libglog.1.dylib`google::LogMessage::Flush(this=0x70001a95e108) at 
> logging.cc:1777:5 [opt]
> frame #6: 0x00010f65428f 
> libglog.1.dylib`google::LogMessageFatal::~LogMessageFatal(this=0x70001a95e108)
>  at logging.cc:2557:5 [opt]
> frame #7: 0x00010f650349 
> libglog.1.dylib`google::LogMessageFatal::~LogMessageFatal(this=) 
> at logging.cc:2556:37 [opt]
> frame #8: 0x00010e545473 
> libkudu_util.dylib`kudu::ThreadRestrictions::AssertWaitAllowed() at 
> thread_restrictions.cc:79:3
> frame #9: 0x00010013ebb9 
> client-test`kudu::CountDownLatch::Wait(this=0x70001a95e2a0) const at 
> countdown_latch.h:74:5
> frame #10: 0x00010a1749f5 
> libkrpc.dylib`kudu::Notification::WaitForNotification(this=0x70001a95e2a0)
>  const at notification.h:127:12
> frame #11: 0x00010a1748e9 
> libkrpc.dylib`kudu::rpc::Proxy::SyncRequest(this=0x00011317e9b8, 
> method="ScannerKeepAlive", req=0x70001a95e428, resp=0x70001a95e408, 
> controller=0x70001a95e458) at proxy.cc:259:8
> frame #12: 0x00010697220f 
> libtserver_service_proto.dylib`kudu::tserver::TabletServerServiceProxy::ScannerKeepAlive(this=0x00011317e9b8,
>  req=0x70001a95e428, resp=0x70001a95e408, 
> controller=0x70001a95e458) at tserver_service.proxy.cc:98:10
> frame #13: 0x00010525c5b6 
> libkudu_client.dylib`kudu::client::KuduScanner::Data::KeepAlive(this=0x00011290c700)
>  at scanner-internal.cc:664:3
> frame #14: 0x000105269e76 
> libkudu_client.dylib`kudu::client::KuduScanner::Data::StartKeepAlivePeriodically(this=0x000112899858)::$_0::operator()()
>  const at scanner-internal.cc:112:16
> frame #15: 0x000105269e30 
> libkudu_client.dylib`decltype(__f=0x000112899858)::$_0&>(fp)()) 
> std::__1::__invoke  long long, 
> std::__1::shared_ptr)::$_0&>(kudu::client::KuduScanner::Data::StartKeepAlivePeriodically(unsigned
>  long long, std::__1::shared_ptr)::$_0&) at 
> type_traits:3694:1
> frame #16: 0x000105269dd1 libkudu_client.dylib`void 
> std::__1::__invoke_void_return_wrapper true>::__call(kudu::client::KuduScanner::Data::StartKeepAlivePeriodically(unsigned
>  long long, std::__1::shared_ptr)::$_0&) at 
> __functional_base:348:9
> frame #17: 0x000105269d9d 
> libkudu_client.dylib`std::__1::__function::__alloc_func  long long, std::__1::shared_ptr)::$_0, 
> std::__1::allocator  long long, std::__1::shared_ptr)::$_0>, void 
> ()>::operator(this=0x000112899858)() at 

[jira] [Assigned] (KUDU-3524) The {{TestScannerKeepAlivePeriodicallyCrossServers}} scenario fails with SIGABRT

2023-11-13 Thread Alexey Serbin (Jira)


 [ 
https://issues.apache.org/jira/browse/KUDU-3524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexey Serbin reassigned KUDU-3524:
---

Assignee: Alexey Serbin

> The {{TestScannerKeepAlivePeriodicallyCrossServers}} scenario fails with 
> SIGABRT
> 
>
> Key: KUDU-3524
> URL: https://issues.apache.org/jira/browse/KUDU-3524
> Project: Kudu
>  Issue Type: Bug
>Reporter: Alexey Serbin
>Assignee: Alexey Serbin
>Priority: Major
>
> Running the newly added tests scenario 
> {{TestScannerKeepAlivePeriodicallyCrossServers}} fails with SIGABRT when run 
> as the following on macOS (but I guess it's not macOS-specific) in DEBUG 
> build:
> {noformat}
> ./bin/client-test --stress_cpu_threads=32 
> --gtest_filter='*TestScannerKeepAlivePeriodicallyCrossServers*'
> {noformat}
> The error message and the stacktrace is below:
> {noformat}
> F20231113 12:21:13.431455 41195482 thread_restrictions.cc:79] Check failed: 
> LoadTLS()->wait_allowed Waiting is not allowed to be used on this thread to 
> prevent server-wide latency aberrations and deadlocks. Thread 41195482 (name: 
> "rpc reactor", category: "reactor")
> *** Check failure stack trace: ***
> Process 77090 stopped
> * thread #335, name = 'rpc reactor-41195482', stop reason = signal SIGABRT
> frame #0: 0x7fff205b890e libsystem_kernel.dylib`__pthread_kill + 10
> libsystem_kernel.dylib`__pthread_kill:
> ->  0x7fff205b890e <+10>: jae0x7fff205b8918; <+20>
> 0x7fff205b8910 <+12>: movq   %rax, %rdi
> 0x7fff205b8913 <+15>: jmp0x7fff205b2ab9; cerror_nocancel
> 0x7fff205b8918 <+20>: retq   
> Target 0: (client-test) stopped.
> (lldb) bt
> * thread #335, name = 'rpc reactor-41195482', stop reason = signal SIGABRT
>   * frame #0: 0x7fff205b890e libsystem_kernel.dylib`__pthread_kill + 10
> frame #1: 0x7fff205e75bd libsystem_pthread.dylib`pthread_kill + 263
> frame #2: 0x7fff2053c406 libsystem_c.dylib`abort + 125
> frame #3: 0x00010f64ebd8 
> libglog.1.dylib`google::LogMessage::SendToLog() [inlined] 
> google::LogMessage::Fail() at logging.cc:1946:3 [opt]
> frame #4: 0x00010f64ebd2 
> libglog.1.dylib`google::LogMessage::SendToLog(this=0x70001a95e108) at 
> logging.cc:1920:5 [opt]
> frame #5: 0x00010f64f47a 
> libglog.1.dylib`google::LogMessage::Flush(this=0x70001a95e108) at 
> logging.cc:1777:5 [opt]
> frame #6: 0x00010f65428f 
> libglog.1.dylib`google::LogMessageFatal::~LogMessageFatal(this=0x70001a95e108)
>  at logging.cc:2557:5 [opt]
> frame #7: 0x00010f650349 
> libglog.1.dylib`google::LogMessageFatal::~LogMessageFatal(this=) 
> at logging.cc:2556:37 [opt]
> frame #8: 0x00010e545473 
> libkudu_util.dylib`kudu::ThreadRestrictions::AssertWaitAllowed() at 
> thread_restrictions.cc:79:3
> frame #9: 0x00010013ebb9 
> client-test`kudu::CountDownLatch::Wait(this=0x70001a95e2a0) const at 
> countdown_latch.h:74:5
> frame #10: 0x00010a1749f5 
> libkrpc.dylib`kudu::Notification::WaitForNotification(this=0x70001a95e2a0)
>  const at notification.h:127:12
> frame #11: 0x00010a1748e9 
> libkrpc.dylib`kudu::rpc::Proxy::SyncRequest(this=0x00011317e9b8, 
> method="ScannerKeepAlive", req=0x70001a95e428, resp=0x70001a95e408, 
> controller=0x70001a95e458) at proxy.cc:259:8
> frame #12: 0x00010697220f 
> libtserver_service_proto.dylib`kudu::tserver::TabletServerServiceProxy::ScannerKeepAlive(this=0x00011317e9b8,
>  req=0x70001a95e428, resp=0x70001a95e408, 
> controller=0x70001a95e458) at tserver_service.proxy.cc:98:10
> frame #13: 0x00010525c5b6 
> libkudu_client.dylib`kudu::client::KuduScanner::Data::KeepAlive(this=0x00011290c700)
>  at scanner-internal.cc:664:3
> frame #14: 0x000105269e76 
> libkudu_client.dylib`kudu::client::KuduScanner::Data::StartKeepAlivePeriodically(this=0x000112899858)::$_0::operator()()
>  const at scanner-internal.cc:112:16
> frame #15: 0x000105269e30 
> libkudu_client.dylib`decltype(__f=0x000112899858)::$_0&>(fp)()) 
> std::__1::__invoke  long long, 
> std::__1::shared_ptr)::$_0&>(kudu::client::KuduScanner::Data::StartKeepAlivePeriodically(unsigned
>  long long, std::__1::shared_ptr)::$_0&) at 
> type_traits:3694:1
> frame #16: 0x000105269dd1 libkudu_client.dylib`void 
> std::__1::__invoke_void_return_wrapper true>::__call(kudu::client::KuduScanner::Data::StartKeepAlivePeriodically(unsigned
>  long long, std::__1::shared_ptr)::$_0&) at 
> __functional_base:348:9
> frame #17: 0x000105269d9d 
> libkudu_client.dylib`std::__1::__function::__alloc_func  long long, std::__1::shared_ptr)::$_0, 
> std::__1::allocator  long long, std::__1::shared_ptr)::$_0>, void 
>