2 <html lang="en-us" itemscope itemtype="http://schema.org/Article">
5 <meta name="description" content=" Working on convertdb, a Perl script to read the UK database and convert it into GPDB Finished code to convert users. Using de to get info about a user to populate the GPDB fields Worked out problems with sites...">
6 <meta name="generator" content="Movable Type 5.2.3">
7 <title>UK -> GPDB - 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/2006/11/uk-gpdb.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/2006/11/convertdb.html" title="Convertdb">
20 <link rel="next" href="http://defaria.com/blogs/Status/2006/11/gpdb-add-projec-3.html" title="gpdb_add_project cronned">
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="UK -> GPDB">
25 <meta property="og:url" content="http://defaria.com/blogs/Status/2006/11/uk-gpdb.html">
26 <meta property="og:description" content=" Working on convertdb, a Perl script to read the UK database and convert it into GPDB Finished code to convert users. Using de to get info about a user to populate the GPDB fields Worked out problems with sites...">
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=" Working on convertdb, a Perl script to read the UK database and convert it into GPDB Finished code to convert users. Using de to get info about a user to populate the GPDB fields Worked out problems with sites...">
31 <link itemprop="url" href="http://defaria.com/blogs/Status/2006/11/uk-gpdb.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">UK -> GPDB</li>
67 <div id="individual-main" class="main" role="main">
68 <article id="entry-1847" class="entry entry-asset asset hentry">
69 <div class="asset-header">
70 <h2 itemprop="name" class="asset-name entry-title">UK -> GPDB</h2>
71 <footer class="asset-meta">
72 <ul class="asset-meta-list">
73 <li class="asset-meta-list-item">Posted on <time datetime="2006-11-07T12:29:04-08:00" itemprop="datePublished">November 7, 2006</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/gpdb/">GPDB</a></li>
83 <div class="entry-content asset-content" itemprop="articleBody">
85 <li>Working on convertdb, a Perl script to read the UK database and convert it into GPDB</li>
87 <li>Finished code to convert users. Using de to get info about a user to populate the GPDB fields</li>
89 <li>Worked out problems with sites and got sites being added to GPDB from the UK database</li>
91 <li>Got adding of PDB_CLEARCASE records preliminarily done</li>
95 <p>Started coding a Perl script to attempt to convert the UK database to GPDB. Got the Users done then worked out the Site records. The Projects are harder because they contain both site and project as a pair as well as vob/view information. The goal is to get as much of the conversion done as I can as well as flush out issues. Then, at some point, change mkview_linked and mkvob_db to use this new database.</p>
97 <p>Apparently mkview_linked and mkvob_db utilize this UK database mainly for the purposes of obtaining defaults or a template of information for the creation of views or vobs. There are site-wide defaults, project defaults and finally command line overrides.</p>
99 <h2>GPDB requirements for mkview_link and mkvob_db</h2>
101 <p>I scanned the scripts mkview_link and mkvob_db in order to determine what exactly it needs from GPDB. Here's what I found. Below field names are <b>bold</b> where table names are both <b>bold</b> and <i>italic</i>.</p>
103 <h3>mkview_linked</h3>
105 <li>Obtains the <b>site</b> name in a table called <b><i>Sites</i> </b>where the <b>domain</b> field = the domain of the current host</li>
107 <li>Gets all of the <b>project</b> and <b>stream</b> for this <b>site</b></li>
109 <li>Obtains the following fields from a <b><i>Projects</i></b> table where the site = <b>site</b> and the <b>project</b> = "_default":</li>
114 <li><b>project</b></li>
116 <li><b>vob_host</b></li>
118 <li><b>vob_path</b></li>
120 <li><b>vob_remote</b></li>
122 <li><b>pool_postfix</b></li>
124 <li><b>msdos_mode</b></li>
126 <li><b>snap_to</b></li>
128 <li><b>db_check</b></li>
130 <li><b>snap_notify</b></li>
132 <li><b>default_view</b></li>
134 <li><b>umask</b></li>
136 <li><b>group</b></li>
138 <li><b>view_host</b>: Used in -host for mkview</li>
140 <li><b>view_path</b>: Used in -hpath and -gpath for mkview ($view_path/$username/$view.vws)</li>
142 <li><b>view_remote</b>: If present then the view storage is placed remotely. Note this is Unix specific.</li>
144 <li><b>msdos_view</b>: If present then a -tmode msdos style view is created.</li>
146 <li><b>config_spec</b>: Path to a file containing this project's default config spec that is then set as the new view's config spec<sup>1</sup></li>
148 <li><b>notify</b></li>
150 <li><b>vob_only</b></li>
152 <li><b>cachesize</b></li>
154 <li><b>snapshot</b></li>
156 <li><b>snapshot_workdir</b></li>
158 <li><b>stream</b></li>
161 <li>It then obtains the same file list from a <b><i>Projects</i></b> table where the site = <b>site</b> and the <b>project</b> = the project name. The idea here is that _default is the base and the project record then overrides those defaults.</li>
163 <li>It then does some parameter substitutions for the field values above. Occurances of %USER% will be substituted with the current user, %PROJECT% the current project and strings of the form %SCRIPT()% will run the script defined between the (). The result of that will be the
164 substitution value.</p></li>
169 <li>Variable substitution happens on each config spec line too. Occurances of %USER% are replaced with the username (%LCUSER% a lower case username and %UCUSER% an upper case username), %VIEW% with the current view (similar %LCVIEW% and %UCVIEW%), %PROJECT% -> current project and %SITE% -> site (with LC/UC versions too).</li>
174 <li>Obtains the <b>site</b> name in a table called <b><i>Sites</i> </b>where the <b>domain</b> field = the domain of the current host</li>
176 <li>Obtains all fields from the the <b><i>Projects</i> </b>table for this <b>site</b></li>
178 <li>Creates a $project_homes hash for each project/site combination with all fields from the <i><b>Projects</b></i> table</li>
180 <li>Creates a @valid_projects array for each project.</li>
182 <li>For each project, substitutes in to each field that is not defined from the site/project/_default record</li>
184 <li>Performs the same substitution as described above on the various fields.</li>
187 <nav class="page-navigation entry-navigation pagination content-nav">
188 <ul class="page-navigation-list">
190 <li class="page-navigation-list-item page-navigation-prev"><a rel="prev" href="http://defaria.com/blogs/Status/2006/11/convertdb.html" title="Convertdb">Previous entry</a></li>
193 <li class="page-navigation-list-item page-navigation-next"><a rel="next" href="http://defaria.com/blogs/Status/2006/11/gpdb-add-projec-3.html" title="gpdb_add_project cronned">Next entry</a></li>
198 <aside id="zenback" class="zenback feedback">
199 Please paste Zenback script code here.
206 <aside class="widgets related" role="complementary">
207 <nav class="widget-search widget">
208 <div class="widget-content">
209 <form method="get" id="search" action="http://defaria.com/mt/mt-search.cgi">
211 <input type="text" name="search" value="" placeholder="Search...">
213 <input type="hidden" name="IncludeBlogs" value="8">
215 <input type="hidden" name="limit" value="20">
216 <button type="submit" name="button">
217 <img alt="Search" src="/mt/mt-static/support/theme_static/rainier/img/search-icon.png">
223 <nav class="widget-archive-category widget">
224 <h3 class="widget-header">Categories</h3>
225 <div class="widget-content">
228 <ul class="widget-list">
231 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/ameriquest/">Ameriquest (99)</a>
239 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/audience/">Audience (3)</a>
247 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/broadcom/">Broadcom (76)</a>
255 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/gpdb/">GPDB (35)</a>
263 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-dynamics/">General Dynamics (61)</a>
271 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-electric/">General Electric (13)</a>
279 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/hewlett-packard/">Hewlett Packard (13)</a>
287 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/lynuxworks/">LynuxWorks (162)</a>
295 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/pqa/">PQA (35)</a>
303 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/salira/">Salira (79)</a>
311 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/tellabs/">Tellabs (2)</a>
319 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/texas-instruments/">Texas Instruments (31)</a>
331 <nav class="widget-archive-dropdown widget">
332 <h3 class="widget-header">Archives</h3>
333 <div class="widget-content">
335 <option>Select a Month...</option>
337 <option value="http://defaria.com/blogs/Status/2016/02/">February 2016</option>
341 <option value="http://defaria.com/blogs/Status/2014/09/">September 2014</option>
345 <option value="http://defaria.com/blogs/Status/2014/04/">April 2014</option>
349 <option value="http://defaria.com/blogs/Status/2014/03/">March 2014</option>
353 <option value="http://defaria.com/blogs/Status/2013/02/">February 2013</option>
357 <option value="http://defaria.com/blogs/Status/2012/09/">September 2012</option>
361 <option value="http://defaria.com/blogs/Status/2012/08/">August 2012</option>
365 <option value="http://defaria.com/blogs/Status/2012/05/">May 2012</option>
369 <option value="http://defaria.com/blogs/Status/2012/04/">April 2012</option>
373 <option value="http://defaria.com/blogs/Status/2012/02/">February 2012</option>
377 <option value="http://defaria.com/blogs/Status/2012/01/">January 2012</option>
381 <option value="http://defaria.com/blogs/Status/2011/10/">October 2011</option>
385 <option value="http://defaria.com/blogs/Status/2011/07/">July 2011</option>
389 <option value="http://defaria.com/blogs/Status/2010/09/">September 2010</option>
393 <option value="http://defaria.com/blogs/Status/2010/08/">August 2010</option>
397 <option value="http://defaria.com/blogs/Status/2010/04/">April 2010</option>
401 <option value="http://defaria.com/blogs/Status/2010/03/">March 2010</option>
405 <option value="http://defaria.com/blogs/Status/2010/02/">February 2010</option>
409 <option value="http://defaria.com/blogs/Status/2009/05/">May 2009</option>
413 <option value="http://defaria.com/blogs/Status/2009/04/">April 2009</option>
417 <option value="http://defaria.com/blogs/Status/2008/07/">July 2008</option>
421 <option value="http://defaria.com/blogs/Status/2008/05/">May 2008</option>
425 <option value="http://defaria.com/blogs/Status/2008/04/">April 2008</option>
429 <option value="http://defaria.com/blogs/Status/2008/03/">March 2008</option>
433 <option value="http://defaria.com/blogs/Status/2008/02/">February 2008</option>
437 <option value="http://defaria.com/blogs/Status/2008/01/">January 2008</option>
441 <option value="http://defaria.com/blogs/Status/2007/12/">December 2007</option>
445 <option value="http://defaria.com/blogs/Status/2007/11/">November 2007</option>
449 <option value="http://defaria.com/blogs/Status/2007/10/">October 2007</option>
453 <option value="http://defaria.com/blogs/Status/2007/09/">September 2007</option>
457 <option value="http://defaria.com/blogs/Status/2007/08/">August 2007</option>
461 <option value="http://defaria.com/blogs/Status/2007/07/">July 2007</option>
465 <option value="http://defaria.com/blogs/Status/2007/06/">June 2007</option>
469 <option value="http://defaria.com/blogs/Status/2007/05/">May 2007</option>
473 <option value="http://defaria.com/blogs/Status/2007/04/">April 2007</option>
477 <option value="http://defaria.com/blogs/Status/2007/03/">March 2007</option>
481 <option value="http://defaria.com/blogs/Status/2007/01/">January 2007</option>
485 <option value="http://defaria.com/blogs/Status/2006/12/">December 2006</option>
489 <option value="http://defaria.com/blogs/Status/2006/11/">November 2006</option>
493 <option value="http://defaria.com/blogs/Status/2006/10/">October 2006</option>
497 <option value="http://defaria.com/blogs/Status/2006/09/">September 2006</option>
501 <option value="http://defaria.com/blogs/Status/2006/07/">July 2006</option>
505 <option value="http://defaria.com/blogs/Status/2006/06/">June 2006</option>
509 <option value="http://defaria.com/blogs/Status/2006/05/">May 2006</option>
513 <option value="http://defaria.com/blogs/Status/2006/04/">April 2006</option>
517 <option value="http://defaria.com/blogs/Status/2006/03/">March 2006</option>
521 <option value="http://defaria.com/blogs/Status/2006/02/">February 2006</option>
525 <option value="http://defaria.com/blogs/Status/2006/01/">January 2006</option>
529 <option value="http://defaria.com/blogs/Status/2005/12/">December 2005</option>
533 <option value="http://defaria.com/blogs/Status/2005/11/">November 2005</option>
537 <option value="http://defaria.com/blogs/Status/2005/10/">October 2005</option>
541 <option value="http://defaria.com/blogs/Status/2005/09/">September 2005</option>
545 <option value="http://defaria.com/blogs/Status/2005/08/">August 2005</option>
549 <option value="http://defaria.com/blogs/Status/2005/07/">July 2005</option>
553 <option value="http://defaria.com/blogs/Status/2005/06/">June 2005</option>
557 <option value="http://defaria.com/blogs/Status/2005/05/">May 2005</option>
561 <option value="http://defaria.com/blogs/Status/2005/04/">April 2005</option>
565 <option value="http://defaria.com/blogs/Status/2005/03/">March 2005</option>
569 <option value="http://defaria.com/blogs/Status/2005/02/">February 2005</option>
573 <option value="http://defaria.com/blogs/Status/2005/01/">January 2005</option>
577 <option value="http://defaria.com/blogs/Status/2004/12/">December 2004</option>
581 <option value="http://defaria.com/blogs/Status/2004/09/">September 2004</option>
585 <option value="http://defaria.com/blogs/Status/2004/08/">August 2004</option>
589 <option value="http://defaria.com/blogs/Status/2004/07/">July 2004</option>
593 <option value="http://defaria.com/blogs/Status/2004/06/">June 2004</option>
597 <option value="http://defaria.com/blogs/Status/2004/05/">May 2004</option>
601 <option value="http://defaria.com/blogs/Status/2004/04/">April 2004</option>
605 <option value="http://defaria.com/blogs/Status/2004/03/">March 2004</option>
609 <option value="http://defaria.com/blogs/Status/2004/02/">February 2004</option>
613 <option value="http://defaria.com/blogs/Status/2004/01/">January 2004</option>
617 <option value="http://defaria.com/blogs/Status/2003/12/">December 2003</option>
621 <option value="http://defaria.com/blogs/Status/2003/11/">November 2003</option>
629 <div class="widget-syndication widget section">
630 <div class="widget-content">
631 <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>
639 <footer id="footer" role="contentinfo">
640 <div id="footer-inner">
641 <div id="footer-content">
642 <nav role="navigation">
644 <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
650 <p class="license">© Copyright 2016.</p>
651 <p class="poweredby">Powered by <a href="http://www.movabletype.org/">Movable Type</a></p>
657 <script src="http://defaria.com/mt/mt-static/jquery/jquery.min.js"></script>
658 <script src="http://defaria.com/blogs/Status/mt-theme-scale2.js"></script>