Initial add of defaria.com
[clearscm.git] / defaria.com / blogs / Status / archives / 2005_11.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" id="sixapart-standard">
4 <head>
5    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6    <meta name="generator" content="Movable Type 5.2.3" />
7
8    <link rel="stylesheet" href="http://defaria.com/blogs/Status/styles-site.css" type="text/css" />
9    <link rel="alternate" type="application/atom+xml" title="Atom" href="http://defaria.com/blogs/Status/atom.xml" />
10    <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://defaria.com/blogs/Status/index.xml"$>" />
11
12    <title>Status for Andrew DeFaria: November 2005 Archives</title>
13
14    <link rel="start" href="http://defaria.com/blogs/Status/" title="Home" />
15    <link rel="prev" href="http://defaria.com/blogs/Status/archives/2005_10.html" title="October 2005" />
16    <link rel="next" href="http://defaria.com/blogs/Status/archives/2005_12.html" title="December 2005" />
17 </head>
18 <body class="layout-one-column">
19    <div id="container">
20       <div id="container-inner" class="pkg">
21
22          <div id="banner">
23             <div id="banner-inner" class="pkg">
24                <h1 id="banner-header"><a href="http://defaria.com/blogs/Status/" accesskey="1">Status for Andrew DeFaria</a></h1>
25                <h2 id="banner-description">Searchable status reports and work log</h2>
26             </div>
27          </div>
28
29          <div id="pagebody">
30             <div id="pagebody-inner" class="pkg">
31                <div id="alpha">
32                   <div id="alpha-inner" class="pkg">
33                      
34                      <p class="content-nav">
35                         <a href="http://defaria.com/blogs/Status/archives/2005_10.html">&laquo; October 2005</a> |
36                         <a href="http://defaria.com/blogs/Status/">Main</a>
37                         | <a href="http://defaria.com/blogs/Status/archives/2005_12.html">December 2005 &raquo;</a>
38                      </p>
39                      
40                      
41                      
42
43                      <h2 class="date-header">November 30, 2005</h2>
44                      <a id="a000487"></a>
45                      <div class="entry" id="entry-487">
46                         <h3 class="entry-header">Stgloc/Code Page</h3>
47                         <div class="entry-content">
48                            <div class="entry-body">
49                               <ul>
50   <li>Tried to figure out why -stgloc is not working in Richmond nor why I can't seem to create a view in a share that is in an area where .stgloc exists</li>
51
52   <li>Worked with Vin Ton and Rob Swindell regarding a problem with CQ Web and Code Pages</li>
53
54   <li>Worked on other code page issues</li>
55
56   <li>Added CharacterSetValidation package to PQA</li>
57 </ul>
58                               
59                               <h2>Stgloc problems</h2>
60
61 <p>Why does the following happen:</p>
62
63 <div class="code"><pre>
64 Local:mkdir \\\\fs-rmna-01\\<span>viewstoreQA</span>\\adefaria_test
65 Local:rmdir \\\\fs-rmna-01\\<span>viewstoreQA</span>\\adefaria_test
66 Local:ct mkview -tag adefaria_test \\\\fs-rmna-01\\viewstoreQA\adefaria_test
67 cleartool: Error: Attempt to get location information on "\\fs-rmna-01\viewstoreQA\adefaria_test"
68 failed: Invalid argument.
69 Local:ct mkview -tag adefaria_test \\\\ltsjca-adefaria\\views\\adefaria_test
70 Created view.
71 Host-local path: ltsjca-adefaria:C:\Views\adefaria_test
72 Global path:&nbsp;&nbsp;&nbsp;&nbsp; \\ltsjca-adefaria\views\adefaria_test
73 </pre></div>
74
75 <p>I suspect that the problem is that this area is on a filer so Clearcase cannot determine where the view_server process should run. I believe that the only way Clearcase can figure out which server should serve the view_server process for this area is via the stgloc and that the stgloc for this area is not properly configured. Attempting to create views either through the command liine or the GUI using -stgloc viewstore or viewstoreQA also fail.</p>
76                               
77                               <p class="entry-footer">
78                                  <span class="post-footers">Posted by  at  4:48 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000487.html">Permalink</a>
79                                  
80                                  
81                               </p>
82                            </div>
83                         </div>
84                      </div>
85                      
86                      
87
88                      <h2 class="date-header">November 29, 2005</h2>
89                      <a id="a000486"></a>
90                      <div class="entry" id="entry-486">
91                         <h3 class="entry-header">create_dev_snapview</h3>
92                         <div class="entry-content">
93                            <div class="entry-body">
94                               <ul>
95   <li>Updated create_dev_snapview to support -tag, -dir and -load_rules.</li>
96 </ul>
97                               
98                               <p class="entry-footer">
99                                  <span class="post-footers">Posted by  at  5:10 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000486.html">Permalink</a>
100                                  
101                                  
102                               </p>
103                            </div>
104                         </div>
105                      </div>
106                      
107                      
108
109                      <h2 class="date-header">November 28, 2005</h2>
110                      <a id="a000485"></a>
111                      <div class="entry" id="entry-485">
112                         <h3 class="entry-header">bin_merge/create_snapshot_view/PQA</h3>
113                         <div class="entry-content">
114                            <div class="entry-body">
115                               <ul>
116   <li>Investigating issues with bin_merge</li>
117
118   <li>Discussed with Andrew about extending script to create snapshot views</li>
119
120   <li>Worked with two people who have had issues with accessing new PQA Clearquest database</li>
121 </ul>
122                               
123                               <h2>bin_merge</h2>
124
125 <p>Spoke with Shivdutt about this. We decided that bin_merge should copy the binary file from the branch to the current view's checkedout copy and draw a merge arrow. Also, it should just draw an merge arrow if the user elects to use the from branch version. This mimicks a parent/child relationship that is assumed here</p>
126
127 <p>Still need to look into the Rebase to parent operation.</p>
128                               
129                               <p class="entry-footer">
130                                  <span class="post-footers">Posted by  at  6:02 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000485.html">Permalink</a>
131                                  
132                                  
133                               </p>
134                            </div>
135                         </div>
136                      </div>
137                      
138                      
139
140                      <h2 class="date-header">November 23, 2005</h2>
141                      <a id="a000484"></a>
142                      <div class="entry" id="entry-484">
143                         <h3 class="entry-header">Forking in PerlTk</h3>
144                         <div class="entry-content">
145                            <div class="entry-body">
146                               <ul>
147   <li>Continued to help several users with connecting to the new Controller Clearquest Database for Vinh's users</li>
148
149   <li>Added Version Tree button to the bin_merge prompt dialog box.</li>
150
151   <li>Resolved problem with forking from PerlTk</li>
152 </ul>
153                               
154                               <h2>Forking in PerlTk</h2>
155
156 <p>The issue here is that calling fork(2) in general on Windows just doesn't work well. Clearcase's Perl is based on ActiveState Perl and ActiveState Perl is not the best implementation of Perl. Cygwin's Perl is by far a much better implementation but Cygwin's Perl works from a true Posix environment which is specifically what Cygwin is all about. However Cygwin's Perl does not support PerlTk (I posted on Cygwin's mailing list about this - it would be great if Cygwin would finally support PerlTk) and Cygwin would need to be present on all Windows systems.</p>
157
158 <p>In general, while fork(2) does work under ActiveState is does not work if you have Tk objects created. Chris had suggested to use "start &lt;program&gt;" which is fine - for Windows - but would fail in Unix. I like to wrote my code such that it works on both Windows and Unix. So I tried in vain to get fork to work. However, ActiveState's fork(2) call is horribly broken so I had to code around it like this:</p>
159
160 <div class="code"><pre>
161 sub VersionTree {
162   my $file = shift;
163
164   my $cmd =  "cleartool lsvtree -graphical $file";
165
166   if ($^O =~ /mswin|cygwin/i) {
167     system "start /b $cmd";
168   } else {
169     my $pid = fork;
170
171     return if $pid;
172
173     system $cmd;
174     exit;
175   } # if
176 } # VersionTree
177 </pre></div>
178                               
179                               <p class="entry-footer">
180                                  <span class="post-footers">Posted by  at  1:59 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000484.html">Permalink</a>
181                                  
182                                  
183                               </p>
184                            </div>
185                         </div>
186                      </div>
187                      
188                      
189
190                      <h2 class="date-header">November 21, 2005</h2>
191                      <a id="a000483"></a>
192                      <div class="entry" id="entry-483">
193                         <h3 class="entry-header">Remaining PQA Issues/GNATS stripmime</h3>
194                         <div class="entry-content">
195                            <div class="entry-body">
196                               <ul>
197   <li>Worked with Vinh's group and adjusting to life with the new Controller CQ Database. Wrote instructions for how to unsubscribe to some Broadcom email distribution lists</li>
198
199   <li>Documented how to install the new Clearquest Client Software</li>
200
201   <li>Coded stripmime filter for GNATS.</li>
202 </ul>
203                               
204                               <h2>Stripmime</h2>
205
206 <p>The script described above basically takes as input an email message. It then extracts the header portion and the body portion. It uses some CPAN modules (MIME::Base64 and MIME::Tools as well as MIME::Parser) to analyze the message and obtain the message "parts". Some transformations are performed on the header information and then it is written to stdout. For the plaintext part (if present) it will again write out the message to stdout Other, non-textual parts (AKA attachments) are written to a subdirectory based on the message name/number and a note is included to stdout indicating were to find the attachment.</p>
207
208 <p>The stripemime script placed in /tools/gnats/4.0/bin does the same thing except that attachments are disregarded and no mention of them are written to stdout. However there is an implicit assumption above that there does exist at least one plaintext version of the mail message. This need not be the case. I know, for example, when using Thunderbird I have the option of sending email as HTML, plain text or both. I tend to send both, which are  epresented in the raw email as MIME multipart with the first part being a plaintext version of the HTML, which is sent as the second multipart as HTML. However, if I were to select HTML Only I would not get the plaintext part.  Stripemime, as currently coded would generate a blank email message.</p>
209
210 <p>Also, on gnats-irva-3, could my shell be set to bash? I've tried to set it but I get permission denied. Also, I don't appear to have a home directory set to /home/adefaria for the gadefaria user?</p>
211
212 <p>Finally, MIME::Parser is not installed on gnats-irva-3:</p>
213
214 <div class="code"><pre>
215 gnats4@gnats-irva-3[+1035] bin/stripmime
216 Can't locate MIME/Parser.pm in @INC (@INC contains:
217 /tools/perl/5.004_04/SunOS/lib/sun4-solaris/5.00404
218 /tools/perl/5.004_04/SunOS/lib
219 /tools/perl/5.004_04/SunOS/lib/site_perl/sun4-solaris
220 /tools/perl/5.004_04/SunOS/lib/site_perl .) at bin/stripmime line 47.
221 BEGIN failed--compilation aborted at bin/stripmime line 47.
222 </pre></div>
223
224 <p>I had managed to install MIME::Parser on my Cygwin system using "perl
225 -MCPAN -e 'install MIME::Parser'"</p>
226                               
227                               <p class="entry-footer">
228                                  <span class="post-footers">Posted by  at  5:38 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000483.html">Permalink</a>
229                                  
230                                  
231                               </p>
232                            </div>
233                         </div>
234                      </div>
235                      
236                      
237
238                      <h2 class="date-header">November 19, 2005</h2>
239                      <a id="a000482"></a>
240                      <div class="entry" id="entry-482">
241                         <h3 class="entry-header">PQA Merge (Part II)</h3>
242                         <div class="entry-content">
243                            <div class="entry-body">
244                               <ul>
245   <li>Worked with Vinh on small problem with Gating_Item_SW.</li>
246
247   <li>Backed up database to \\p4test\Cont as CQ_Controller_Prod.db.backup</li>
248
249   <li>Copied backup up to \\pcirvd-dshah\CQ</li>
250 </ul>
251                               
252                               <h2>Gating_Item_SW</h2>
253
254 <p>Vinh noticed an abnormality whereby some Gating_Item_SW items were not correctly transfered. I'm not sure how pqamerge messed this up as it never changes the value of the data, just the field name. We can look at this later, after the merge is completed. Meantime VInh use his SQL prowness to fix the problem.</p>
255
256
257                               
258                               <p class="entry-footer">
259                                  <span class="post-footers">Posted by  at  2:47 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000482.html">Permalink</a>
260                                  
261                                  
262                               </p>
263                            </div>
264                         </div>
265                      </div>
266                      
267                      
268
269                      <h2 class="date-header">November 18, 2005</h2>
270                      <a id="a000481"></a>
271                      <div class="entry" id="entry-481">
272                         <h3 class="entry-header">PQA Merge</h3>
273                         <div class="entry-content">
274                            <div class="entry-body">
275                               <p>This blog entry is to track the PQA merge process. See extended entry for full details...</p>
276                               
277                               <ul>
278   <li>Received backups from Dave Shah</li>
279
280   <li>In Clearquest designer I did Database: Delete Database for Cont and ContT</li>
281
282   <li>In Enterprise Manager:</li>
283
284   <ul>
285     <li>Deleted 5 databases: CQ_Controller_Test, CQ_Controller_Prod, CQSchema03, CQ_TO_Prod and CQ2001AProd</li>
286
287     <li>Created those 5 databases anew</li>
288
289     <li>Restored CQSchema03, CQ_TO_Prod and CQ2001AProd</li>
290
291     <li>Changed server field in CQSchema02: master_dbs from production server to p4test</li>
292
293     <li>Ran SIDMap on all 5 databases</li>
294
295     <li>Made sure that the user CQ03_Admin was added to CQSchema03, CQ_Controller_Test and CQ_Controller_Prod as a DB owner</li>
296   </ul>
297
298   <li>Back in Clearquest Designer I found that Cont and ContT were not deleted in the newly restored schema so I deleted ContT</li>
299
300   <li>Next I created a new database for ContT</li>
301
302   <li>Tried to delete Cont but received an error: Invalid object name "dbglobal". Worked around this problem but setting is_deleted to 1 using Enterprise Manager</li>
303
304   <li>Created new Cont database</li>
305
306   <li>Imported userinfo.txt (user/group info given to me by Vinh) using Clearquest Designer: User Administration. In looking at the subscriptions I see that groups appear are properly subscribed to databases but the users, particularly admin was not subscribed to any database! I will attempt to apply these user/groups and see if I can get into the db using Clearquest. Nope, as I suspected admin cannot login. Subscribing admin to all databases...</li>
307
308   <li>Upgraded Cont and ContT with imported user/group info. By accident I closed Clearquest Designer and now I can no longer login as admin! Ended up hacking the encrypted password from userinfo.txt back into CQSchema03:master_users:admin:encrypted password! I can now run Clearquest Designer. Subscribed admin to all databases. Also changed my user, adefaria, to no longer attempt to authenticate via LDAP (that never worked anyway) and to be on par with admin (be a superuser, subscribe to all databases and groups, etc.). I can now access Cont via Clearquest client.</li>
309
310   <li>Started pqamerge...</li>
311
312   <li>pqamerge finishes in 7 hours 2 minutes 5 seconds</li>
313
314   <li>Running check_attachments just to be sure</li>
315
316   <li>A quick spot check doesn't show any abnormalities. Vinh can check the data more thoroughly</li>
317 </ul>
318                               
319                               <p class="entry-footer">
320                                  <span class="post-footers">Posted by  at  8:21 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000481.html">Permalink</a>
321                                  
322                                  
323                               </p>
324                            </div>
325                         </div>
326                      </div>
327                      
328                      
329
330                      <h2 class="date-header">November 17, 2005</h2>
331                      <a id="a000480"></a>
332                      <div class="entry" id="entry-480">
333                         <h3 class="entry-header">create_dev_snapview.pl</h3>
334                         <div class="entry-content">
335                            <div class="entry-body">
336                               <ul>
337   <li>Looked into create_dev_snapview.pl.</li>
338
339   <li>Tested speeds of FTP vs. SMB</li>
340 </ul>
341                               
342                               <h2>create_dev_snapview.pl</h2>
343
344 <blockquote type=cite>
345 <b>From:</b> Andrew Feltham <br>
346 <b>Sent:</b> Tuesday, November 15, 2005 3:58 PM<br>
347 <b>To:</b> Shivdutt Jha<br>
348 <b>Subject:</b> creating snapshot views <br>
349 </font><br>
350
351 <p>Hi Shivdutt,</p>
352
353 <p>so I've tried to use Naga's tool for creating a snapshot view of a particular stream using a variety of  incremental baselines.</p>
354
355 <p>I've done this using a file generated by Phil's nightly builds (see attached) which lists the specific baseline which was current for each vob.</p>
356
357 <p>First of all, it does not seem to work (see image below). I'm not sure I'm handling the composite baseline label properly</p>
358
359 <p>Secondly, I do find the tool a bit awkward as it expects me to input several incremental baselines for vobs which are not included in my load rules.</p>
360
361 <p>It would be nice if I could specify the vobs on the cmd line, and only provide those labels.</p>
362 </blockquote>
363
364 <p>Actually the script is working as designed. The arguments for create_dev_snapview.pl are:</p>
365
366 <div class="code"><pre>
367 create_dev_snapview.pl &lt;project_name&gt; [ baseline_selector ]
368 </pre></div>
369
370 <p>project_name is mandatory but baseline_selector is optional. If you don't specify the baseline_selector then it appears that the script takes all the recommended baselines for all components in the project. Or you can specify a list of baselines if you want different ones. The script checks the number of baselines you specified and compares them to the number of <i>modifiable</i> components in the project. These two numbers must agree.</p>
371
372 <p>After painstakingly typing in the command line (wish you would have posted the command line in text! :-( ) and running it through Perl's debugger I came to the realization that you typed in 11 (very long) baselines and there are only 10 modifiable components in the ldx_2.3 project.</p>
373
374 <p>In thinking of how to do this better I can think of two methods:</p>
375
376 <ul>
377   <li>Assuming the <span>buildconfig</span>.txt file is a standard file and contains all the information needed, add a -f &lt;buildconfig&gt; option to create_dev_snapview.pl. When present the script would open and parse that file, extracting out the required information. This would help cut down on typing and errors.</li>
378
379   <li>Modify the script to present a series of dialog boxes prompting for the baseline to use for each component in the project. Note that in this instance this would mean a total of 10 dialog box prompts!</li>
380 </ul>
381
382 <p>Either of these options can be added to the existing script via options that cause it to operate in a different way if present or to operate like it used to operate if those options are not present.</p>
383
384 <p>(Question: When you type "perl" at your command line, what Perl are you running? Because Perl isn't normally present on Windows. Normally people using Clearcase run ccperl...).</p>
385
386 <h2>FTP vs. SMB</h2>
387
388 <p>Well this runs contrary to my previous experience but it turns out that a regular file copy using SMB shares is faster than FTP. I tested copying the old 2.7 Gig CQProd2001A database to my desktop, once with FTP and once with SMB. SMB won! Which is surprising to me because last time I tested something like this FTP was up to 10 times faster:</p>
389
390 <div class="code"><pre>
391 Local:time ftpget -u vobadm -p4sjadm p4test . "/dev/d/CQBackupsfromIrvine/0916/CQProd2001A_db_200509160213.BAK"
392 CQProd2001A_db_200509160213.BAK           2.66 GB    60.35 kB/s
393
394 real               769m10.858s
395 user               1m29.418s
396 sys                4m36.387s
397 </pre></div>
398
399 <p>Versus:</p>
400
401 <div class="code"><pre>
402 Local:time cp //p4test/CQBackupsfromIrvine/0916/CQProd2001A_db_200509160213.BAK /tmp
403
404 real              532m7.457s
405 user              0m16.714s
406 sys               1m11.362s
407 </pre></div>
408
409                               
410                               <p class="entry-footer">
411                                  <span class="post-footers">Posted by  at 12:39 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000480.html">Permalink</a>
412                                  
413                                  
414                               </p>
415                            </div>
416                         </div>
417                      </div>
418                      
419                      
420
421                      <h2 class="date-header">November 16, 2005</h2>
422                      <a id="a000478"></a>
423                      <div class="entry" id="entry-478">
424                         <h3 class="entry-header">PerlTk</h3>
425                         <div class="entry-content">
426                            <div class="entry-body">
427                               <ul>
428   <li>Continued work on clearprompt replacement in PerlTk.</li>
429 </ul>
430                               
431                               <p class="entry-footer">
432                                  <span class="post-footers">Posted by  at  9:13 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000478.html">Permalink</a>
433                                  
434                                  
435                               </p>
436                            </div>
437                         </div>
438                      </div>
439                      
440                      
441
442                      <h2 class="date-header">November 15, 2005</h2>
443                      <a id="a000477"></a>
444                      <div class="entry" id="entry-477">
445                         <h3 class="entry-header">PerlTK/Bug in pqamerge</h3>
446                         <div class="entry-content">
447                            <div class="entry-body">
448                               <ul>
449   <li>Experimented with PerlTK in an effort to come up with a better Clearprompt for bin_merge</li>
450
451   <li>Vinh found a bug in pqamerge where Prod: Open_Close_Status was not getting transferred to Cont: Active_Deferred_Status</li>
452 </ul>
453                               
454                               <p class="entry-footer">
455                                  <span class="post-footers">Posted by  at  5:19 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000477.html">Permalink</a>
456                                  
457                                  
458                               </p>
459                            </div>
460                         </div>
461                      </div>
462                      
463                      
464
465                      <h2 class="date-header">November 14, 2005</h2>
466                      <a id="a000479"></a>
467                      <div class="entry" id="entry-479">
468                         <h3 class="entry-header">Finalizing pqamerge</h3>
469                         <div class="entry-content">
470                            <div class="entry-body">
471                               <ul>
472   <li>Identified a few more bugs with pqamerge</li>
473
474   <ul>
475     <li>Changed to handle Open_Close_Status -> Active_Deferred_Status for Prod.</li>
476
477     <li>Changed to correctly handle Gating_Item_SW. This is set from GatingItem from both TO and Prod. Gating_Item_HW is a new field and is set to "No".</li>
478   </ul>
479
480   <li>Worked with Vinh finalizing steps for pqamerge</li>
481 </ul>
482                               
483                               <p class="entry-footer">
484                                  <span class="post-footers">Posted by  at  9:15 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000479.html">Permalink</a>
485                                  
486                                  
487                               </p>
488                            </div>
489                         </div>
490                      </div>
491                      
492                      
493
494                      <h2 class="date-header">November 12, 2005</h2>
495                      <a id="a000476"></a>
496                      <div class="entry" id="entry-476">
497                         <h3 class="entry-header">Several PQA Fixes</h3>
498                         <div class="entry-content">
499                            <div class="entry-body">
500                               <ul>
501   <li>Added Exit Sub/Function to several validation and initialization functions in order to allow TransferState to work</li>
502
503   <li>Fixed some bugs with Fixed_In_SW_Version and OS values of "Novell 6 Pack Beta 3 ". Not sure how this got by before with the trailing space but it raised it's ugly head in TransferStates</li>
504
505   <li>Change pqamerge to treat the Submit state like the Assigned state</li>
506
507   <li>With implementation of ID equality, I have to constantly regenerate the database from scratch. Experienced some problems with this and had to change the schema by allowing admin to submit. This may have been a different problem in that I now need to subscribe all users and groups to Cont database and Upgrade the database each time I create it a new</li>
508
509   <li>Transitioning through states have reveal some fields that where not initially tranfered from the TO database. The fields missed were ResolvedBy, ResolveNote and VerifyNote</li>
510 </ul>
511                               
512                               <h2>Additional Schema Action Hook Changes</h2>
513
514 <p>In order to set State properly pqamerge needs to transition through states to get to the desired end state. For eample, many defects in Prod are in the Closed state. But when pqamerge first creates the defect in Cont it will be in the Assigned state. In order to get to the Closed state pqamerge need to apply the Resolve, Verify and Close actions. As such it triggers state change action hook code.</p>
515
516 <p>For example, in order to transition to the Verified state the Verify action must be applied. When the Verify action happens the action hooks for Verify are run. Part of what they do is initalize owner to blank. It is expected that the user exectuting the Verify action will fill that in. But that messes us up since we are not a person and we already have the "correct" data. Investigating this further reveals other places where, for example, the current date is put into a field such as Resolve_Date and calculations are made in other fields such TimeFromSubmitToResolve. We don't want any of that happening!</p>
517
518 <p>To resolve these issues the following Action Hooks have an Exit Sub or Exit Function placed at the beginning of the subroutine or function call so as to avoid the incorrect updating of data fields and so that email is not send out (the other thing many of these Action Hooks do):</p>
519
520 <ul>
521   <li>Submit: Validation</li>
522
523   <li>Assign: Notification</li>
524
525   <li>Resolve: Initialization; Validation; Notification</li>
526
527   <li>Verify: Initialization; Validation; Notification</li>
528
529   <li>Re-Open: Notification</li>
530
531   <li>Close: Initialization; Notification</li>
532
533   <li>Modify: Notification</li>
534
535   <li>Unassign: Notification</li>
536
537   <li>DoesNotVerify: Initialization; Validation; Notification</li>
538
539   <li>VerifiedPendingCustVerify: Notification</li>
540
541   <li>CustomerVerified: Notification</li>
542
543   <li>Data_Pending: Notification</li>
544 </ul>
545
546 <p>I should have just done all of them or perhaps tried to change the Actions table from use Basic script to script None but the above set seems to be working.</p>
547
548 <h2>Data Issue</h2>
549
550 <p>Ran the merge and now it's taking 6 hours 54 minutes 39 seconds. This is due to running through the various states to obtain the appropriate state and "burning" IDs so that the IDs match. One remaining problem that I don't know how to fix: Defect Prod00012546 is in the closed state yet lacks any VerifyNote. When transfered to Cont pqamerge tries to go through the states and gets stuck trying to transition this defect from Resolved -> Verify due to the lack of a VerifyNote. I do not know how this happened in the Prod database. The only thing I can think of is that somebody modified Prod00012546 <strong>after</strong> it passed the Verified state blanking out VerifyNote.</p>
551
552 <p>I'm running check_attachments now and I expect that to result is 0 differences in attachments.</p>
553
554 <div class="code"><pre>
555 vobadm@P4TEST /dev/d/PQA
556 $ cqperl W:/it_scm/adm/cq/check_attachments -v
557 Grand total (old): 2955822684
558 Grand total (new): 2955822684
559 </pre></div>
560
561
562                               
563                               <p class="entry-footer">
564                                  <span class="post-footers">Posted by  at 12:17 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000476.html">Permalink</a>
565                                  
566                                  
567                               </p>
568                            </div>
569                         </div>
570                      </div>
571                      
572                      
573
574                      <h2 class="date-header">November 11, 2005</h2>
575                      <a id="a000475"></a>
576                      <div class="entry" id="entry-475">
577                         <h3 class="entry-header">Final PQA fixes</h3>
578                         <div class="entry-content">
579                            <div class="entry-body">
580                               <ul>
581   <li>Implemented TransferStates</li>
582
583   <li>Found final problem with attachments and fixed it</li>
584
585   <li>Implemented ID number equality</li>
586 </ul>
587                               
588                               <p class="entry-footer">
589                                  <span class="post-footers">Posted by  at  1:54 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000475.html">Permalink</a>
590                                  
591                                  
592                               </p>
593                            </div>
594                         </div>
595                      </div>
596                      
597                      
598
599                      <h2 class="date-header">November 10, 2005</h2>
600                      <a id="a000474"></a>
601                      <div class="entry" id="entry-474">
602                         <h3 class="entry-header">Finding the missing 261,285,366 bytes</h3>
603                         <div class="entry-content">
604                            <div class="entry-body">
605                               <ul>
606   <li>Fixed bug in pqamerge that caused some attachments to not transfer</li>
607 </ul>
608                               
609                               <p>I think I've figured out where that missing data went to. As you know the total of the attachment sizes of the old databases compared to the new database was still off but a relatively substantial amount (261,285,366 bytes - see https://defaria.com/blogs/Status/archives/000471.html#more).</p>
610
611 <p>I changed check_attachments to help me find where the missing data was. The basic idea was to read all Cont records, total up the attachment size, then use Cont: old_id to locate the old record and total it. With those two figures I could find which records didn't convert correctly.</p>
612
613 <p>Turns out:</p>
614
615 <div class="code"><pre>
616  # At this point we don't have any info about whether we are
617  # coming from Prod or TO, however, there are the following fields:
618  #
619  #          TO               Prod              Cont
620  # ----------------------- ----------------------- ----------------
621  # Attachments        Attachments        Attachments
622  # AttachmentsBRCM        AttachmentBRCM        AttachmentsBRCM
623  #
624  # You may notice that Prod: AttachmentBRCM is missing the "s".
625  # Therefore:
626  $field_name = "AttachmentsBRCM" if $field_name eq "AttachmentBRCM";
627 </pre></div>
628
629 <p>Remerging and will run check_attachments again.</p>
630                               
631                               <p class="entry-footer">
632                                  <span class="post-footers">Posted by  at 11:55 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000474.html">Permalink</a>
633                                  
634                                  
635                               </p>
636                            </div>
637                         </div>
638                      </div>
639                      
640                      
641
642                      <h2 class="date-header">November  9, 2005</h2>
643                      <a id="a000473"></a>
644                      <div class="entry" id="entry-473">
645                         <h3 class="entry-header">Removing DBs from a Schema/Email link concerns</h3>
646                         <div class="entry-content">
647                            <div class="entry-body">
648                               <ul>
649   <li>Investigated how to remove databases from a CQ Schema</li>
650
651   <li>Created template files for Clearquest Web Login page to swap in for Phase I and Phase II onto the production web server (under C:\Temp\PQA)</li>
652
653   <li>Discussed the email link problem with Rational. While they can't say definitively what is supported they have stated that the old email link URL will not work in the new schema</li>
654 <ul>
655                               
656                               <h2>Databases contained in a Clearquest Schema Database</h2>
657
658 <p>A Clearquest connection profile connects to a Clearquest schema database. This schema database defines many things, one of which is which user databases this schema database covers. So with the old 2001 schema all of Prod, TO and NAS is defined in there. The Clearquest Designer has Delete Database and Undelete Database to remove and re-add databases to the schema. This is a misnomer. The schema database has a table, master_dbs, which lists all the user databases that this schema database knows about. What is really happening when you Delete Database is simply that Clearquest Designer is toggling the is_deleted field in master_dbs for this database to 1 meaning it's "deleted". Undelete database merely toggles it back to 0. Being marked deleted means that it will no longer show up as a database to select for Clearquest Windows Clients and the web server. The web server, however, needs to be restarted to notice the change.</p>
659
660 <h2>Another Email URL link issue</h2>
661
662 <p>With the concept of having multiple Schema repositories and database you are right to be concern about the user being confused when clicking on an email link. Normally the email link is of the format:</p>
663
664 <blockquote>
665 http://<<em>server</em>>/cqweb/url/default.asp?id=<<em>id</em>>
666 </blockquote>
667
668 <p>If the user is logged into CQ Web then they will go directly to the detail defect. If not they will make a brief stop at the login screen. With multiple Schema repositories the user will have to select the proper schema repository and database during login. However you can add on additional parameters to set the default schema repository and database like so:</p>
669
670 <blockquote>
671 http://<<em>server</em>>/cqweb/url/default.asp?id=<<em>id</em>>&dbset=<<em>dbset</em>>&db=<<em>db</em>>
672 </blockquote>
673
674 <p>For example:</p>
675
676 <blockquote>
677  http://pcsjca-ccrmt03/cqweb/url/default.asp?id=Cont00009460&dbset=2005.02.00&db=Cont
678 </blockquote>
679                               
680                               <p class="entry-footer">
681                                  <span class="post-footers">Posted by  at  3:52 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000473.html">Permalink</a>
682                                  
683                                  
684                               </p>
685                            </div>
686                         </div>
687                      </div>
688                      
689                      
690
691                      <h2 class="date-header">November  8, 2005</h2>
692                      <a id="a000472"></a>
693                      <div class="entry" id="entry-472">
694                         <h3 class="entry-header">Web Server Configuration and documentation</h3>
695                         <div class="entry-content">
696                            <div class="entry-body">
697                               <ul>
698   <li>Installed Clearquest 2001A.04.00 and verified that it can access Cont</li>
699
700   <li>Figured out how to modify the login page (Clearquest/Web/logon/default_content.asp) and created default_content1.asp and default_content2.asp</li>
701
702   <li>Wrote <a href="http://intranet.broadcom.com/%7Eadefaria/Clearquest/NewCQProfile.php">How to update my Clearquest Profile to access the new Cont database</a>
703 <ul>
704                               
705                               <p class="entry-footer">
706                                  <span class="post-footers">Posted by  at  7:54 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000472.html">Permalink</a>
707                                  
708                                  
709                               </p>
710                            </div>
711                         </div>
712                      </div>
713                      
714                      
715
716                      
717                      <a id="a000471"></a>
718                      <div class="entry" id="entry-471">
719                         <h3 class="entry-header">More on attachments</h3>
720                         <div class="entry-content">
721                            <div class="entry-body">
722                               <ul>
723   <li>Enhanced check_attachments to log better</li>
724 </ul>
725                               
726                               <p>Well it's better and didn't take as long as I thought. This time it took 4 hours 34 minutes 49 seconds. Not too bad. And the attachments size is closer. The total attachments for Cont is still &lt; the sum of the attachments from Prod and TO:</p>
727
728 <table align="center" border="1" cellpadding="2" cellspacing="0"
729  width="75%">
730   <tbody>
731     <tr>
732       <td valign="top">Prod total attachment size<br>
733       </td>
734       <td align="right" valign="top"> 2,683,569,547</td>
735     </tr>
736     <tr>
737       <td valign="top">TO total attachment size<br>
738       </td>
739       <td align="right" valign="top"> 272,253,137</td>
740     </tr>
741     <tr>
742       <td valign="top"><b>Total Prod + TO attachment size<br>
743       </b></td>
744       <td align="right" valign="top"><b> 2,955,822,684</b></td>
745     </tr>
746     <tr>
747       <td valign="top">Cont total attachment size<br>
748       </td>
749       <td align="right" valign="top"> 2,694,537,318</td>
750     </tr>
751     <tr>
752       <td valign="top"><b>Difference</b><br>
753       </td>
754       <td align="right" valign="top"><font color="#ff0000"><b>
755 261,285,366</b></font></td>
756     </tr>
757   </tbody>
758 </table>
759
760 <p>I'm not sure how to account for that difference.</p>
761                               
762                               <p class="entry-footer">
763                                  <span class="post-footers">Posted by  at 10:33 AM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000471.html">Permalink</a>
764                                  
765                                  
766                               </p>
767                            </div>
768                         </div>
769                      </div>
770                      
771                      
772
773                      <h2 class="date-header">November  7, 2005</h2>
774                      <a id="a000470"></a>
775                      <div class="entry" id="entry-470">
776                         <h3 class="entry-header">check_attachments</h3>
777                         <div class="entry-content">
778                            <div class="entry-body">
779                               <ul>
780   <li>Worked out a plan for how to perform the PQA Merge this weekend</li>
781
782   <li>Concerned about the size discrepancy in the database I wrote a little utility, check_attachments, to total up the size of all attachments in all the databases. This turned up a bug in pqamerge which I fixed. Reperforming pqamerge</li>
783
784   <li>There is a problem with using clearprompt to prompt for list input for bin_merge - You can only have one line of prompting text and only 50 characters in that line. It's gonna be hard to describe a binary merge situation in 50 characters or less. Investigated making a PerlTk list dialog. In theory it can be done as ccperl does support PerlTk.</li>
785
786   <li>Discussed with Naga the <i>email link</i> issue with PQA</li>
787 </ul>
788                               
789                               <h3>TransferAttachments</h3>
790
791 <p>I knew there was a good reason why this was eating at me. There is indeed a bug. My attachments transfer routine was not getting called at all for Prod! I wrote a small Perl script to check this and it yielded:<p>
792
793 <div class="code"><pre>
794 $ cqperl check_attachments
795 Totaling attachments in TO...
796 Totaling</span> attachments in Prod...
797 Totaling</span> attachments in Cont...
798 Total attachment size for TO = 272253137
799 Total attachment size for Prod = 2683569547
800 Total attachment size for Cont = 272253137
801 </pre></div>
802
803 <p>Notice that the size of the attachments for TO matches the size of attachments for Cont! IOW no Prod attachments got transferred at all!</p>
804
805 <p>Turns out I was only calling TransferAttachments when the field name was AttachmentsBRCM (and TransferAttachments then did all the attachments - both Attachments and AttachmentsBRCM). However, in Prod the field is named AttachmentBRCM - note the
806 singularity here! I tell ya my eyes are going.</p>
807
808 <p>I'm changing my code not be dependent on the field name and to just call TransferAttachments for each record. TransferAttachments doesn't need to know the field name - it just does all of them.</p>
809
810 <p>Unfortunately this means that I have to delete all of the records currently in the Cont database on p4test. And it also means that the approximate 4 hour running time will probably increase. However this does explain the discrepancy in the database sizes.</p>
811
812 <h3>Out of Disk Space</h3>
813
814 Shivdutt Jha wrote:
815 <blockquote type=cite>
816 Good job Andrew, another mystery is solved.
817 </blockquote>
818
819 <p>What is more telling is that we have 2.6 Gig of attachments!</p>
820
821 <p>In any event my merge failed with out of disk space. The pqamerge script uses the current directory to temporarily hold the attachments as the are transfered from one DB to the other. Turns out that Prod00010818 has two very large attachments, one 328485466 bytes and another 219095209 bytes. Unfortunately I was running in ~vobadm/My Documents and that disk filled. So another lesson learned - run pqamerge in a directory on a disk with lots of disk space! Alas this means I have to start this process over again (I'm trying to get a clean run and a timing of how long to expect the merge to run. pqamerge outputs how long it takes to do it work).</p>
822                               
823                               <p class="entry-footer">
824                                  <span class="post-footers">Posted by  at  6:54 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000470.html">Permalink</a>
825                                  
826                                  
827                               </p>
828                            </div>
829                         </div>
830                      </div>
831                      
832                      
833
834                      <h2 class="date-header">November  4, 2005</h2>
835                      <a id="a000467"></a>
836                      <div class="entry" id="entry-467">
837                         <h3 class="entry-header">bin_merge</h3>
838                         <div class="entry-content">
839                            <div class="entry-body">
840                               <ul>
841   <li>Almost code complete on bin_merge. Need to integrate this into UCMCustom</lI>
842
843   <li>Emailed IBM support regarding Clearquest Web URLs</li>
844                               
845                               <p class="entry-footer">
846                                  <span class="post-footers">Posted by  at  5:20 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000467.html">Permalink</a>
847                                  
848                                  
849                               </p>
850                            </div>
851                         </div>
852                      </div>
853                      
854                      
855
856                      <h2 class="date-header">November  3, 2005</h2>
857                      <a id="a000466"></a>
858                      <div class="entry" id="entry-466">
859                         <h3 class="entry-header">bin_merge/JRE</h3>
860                         <div class="entry-content">
861                            <div class="entry-body">
862                               <ul>
863   <li>Resolved a ticket regarding Clearquest Web (IIS) and not displaying properly. Documented under <a href="http://intranet.broadcom.com/~vobadm/admin_docs/CQJRE.php"></a>Clearquest: Getting the right JRE for Clearquest Web</li>
864
865   <li>Started coding bin_merge</li>
866 </ul>
867                               
868                               <p class="entry-footer">
869                                  <span class="post-footers">Posted by  at  6:49 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000466.html">Permalink</a>
870                                  
871                                  
872                               </p>
873                            </div>
874                         </div>
875                      </div>
876                      
877                      
878
879                      <h2 class="date-header">November  2, 2005</h2>
880                      <a id="a000465"></a>
881                      <div class="entry" id="entry-465">
882                         <h3 class="entry-header">Enable ldap</h3>
883                         <div class="entry-content">
884                            <div class="entry-body">
885                               <ul>
886   <li>Changed enable_ldap to read from and save to an ldap_settings.cfg file</li>
887
888   <li>Helped Ray with some Perl Regex's</li>
889 </ul>
890                               
891                               <p class="entry-footer">
892                                  <span class="post-footers">Posted by  at  4:44 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000465.html">Permalink</a>
893                                  
894                                  
895                               </p>
896                            </div>
897                         </div>
898                      </div>
899                      
900                      
901
902                      <h2 class="date-header">November  1, 2005</h2>
903                      <a id="a000464"></a>
904                      <div class="entry" id="entry-464">
905                         <h3 class="entry-header">CQ Users/CQ Web Server Setup</h3>
906                         <div class="entry-content">
907                            <div class="entry-body">
908                               <ul>
909   <li>Added a few users to Clearquest</li>
910
911   <li>Set up IIS on pcsjca-ccrmt03</li>
912
913   <li>Set up Clearquest Web on pcsjca-ccrmt03</li>
914 </ul>
915                               
916                               <h2>Using the old web server to serve the new Cont database</h2>
917
918 <p>Vinh has been wanting to have the old web server software set up alongside the new web server software for two reasons: 1)  as a backup or fail over in case the PQA merge is not working out and 2) as a redirector for old style URLs (with old IDs) to the new server with new IDs. But having to wait for a new server to arrive will cause an unnecessary delay</p>
919
920 <p>The thought had been that perhaps the PQA merge could be done and simply use the old web server software to point over to the new database. One question was can the old web server software interact with the merged database seeing as the merged database was done under new Clearquest software. To this end I set up the Clearquest web server software on <tt>pcsjca-ccrmt03</tt> and attempted to access the merged database on <tt>p4test</tt>. And It works! To log in go to <a href="http://pcsjca-ccrmt03/cqweb/login">http://pcsjca-ccrmt03/cqweb/login</a>, set the Schema Repository to 2005.02.00 and log into the Cont database</p>
921                               
922                               <p class="entry-footer">
923                                  <span class="post-footers">Posted by  at  9:43 PM</span> <span class="separator">|</span> <a class="permalink" href="http://defaria.com/blogs/Status/archives/000464.html">Permalink</a>
924                                  
925                                  
926                               </p>
927                            </div>
928                         </div>
929                      </div>
930                      
931                   </div>
932                </div>
933             </div>
934          </div>
935       </div>
936    </div>
937 </body>
938 </html>