{"id":2213,"date":"2016-02-21T11:22:55","date_gmt":"2016-02-21T09:22:55","guid":{"rendered":"http:\/\/hasselba.ch\/blog\/?p=2213"},"modified":"2016-02-22T14:06:09","modified_gmt":"2016-02-22T12:06:09","slug":"how-to-crash-a-domino-server","status":"publish","type":"post","link":"https:\/\/hasselba.ch\/blog\/?p=2213","title":{"rendered":"How To Crash a Domino Server in 500ms"},"content":{"rendered":"<h1>How To Crash a Domino Server in 500ms<\/h1>\n<p>1. Create a Java agent and do something in your <em>finally <\/em>block (or in a <em>ThreadDeath<\/em> exception handling) which runs longer than 500ms<\/p>\n<pre><code>import lotus.domino.AgentBase;\r\n\r\npublic class JavaAgent extends AgentBase {\r\n\r\n\u00a0\u00a0 \u00a0public void NotesMain() {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0try {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0int i = 0;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0while (i &lt; 1000) {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0i++;\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0System.out.println(\"Round \" + i);\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0try {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0Thread.sleep(1000);\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0} catch (InterruptedException e) {}\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0}\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0} finally {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0try {\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0Thread.sleep(1000);\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0} catch (Exception e) {}\r\n\u00a0\u00a0 \u00a0\u00a0\u00a0 \u00a0}\r\n\u00a0\u00a0 \u00a0}\r\n}<\/code><\/pre>\n<p>2. Run the agent on the server<\/p>\n<p><a href=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator1.png\" rel=\"attachment wp-att-2217\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2217\" src=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator1.png\" alt=\"2016-02-20 11_31_17-SH Domain - Dev01_Hasselba_CH - IBM Domino Administrator1\" width=\"988\" height=\"118\" srcset=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator1.png 988w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator1-300x36.png 300w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator1-768x92.png 768w\" sizes=\"auto, (max-width: 988px) 100vw, 988px\" \/><\/a><\/p>\n<p>3. Quit the Agent Manager<\/p>\n<p><a href=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator2.png\" rel=\"attachment wp-att-2216\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2216\" src=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator2.png\" alt=\"2016-02-20 11_31_17-SH Domain - Dev01_Hasselba_CH - IBM Domino Administrator2\" width=\"773\" height=\"105\" srcset=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator2.png 773w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator2-300x41.png 300w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator2-768x104.png 768w\" sizes=\"auto, (max-width: 773px) 100vw, 773px\" \/><\/a><\/p>\n<p>4. And then restart it<\/p>\n<p><a href=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator3.png\" rel=\"attachment wp-att-2218\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2218\" src=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator3.png\" alt=\"2016-02-20 11_31_17-SH Domain - Dev01_Hasselba_CH - IBM Domino Administrator3\" width=\"764\" height=\"54\" srcset=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator3.png 764w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator3-300x21.png 300w\" sizes=\"auto, (max-width: 764px) 100vw, 764px\" \/><\/a><\/p>\n<p>5. Enjoy the silence<\/p>\n<p><a href=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator4.png\" rel=\"attachment wp-att-2219\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2219\" src=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator4.png\" alt=\"2016-02-20 11_31_17-SH Domain - Dev01_Hasselba_CH - IBM Domino Administrator4\" width=\"772\" height=\"63\" srcset=\"https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator4.png 772w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator4-300x24.png 300w, https:\/\/hasselba.ch\/blog\/wp-content\/uploads\/2016\/02\/2016-02-20-11_31_17-SH-Domain-Dev01_Hasselba_CH-IBM-Domino-Administrator4-768x63.png 768w\" sizes=\"auto, (max-width: 772px) 100vw, 772px\" \/><\/a><\/p>\n<p>Fun fact: This works well in a IBM Notes Client too! Just start the agent and cancel it a few times (<em>&lt;CTRL&gt; + &lt;BREAK&gt;<\/em>).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>How To Crash a Domino Server in 500ms 1. Create a Java agent and do something in your finally block (or in a ThreadDeath exception handling) which runs longer than 500ms import lotus.domino.AgentBase; public class JavaAgent extends AgentBase { \u00a0\u00a0 &hellip; <a href=\"https:\/\/hasselba.ch\/blog\/?p=2213\">Weiterlesen <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[21,83,89,82],"tags":[79,15,7,31],"class_list":["post-2213","post","type-post","status-publish","format-standard","hentry","category-agenten","category-bug","category-java","category-server","tag-agenten","tag-bug","tag-domino","tag-java"],"_links":{"self":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2213","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2213"}],"version-history":[{"count":6,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2213\/revisions"}],"predecessor-version":[{"id":2225,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/2213\/revisions\/2225"}],"wp:attachment":[{"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hasselba.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}