{"id":137,"date":"2009-02-19T19:25:53","date_gmt":"2009-02-19T08:25:53","guid":{"rendered":"http:\/\/nsrd.wordpress.com\/?p=137"},"modified":"2009-02-19T19:25:53","modified_gmt":"2009-02-19T08:25:53","slug":"getting-jobquery-to-talk-to-you","status":"publish","type":"post","link":"https:\/\/nsrd.info\/blog\/2009\/02\/19\/getting-jobquery-to-talk-to-you\/","title":{"rendered":"Getting jobquery to talk to you"},"content":{"rendered":"<p>I&#8217;ve been using nsradmin for the last 12 years. So when I read about a new utility, &#8216;jobquery&#8217; in NetWorker 7.5, that&#8217;s designed to work in a similar way to nsradmin but query the jobs database instead of the media database, I was looking forward to giving it a go. (This was in no small part to lingering disappointment over how nsrjobsd has been practically a black box since it was introduced.)<\/p>\n<p>So I was rather &#8230; disappointed when I ran jobquery for the first time and it appeared to hang.<\/p>\n<p>Running, say:<\/p>\n<pre># jobquery<\/pre>\n<p>Appeared to hang.<\/p>\n<p>Running, say:<\/p>\n<pre># jobquery -s server<\/pre>\n<p>Also appeared to hang.<\/p>\n<p>Running, say:<\/p>\n<pre># jobquery -s server print<\/pre>\n<p>Didn&#8217;t return a thing.<\/p>\n<p>So I thought maybe this is a tool that was let out of the barn a little too soon, and even went to the point of logging a question case with EMC about it. After all, it appeared to not really work at all.<\/p>\n<p>It turns out I&#8217;d not anticipated that there might have been a simpler problem with <em>jobquery<\/em>, that being &#8230; less than desirable interface design. Let&#8217;s be blunt: if you write an interactive &#8220;shell&#8221; style query interface, it <em>should<\/em> tell the user when it&#8217;s waiting for input.<\/p>\n<p>The problem with the initial invocation attempts was a simple one \u2013 it wasn&#8217;t hanging, but instead, it was waiting for input without <em>telling me<\/em> it was waiting for input. Consequently, I&#8217;m currently asking EMC to file a bug about this. I know the difference between RFEs and bugs \u2013 an RFE is a request for enhancement, or to <em>change<\/em> something that&#8217;s there by design, but a bug is a problem with the actual implementation. Now, someone might argue that maybe this should be filed as an RFE if it was originally designed to <em>not<\/em> show any prompt, but my take on it is that any interface that doesn&#8217;t differentiate between <strong>&#8220;waiting for input&#8221;<\/strong> and <strong>&#8220;processing\/stuck&#8221;<\/strong> is, in actuality, a buggy design.<\/p>\n<p>Oh, and jobquery just doesn&#8217;t like being told what to do in relation to queries on the command line, even though the man page says it will accept it.<\/p>\n<p>If you&#8217;ve been trying to use jobquery and not getting much satisfaction, try it again without waiting for a prompt. Once I got past the lack of prompt, I was quite <em>excited<\/em> by the promise of jobquery \u2013 in fact, I&#8217;m hoping that a future release will actually implement the ability to even <em>stop<\/em> jobs \u2013 e.g., kill off a single saveset, or even say, <em>pause<\/em> a clone\/stage operation.<\/p>\n<p>No doubt jobquery needs some improvements, but it wasn&#8217;t quite the aborted attempt I&#8217;d been initially worried about, and you should give it a go \u2013 you&#8217;ll be pleasantly surprised.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been using nsradmin for the last 12 years. So when I read about a new utility, &#8216;jobquery&#8217; in NetWorker&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[16],"tags":[511,1249],"class_list":["post-137","post","type-post","status-publish","format-standard","hentry","category-networker","tag-jobquery","tag-networker"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pKpIN-2d","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/137","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/comments?post=137"}],"version-history":[{"count":0,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/posts\/137\/revisions"}],"wp:attachment":[{"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/media?parent=137"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/categories?post=137"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nsrd.info\/blog\/wp-json\/wp\/v2\/tags?post=137"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}