2 <html lang="en-us" itemscope itemtype="http://schema.org/Article">
5 <meta name="description" content=" Spoke with Tom regarding making a rantools, or perhaps ran_swit_tools and ran_preswit_tools vob. Tom got the helpdesk ticket from Chris English regarding making a preswit vob. I added on the swit vob and discussed with Tom how to best...">
6 <meta name="generator" content="Movable Type 5.2.3">
7 <title>Santity Progress - Status</title>
8 <link rel="alternate" type="application/atom+xml" title="Recent Entries" href="http://defaria.com/blogs/Status/atom.xml">
9 <link rel="canonical" href="http://defaria.com/blogs/Status/2008/03/santity-progres.html">
10 <meta name="viewport" content="width=device-width,initial-scale=1">
11 <link rel="stylesheet" href="http://defaria.com/blogs/Status/styles.css">
13 <link rel="stylesheet" href="http://defaria.com/blogs/Status/styles_ie.css">
14 <script src="/mt/mt-static/support/theme_static/rainier/js/html5shiv.js"></script>
17 <link rel="start" href="http://defaria.com/blogs/Status/">
19 <link rel="prev" href="http://defaria.com/blogs/Status/2008/02/new-easter-opti.html" title="New easter options">
20 <link rel="next" href="http://defaria.com/blogs/Status/2008/03/sharable-vs-non.html" title="Sharable vs Non-sharable derived objects">
21 <!-- Open Graph Protocol -->
22 <meta property="og:type" content="article">
23 <meta property="og:locale" content="en-us">
24 <meta property="og:title" content="Santity Progress">
25 <meta property="og:url" content="http://defaria.com/blogs/Status/2008/03/santity-progres.html">
26 <meta property="og:description" content=" Spoke with Tom regarding making a rantools, or perhaps ran_swit_tools and ran_preswit_tools vob. Tom got the helpdesk ticket from Chris English regarding making a preswit vob. I added on the swit vob and discussed with Tom how to best...">
27 <meta property="og:site_name" content="Status">
28 <meta property="og:image" content="/mt/mt-static/support/theme_static/rainier/img/siteicon-sample.png">
30 <meta itemprop="description" content=" Spoke with Tom regarding making a rantools, or perhaps ran_swit_tools and ran_preswit_tools vob. Tom got the helpdesk ticket from Chris English regarding making a preswit vob. I added on the swit vob and discussed with Tom how to best...">
31 <link itemprop="url" href="http://defaria.com/blogs/Status/2008/03/santity-progres.html">
32 <link itemprop="image" href="/mt/mt-static/support/theme_static/rainier/img/siteicon-sample.png">
37 <div id="container-inner">
38 <header id="header" role="banner">
39 <div id="header-inner">
40 <div id="header-content">
42 <a href="http://defaria.com/blogs/Status/">
51 <nav role="navigation">
53 <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
62 <div id="content-inner">
63 <ul class="breadcrumb breadcrumb-list">
64 <li class="breadcrumb-list-item"><a href="http://defaria.com/blogs/Status/">Home</a></li>
65 <li class="breadcrumb-list-item">Santity Progress</li>
67 <div id="individual-main" class="main" role="main">
68 <article id="entry-1946" class="entry entry-asset asset hentry">
69 <div class="asset-header">
70 <h2 itemprop="name" class="asset-name entry-title">Santity Progress</h2>
71 <footer class="asset-meta">
72 <ul class="asset-meta-list">
73 <li class="asset-meta-list-item">Posted on <time datetime="2008-03-05T11:33:58-08:00" itemprop="datePublished">March 5, 2008</time></li>
74 <li class="asset-meta-list-item">by <span class="author entry-author vcard"></span></li>
77 <li class="asset-meta-list-item">in <a itemprop="articleSection" rel="tag" href="http://defaria.com/blogs/Status/general-dynamics/">General Dynamics</a></li>
83 <div class="entry-content asset-content" itemprop="articleBody">
85 <li>Spoke with Tom regarding making a rantools, or perhaps ran_swit_tools and ran_preswit_tools vob. Tom got the helpdesk ticket from Chris English regarding making a preswit vob. I added on the swit vob and discussed with Tom how to best do this.</li>
87 <li>Re-ported changes from Rexec version of easter -> non-Rexec version. Looks like we will be having a rantools vob replicated to cclinux. In any event, easter has been redesigned to run locally on seast1.</li>
89 <li>Figured out the problem with Rexec (and Expect for that matter). Turns out the Expect problem is the same Expect problem it always seems to be. Expecting a certain string and not seeing it. The twist is that this is indeterministic due to timing and stems from the odd way that start_auto_east operates. You see after executing start_auto_east control gets returned to you, thus you get a prompt, however background processes are also started and they write to the terminal, sometimes interrupting the prompt! This is not good. In general background processes should not be writing to the screen. I need to see if they can turn this off.</li>
91 <li>Learned that specifying "-run -log" will run the test but <b>not</b> turn on logging! You must do "-log -run"! In the past sometimes log files would not appear. They would appear if logging was turned on in the profile but not appear if it wasn't. IOW -log was not working because of option ordering! Fixed</li>
93 <li>Added rendezvous method and option to that we can run something in the background and then rendezvous with it by searching for a string in the produced logfile.</li>
95 <li>Learned that the logfile's presence is not immediate. IOW we start a configuration task, running it in the background, then call rendezvous in order to search the logfile for the message stating it's ready. However the logfile does not exist at this moment. So we must wait. Currently rendezvous uses timeout to wait. It does so by trying then taking 1/10 of timeout and sleeping, proceeding 10 times and then timing out. I need to include the locating of the logfile in this timeout cycle.</li>
97 <li>Moved stackOptions and -name, -if and -renedezvous into East.pm and process options using GetOptions. The problem was that I'm coming from a string, the test name followed by test options, and with -if and -rendezvous there's a good chance that the user wants to specify a quoted string. Yet GetOptions only works on @ARGV. So how to get a $str -> @ARGV taking into account that if you hit a quote you need to combine all tokens until the closing quote? Well that's what stackOptions does. So now this is all handled in East.pm. Additionally the test results hash needed to be passed to exec so that exec could do conditional test execution. This makes us pass two hashes and thus need to use references. All this is working now. Need to check to make sure that test results hash is updating in exec and that conditional test execution is working</li>
99 <li>Fixed problem in getting logfile name in that $self->{testName} was not getting set properly. Now it is and logfile names are being found</li>
101 <li>Still am not seeing what I'm expecting to see in the logfiles for rendezvous. Need to do testing by hand again and save the logfiles to show Leslie/Jonathan.</li>
103 <li>Changed to use a hash for all statistics. Added stats for skipped tests and rendezvous tests. This method is much more flexible and counters can be easily added</li>
105 <li>Added hack to get around Expect problems</li>
107 <li>Determined that messages seen in the text logfile are not already shown in the binary logfile</li>
109 <h2>Expect problems</h2>
111 <p>Last night I managed to discover what was causing my intermittent problem. This problem turns out to be one from Expect but it's more of a challenge. You see whenever you are writing stuff in Expect you are usually participating in a little black art. The challenge often is distinguishing between what you are looking for that you expect and what you get, which is sometimes not what you expect.</p>
113 <p>In general you are often issuing commands to the underlying process and then searching to see when it is done. So you are often looking for a prompt. The regular expression that I use for standard prompt is:</p>
115 <div class=code><pre>
119 <p>For seast1 this generally matches the "$ " that appears at the end of the prompt. There are two problems that can occur: First, output from a command can output exactly what you are looking for ("$ "). Fortunately having a command output a "$" followed by a " " at the end of a line is relatively rare.</p>
121 <p>The other problem that can happen is when something interferes with terminal I/O when outputting the prompt. How can this happen? Well when background processes indiscriminately write to the terminal at random times. What does this? start_east_auto does! Or rather things that start_east_auto calls does. For example, it calls restart_servers, which does an echo and calls other scripts, which probably also echo stuff.</p>
123 <p>If any of this background I/O gets written while the prompt is being written there's a chance (and it happens) that my Expect call will never see the prompt and it will timeout. The general rule is if you are processing in the background - don't output anything to the screen!</p>
125 <p>Can somebody look into this to see if these echo statements can be eliminated or at the very least, sent to a logfile that the user can examine if they want?</p>
127 <p>Otherwise I cannot guarantee that testing will not occasionally fail because of this.</p>
129 <nav class="page-navigation entry-navigation pagination content-nav">
130 <ul class="page-navigation-list">
132 <li class="page-navigation-list-item page-navigation-prev"><a rel="prev" href="http://defaria.com/blogs/Status/2008/02/new-easter-opti.html" title="New easter options">Previous entry</a></li>
135 <li class="page-navigation-list-item page-navigation-next"><a rel="next" href="http://defaria.com/blogs/Status/2008/03/sharable-vs-non.html" title="Sharable vs Non-sharable derived objects">Next entry</a></li>
140 <aside id="zenback" class="zenback feedback">
141 Please paste Zenback script code here.
148 <aside class="widgets related" role="complementary">
149 <nav class="widget-search widget">
150 <div class="widget-content">
151 <form method="get" id="search" action="http://defaria.com/mt/mt-search.cgi">
153 <input type="text" name="search" value="" placeholder="Search...">
155 <input type="hidden" name="IncludeBlogs" value="8">
157 <input type="hidden" name="limit" value="20">
158 <button type="submit" name="button">
159 <img alt="Search" src="/mt/mt-static/support/theme_static/rainier/img/search-icon.png">
165 <nav class="widget-archive-category widget">
166 <h3 class="widget-header">Categories</h3>
167 <div class="widget-content">
170 <ul class="widget-list">
173 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/ameriquest/">Ameriquest (99)</a>
181 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/audience/">Audience (3)</a>
189 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/broadcom/">Broadcom (76)</a>
197 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/gpdb/">GPDB (35)</a>
205 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-dynamics/">General Dynamics (61)</a>
213 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-electric/">General Electric (13)</a>
221 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/hewlett-packard/">Hewlett Packard (13)</a>
229 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/lynuxworks/">LynuxWorks (162)</a>
237 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/pqa/">PQA (35)</a>
245 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/salira/">Salira (79)</a>
253 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/tellabs/">Tellabs (2)</a>
261 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/texas-instruments/">Texas Instruments (31)</a>
273 <nav class="widget-archive-dropdown widget">
274 <h3 class="widget-header">Archives</h3>
275 <div class="widget-content">
277 <option>Select a Month...</option>
279 <option value="http://defaria.com/blogs/Status/2016/02/">February 2016</option>
283 <option value="http://defaria.com/blogs/Status/2014/09/">September 2014</option>
287 <option value="http://defaria.com/blogs/Status/2014/04/">April 2014</option>
291 <option value="http://defaria.com/blogs/Status/2014/03/">March 2014</option>
295 <option value="http://defaria.com/blogs/Status/2013/02/">February 2013</option>
299 <option value="http://defaria.com/blogs/Status/2012/09/">September 2012</option>
303 <option value="http://defaria.com/blogs/Status/2012/08/">August 2012</option>
307 <option value="http://defaria.com/blogs/Status/2012/05/">May 2012</option>
311 <option value="http://defaria.com/blogs/Status/2012/04/">April 2012</option>
315 <option value="http://defaria.com/blogs/Status/2012/02/">February 2012</option>
319 <option value="http://defaria.com/blogs/Status/2012/01/">January 2012</option>
323 <option value="http://defaria.com/blogs/Status/2011/10/">October 2011</option>
327 <option value="http://defaria.com/blogs/Status/2011/07/">July 2011</option>
331 <option value="http://defaria.com/blogs/Status/2010/09/">September 2010</option>
335 <option value="http://defaria.com/blogs/Status/2010/08/">August 2010</option>
339 <option value="http://defaria.com/blogs/Status/2010/04/">April 2010</option>
343 <option value="http://defaria.com/blogs/Status/2010/03/">March 2010</option>
347 <option value="http://defaria.com/blogs/Status/2010/02/">February 2010</option>
351 <option value="http://defaria.com/blogs/Status/2009/05/">May 2009</option>
355 <option value="http://defaria.com/blogs/Status/2009/04/">April 2009</option>
359 <option value="http://defaria.com/blogs/Status/2008/07/">July 2008</option>
363 <option value="http://defaria.com/blogs/Status/2008/05/">May 2008</option>
367 <option value="http://defaria.com/blogs/Status/2008/04/">April 2008</option>
371 <option value="http://defaria.com/blogs/Status/2008/03/">March 2008</option>
375 <option value="http://defaria.com/blogs/Status/2008/02/">February 2008</option>
379 <option value="http://defaria.com/blogs/Status/2008/01/">January 2008</option>
383 <option value="http://defaria.com/blogs/Status/2007/12/">December 2007</option>
387 <option value="http://defaria.com/blogs/Status/2007/11/">November 2007</option>
391 <option value="http://defaria.com/blogs/Status/2007/10/">October 2007</option>
395 <option value="http://defaria.com/blogs/Status/2007/09/">September 2007</option>
399 <option value="http://defaria.com/blogs/Status/2007/08/">August 2007</option>
403 <option value="http://defaria.com/blogs/Status/2007/07/">July 2007</option>
407 <option value="http://defaria.com/blogs/Status/2007/06/">June 2007</option>
411 <option value="http://defaria.com/blogs/Status/2007/05/">May 2007</option>
415 <option value="http://defaria.com/blogs/Status/2007/04/">April 2007</option>
419 <option value="http://defaria.com/blogs/Status/2007/03/">March 2007</option>
423 <option value="http://defaria.com/blogs/Status/2007/01/">January 2007</option>
427 <option value="http://defaria.com/blogs/Status/2006/12/">December 2006</option>
431 <option value="http://defaria.com/blogs/Status/2006/11/">November 2006</option>
435 <option value="http://defaria.com/blogs/Status/2006/10/">October 2006</option>
439 <option value="http://defaria.com/blogs/Status/2006/09/">September 2006</option>
443 <option value="http://defaria.com/blogs/Status/2006/07/">July 2006</option>
447 <option value="http://defaria.com/blogs/Status/2006/06/">June 2006</option>
451 <option value="http://defaria.com/blogs/Status/2006/05/">May 2006</option>
455 <option value="http://defaria.com/blogs/Status/2006/04/">April 2006</option>
459 <option value="http://defaria.com/blogs/Status/2006/03/">March 2006</option>
463 <option value="http://defaria.com/blogs/Status/2006/02/">February 2006</option>
467 <option value="http://defaria.com/blogs/Status/2006/01/">January 2006</option>
471 <option value="http://defaria.com/blogs/Status/2005/12/">December 2005</option>
475 <option value="http://defaria.com/blogs/Status/2005/11/">November 2005</option>
479 <option value="http://defaria.com/blogs/Status/2005/10/">October 2005</option>
483 <option value="http://defaria.com/blogs/Status/2005/09/">September 2005</option>
487 <option value="http://defaria.com/blogs/Status/2005/08/">August 2005</option>
491 <option value="http://defaria.com/blogs/Status/2005/07/">July 2005</option>
495 <option value="http://defaria.com/blogs/Status/2005/06/">June 2005</option>
499 <option value="http://defaria.com/blogs/Status/2005/05/">May 2005</option>
503 <option value="http://defaria.com/blogs/Status/2005/04/">April 2005</option>
507 <option value="http://defaria.com/blogs/Status/2005/03/">March 2005</option>
511 <option value="http://defaria.com/blogs/Status/2005/02/">February 2005</option>
515 <option value="http://defaria.com/blogs/Status/2005/01/">January 2005</option>
519 <option value="http://defaria.com/blogs/Status/2004/12/">December 2004</option>
523 <option value="http://defaria.com/blogs/Status/2004/09/">September 2004</option>
527 <option value="http://defaria.com/blogs/Status/2004/08/">August 2004</option>
531 <option value="http://defaria.com/blogs/Status/2004/07/">July 2004</option>
535 <option value="http://defaria.com/blogs/Status/2004/06/">June 2004</option>
539 <option value="http://defaria.com/blogs/Status/2004/05/">May 2004</option>
543 <option value="http://defaria.com/blogs/Status/2004/04/">April 2004</option>
547 <option value="http://defaria.com/blogs/Status/2004/03/">March 2004</option>
551 <option value="http://defaria.com/blogs/Status/2004/02/">February 2004</option>
555 <option value="http://defaria.com/blogs/Status/2004/01/">January 2004</option>
559 <option value="http://defaria.com/blogs/Status/2003/12/">December 2003</option>
563 <option value="http://defaria.com/blogs/Status/2003/11/">November 2003</option>
571 <div class="widget-syndication widget section">
572 <div class="widget-content">
573 <p><img src="http://defaria.com/mt/mt-static/images/status_icons/feed.gif" alt="Subscribe to feed" width="9" height="9" /> <a href="http://defaria.com/blogs/Status/atom.xml">Subscribe to this blog's feed</a></p>
581 <footer id="footer" role="contentinfo">
582 <div id="footer-inner">
583 <div id="footer-content">
584 <nav role="navigation">
586 <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
592 <p class="license">© Copyright 2016.</p>
593 <p class="poweredby">Powered by <a href="http://www.movabletype.org/">Movable Type</a></p>
599 <script src="http://defaria.com/mt/mt-static/jquery/jquery.min.js"></script>
600 <script src="http://defaria.com/blogs/Status/mt-theme-scale2.js"></script>