2 <html lang="en-us" itemscope itemtype="http://schema.org/Article">
5 <meta name="description" content=" Implemented gpdb_deleteSiteDomain...">
6 <meta name="generator" content="Movable Type 5.2.3">
7 <title>Deleting Site Domains - 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/2007/04/deleting-site-d.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/2007/04/testccpl.html" title="testcc.pl">
20 <link rel="next" href="http://defaria.com/blogs/Status/2007/04/oracle-limit-cl.html" title="Oracle limit clause">
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="Deleting Site Domains">
25 <meta property="og:url" content="http://defaria.com/blogs/Status/2007/04/deleting-site-d.html">
26 <meta property="og:description" content=" Implemented gpdb_deleteSiteDomain...">
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=" Implemented gpdb_deleteSiteDomain...">
31 <link itemprop="url" href="http://defaria.com/blogs/Status/2007/04/deleting-site-d.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">Deleting Site Domains</li>
67 <div id="individual-main" class="main" role="main">
68 <article id="entry-1880" class="entry entry-asset asset hentry">
69 <div class="asset-header">
70 <h2 itemprop="name" class="asset-name entry-title">Deleting Site Domains</h2>
71 <footer class="asset-meta">
72 <ul class="asset-meta-list">
73 <li class="asset-meta-list-item">Posted on <time datetime="2007-04-13T21:44:25-08:00" itemprop="datePublished">April 13, 2007</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/texas-instruments/">Texas Instruments</a></li>
83 <div class="entry-content asset-content" itemprop="articleBody">
85 <li>Implemented gpdb_deleteSiteDomain</li>
87 <p>As we know, in GPDB there's very little in the realm of editing or validating of data. We've seen this with IP ranges where we let any old data in, including invalid IP ranges (let along the fact that the whole concept of IP ranges identifying sites is flawed to start with).</p>
89 <p>But as we can also see a site may have multiple domains (e.g. Dallas has many).</p>
91 <p>Site domains are implemented as their own table with the Site ID as the key and the "extended fields" of domain, IP range lower and upper being the data files.<p>
94 -- site_domain_map: Table to map multiple domains to sites
95 create table site_domain_map (
96 id number (10) not null,
97 domain varchar2 (256) not null,
98 ip_range_lower varchar2 (15),
99 ip_range_upper varchar2 (15),
100 foreign key (id) references sites (id)
104 <p>But nothing stops the user or worse yet, a script, from adding more than one site domain that is exactly identical! So we can have, for example, two site domains for Dallas that have the domain name of "dal.design.ti.com".</p>
106 <p>As if that is not enough a real problem come when one attempts to delete. Let's say somebody added a second "dal.design.ti.com" Site Domain, notices the mistake and wants to delete the extra one.</p>
108 <p>Currently the code deletes site_domain_map entries using the following SQL statement:</p>
110 <div class=code><pre>
111 DELETE FROM SITE_DOMAIN_MAP WHERE ID = 1000007 AND DOMAIN = 'dal.design.ti.com';
114 <p>This would delete both dal.design.ti.com entries, not just one.</p>
116 <p>I think the answer is to implement some validation such that people cannot add a second Site Domain of the same Domain name. Of course, this leaves the question is it considered legal to have two dal.design.ti.com Site Domains with different IP ranges. Which brings up the idea of validating not only a single IP range, but that no IP ranges overlap!</p>
118 <nav class="page-navigation entry-navigation pagination content-nav">
119 <ul class="page-navigation-list">
121 <li class="page-navigation-list-item page-navigation-prev"><a rel="prev" href="http://defaria.com/blogs/Status/2007/04/testccpl.html" title="testcc.pl">Previous entry</a></li>
124 <li class="page-navigation-list-item page-navigation-next"><a rel="next" href="http://defaria.com/blogs/Status/2007/04/oracle-limit-cl.html" title="Oracle limit clause">Next entry</a></li>
129 <aside id="zenback" class="zenback feedback">
130 Please paste Zenback script code here.
137 <aside class="widgets related" role="complementary">
138 <nav class="widget-search widget">
139 <div class="widget-content">
140 <form method="get" id="search" action="http://defaria.com/mt/mt-search.cgi">
142 <input type="text" name="search" value="" placeholder="Search...">
144 <input type="hidden" name="IncludeBlogs" value="8">
146 <input type="hidden" name="limit" value="20">
147 <button type="submit" name="button">
148 <img alt="Search" src="/mt/mt-static/support/theme_static/rainier/img/search-icon.png">
154 <nav class="widget-archive-category widget">
155 <h3 class="widget-header">Categories</h3>
156 <div class="widget-content">
159 <ul class="widget-list">
162 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/ameriquest/">Ameriquest (99)</a>
170 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/audience/">Audience (3)</a>
178 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/broadcom/">Broadcom (76)</a>
186 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/gpdb/">GPDB (35)</a>
194 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-dynamics/">General Dynamics (61)</a>
202 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-electric/">General Electric (13)</a>
210 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/hewlett-packard/">Hewlett Packard (13)</a>
218 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/lynuxworks/">LynuxWorks (162)</a>
226 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/pqa/">PQA (35)</a>
234 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/salira/">Salira (79)</a>
242 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/tellabs/">Tellabs (2)</a>
250 <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/texas-instruments/">Texas Instruments (31)</a>
262 <nav class="widget-archive-dropdown widget">
263 <h3 class="widget-header">Archives</h3>
264 <div class="widget-content">
266 <option>Select a Month...</option>
268 <option value="http://defaria.com/blogs/Status/2016/02/">February 2016</option>
272 <option value="http://defaria.com/blogs/Status/2014/09/">September 2014</option>
276 <option value="http://defaria.com/blogs/Status/2014/04/">April 2014</option>
280 <option value="http://defaria.com/blogs/Status/2014/03/">March 2014</option>
284 <option value="http://defaria.com/blogs/Status/2013/02/">February 2013</option>
288 <option value="http://defaria.com/blogs/Status/2012/09/">September 2012</option>
292 <option value="http://defaria.com/blogs/Status/2012/08/">August 2012</option>
296 <option value="http://defaria.com/blogs/Status/2012/05/">May 2012</option>
300 <option value="http://defaria.com/blogs/Status/2012/04/">April 2012</option>
304 <option value="http://defaria.com/blogs/Status/2012/02/">February 2012</option>
308 <option value="http://defaria.com/blogs/Status/2012/01/">January 2012</option>
312 <option value="http://defaria.com/blogs/Status/2011/10/">October 2011</option>
316 <option value="http://defaria.com/blogs/Status/2011/07/">July 2011</option>
320 <option value="http://defaria.com/blogs/Status/2010/09/">September 2010</option>
324 <option value="http://defaria.com/blogs/Status/2010/08/">August 2010</option>
328 <option value="http://defaria.com/blogs/Status/2010/04/">April 2010</option>
332 <option value="http://defaria.com/blogs/Status/2010/03/">March 2010</option>
336 <option value="http://defaria.com/blogs/Status/2010/02/">February 2010</option>
340 <option value="http://defaria.com/blogs/Status/2009/05/">May 2009</option>
344 <option value="http://defaria.com/blogs/Status/2009/04/">April 2009</option>
348 <option value="http://defaria.com/blogs/Status/2008/07/">July 2008</option>
352 <option value="http://defaria.com/blogs/Status/2008/05/">May 2008</option>
356 <option value="http://defaria.com/blogs/Status/2008/04/">April 2008</option>
360 <option value="http://defaria.com/blogs/Status/2008/03/">March 2008</option>
364 <option value="http://defaria.com/blogs/Status/2008/02/">February 2008</option>
368 <option value="http://defaria.com/blogs/Status/2008/01/">January 2008</option>
372 <option value="http://defaria.com/blogs/Status/2007/12/">December 2007</option>
376 <option value="http://defaria.com/blogs/Status/2007/11/">November 2007</option>
380 <option value="http://defaria.com/blogs/Status/2007/10/">October 2007</option>
384 <option value="http://defaria.com/blogs/Status/2007/09/">September 2007</option>
388 <option value="http://defaria.com/blogs/Status/2007/08/">August 2007</option>
392 <option value="http://defaria.com/blogs/Status/2007/07/">July 2007</option>
396 <option value="http://defaria.com/blogs/Status/2007/06/">June 2007</option>
400 <option value="http://defaria.com/blogs/Status/2007/05/">May 2007</option>
404 <option value="http://defaria.com/blogs/Status/2007/04/">April 2007</option>
408 <option value="http://defaria.com/blogs/Status/2007/03/">March 2007</option>
412 <option value="http://defaria.com/blogs/Status/2007/01/">January 2007</option>
416 <option value="http://defaria.com/blogs/Status/2006/12/">December 2006</option>
420 <option value="http://defaria.com/blogs/Status/2006/11/">November 2006</option>
424 <option value="http://defaria.com/blogs/Status/2006/10/">October 2006</option>
428 <option value="http://defaria.com/blogs/Status/2006/09/">September 2006</option>
432 <option value="http://defaria.com/blogs/Status/2006/07/">July 2006</option>
436 <option value="http://defaria.com/blogs/Status/2006/06/">June 2006</option>
440 <option value="http://defaria.com/blogs/Status/2006/05/">May 2006</option>
444 <option value="http://defaria.com/blogs/Status/2006/04/">April 2006</option>
448 <option value="http://defaria.com/blogs/Status/2006/03/">March 2006</option>
452 <option value="http://defaria.com/blogs/Status/2006/02/">February 2006</option>
456 <option value="http://defaria.com/blogs/Status/2006/01/">January 2006</option>
460 <option value="http://defaria.com/blogs/Status/2005/12/">December 2005</option>
464 <option value="http://defaria.com/blogs/Status/2005/11/">November 2005</option>
468 <option value="http://defaria.com/blogs/Status/2005/10/">October 2005</option>
472 <option value="http://defaria.com/blogs/Status/2005/09/">September 2005</option>
476 <option value="http://defaria.com/blogs/Status/2005/08/">August 2005</option>
480 <option value="http://defaria.com/blogs/Status/2005/07/">July 2005</option>
484 <option value="http://defaria.com/blogs/Status/2005/06/">June 2005</option>
488 <option value="http://defaria.com/blogs/Status/2005/05/">May 2005</option>
492 <option value="http://defaria.com/blogs/Status/2005/04/">April 2005</option>
496 <option value="http://defaria.com/blogs/Status/2005/03/">March 2005</option>
500 <option value="http://defaria.com/blogs/Status/2005/02/">February 2005</option>
504 <option value="http://defaria.com/blogs/Status/2005/01/">January 2005</option>
508 <option value="http://defaria.com/blogs/Status/2004/12/">December 2004</option>
512 <option value="http://defaria.com/blogs/Status/2004/09/">September 2004</option>
516 <option value="http://defaria.com/blogs/Status/2004/08/">August 2004</option>
520 <option value="http://defaria.com/blogs/Status/2004/07/">July 2004</option>
524 <option value="http://defaria.com/blogs/Status/2004/06/">June 2004</option>
528 <option value="http://defaria.com/blogs/Status/2004/05/">May 2004</option>
532 <option value="http://defaria.com/blogs/Status/2004/04/">April 2004</option>
536 <option value="http://defaria.com/blogs/Status/2004/03/">March 2004</option>
540 <option value="http://defaria.com/blogs/Status/2004/02/">February 2004</option>
544 <option value="http://defaria.com/blogs/Status/2004/01/">January 2004</option>
548 <option value="http://defaria.com/blogs/Status/2003/12/">December 2003</option>
552 <option value="http://defaria.com/blogs/Status/2003/11/">November 2003</option>
560 <div class="widget-syndication widget section">
561 <div class="widget-content">
562 <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>
570 <footer id="footer" role="contentinfo">
571 <div id="footer-inner">
572 <div id="footer-content">
573 <nav role="navigation">
575 <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
581 <p class="license">© Copyright 2016.</p>
582 <p class="poweredby">Powered by <a href="http://www.movabletype.org/">Movable Type</a></p>
588 <script src="http://defaria.com/mt/mt-static/jquery/jquery.min.js"></script>
589 <script src="http://defaria.com/blogs/Status/mt-theme-scale2.js"></script>