Adar Dembo has posted comments on this change.

Change subject: Add Google Breakpad support to Kudu
......................................................................


Patch Set 24: -Code-Review

(1 comment)

http://gerrit.cloudera.org:8080/#/c/5620/21/src/kudu/util/minidump.cc
File src/kudu/util/minidump.cc:

PS21, Line 261:   user_signal_handler_thread_->Join();
              : }
> You're correct about how sigwait() works.
> Incidentally, a blocked SIGUSR1 will be inherited by all Kudu subprocesses. I 
> don't think that's an issue today because we don't launch subprocesses in 
> production, but we will soon (Todd is introducing something like that for 
> kerberos). Blocking SIGUSR1 for them may be innocuous if they're short-lived, 
> but if they're long-lived it could be problematic.

We discussed this on Slack. Apparently exec() doesn't reset signal handlers for 
block signals[1], and Todd pointed out that the JVM reserves SIGUSR1 for 
internal use. So if we were to launch a JVM via our subprocess mechanism, it 
might encounter issues.

So let's unblock (just SIGUSR1? all?) signals after the fork() but before 
exec() in subprocess.cc.

1. https://lwn.net/Articles/415684/


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

Gerrit-MessageType: comment
Gerrit-Change-Id: I495695cc38b75377f20b0497093a81ed5baa887f
Gerrit-PatchSet: 24
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-Owner: Mike Percy <mpe...@apache.org>
Gerrit-Reviewer: Adar Dembo <a...@cloudera.com>
Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com>
Gerrit-Reviewer: Dinesh Bhat <din...@cloudera.com>
Gerrit-Reviewer: Kudu Jenkins
Gerrit-Reviewer: Lars Volker <l...@cloudera.com>
Gerrit-Reviewer: Mike Percy <mpe...@apache.org>
Gerrit-Reviewer: Tidy Bot
Gerrit-Reviewer: Todd Lipcon <t...@apache.org>
Gerrit-HasComments: Yes

Reply via email to