Initial add of defaria.com
[clearscm.git] / defaria.com / blogs / Status / 2007 / 04 / deleting-site-d.html
1 <!DOCTYPE html>
2 <html lang="en-us" itemscope itemtype="http://schema.org/Article">
3   <head>
4     <meta charset="utf-8">
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">
12     <!--[if lt IE 9]>
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>
15     <![endif]-->
16     
17     <link rel="start" href="http://defaria.com/blogs/Status/">
18
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">
29     <!-- Metadata -->
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">
33     
34   </head>
35   <body>
36     <div id="container">
37       <div id="container-inner">
38         <header id="header" role="banner">
39           <div id="header-inner">
40             <div id="header-content">
41               <h1>
42                 <a href="http://defaria.com/blogs/Status/">
43
44                   Status
45
46                 </a>
47               </h1>
48               
49             </div>
50
51             <nav role="navigation">
52           <ul>
53             <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
54
55
56           </ul>
57         </nav>
58
59           </div>
60         </header>
61         <div id="content">
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>
66             </ul>
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>
75
76   
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>
78   
79
80                    </ul>
81                 </footer>
82                 </div>
83                 <div class="entry-content asset-content" itemprop="articleBody">
84                   <ul>
85   <li>Implemented gpdb_deleteSiteDomain</li>
86 </ul>
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>
88
89 <p>But as we can also see a site may have multiple domains (e.g. Dallas has many).</p>
90
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>
92
93 <div class=code><pre>
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)
101 );
102 </pre></div>
103
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>
105
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>
107
108 <p>Currently the code deletes site_domain_map entries using the following SQL statement:</p>
109
110 <div class=code><pre>
111 DELETE FROM SITE_DOMAIN_MAP WHERE ID = 1000007 AND DOMAIN = 'dal.design.ti.com';
112 </pre></div>
113
114 <p>This would delete both dal.design.ti.com entries, not just one.</p>
115
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>
117                 </div>
118                 <nav class="page-navigation entry-navigation pagination content-nav">
119                   <ul class="page-navigation-list">
120
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>
122
123
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>
125
126                   </ul>
127                 </nav>
128                 <!--
129 <aside id="zenback" class="zenback feedback">
130   Please paste Zenback script code here.
131 </aside>
132 -->
133                 
134                 
135               </article>
136             </div>
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">
141       <div>
142         <input type="text" name="search" value="" placeholder="Search...">
143
144         <input type="hidden" name="IncludeBlogs" value="8">
145
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">
149         </button>
150       </div>
151     </form>
152   </div>
153 </nav>
154 <nav class="widget-archive-category widget">
155   <h3 class="widget-header">Categories</h3>
156   <div class="widget-content">
157     
158       
159     <ul class="widget-list">
160       
161       
162       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/ameriquest/">Ameriquest (99)</a>
163       
164       
165       </li>
166       
167     
168       
169       
170       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/audience/">Audience (3)</a>
171       
172       
173       </li>
174       
175     
176       
177       
178       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/broadcom/">Broadcom (76)</a>
179       
180       
181       </li>
182       
183     
184       
185       
186       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/gpdb/">GPDB (35)</a>
187       
188       
189       </li>
190       
191     
192       
193       
194       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-dynamics/">General Dynamics (61)</a>
195       
196       
197       </li>
198       
199     
200       
201       
202       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/general-electric/">General Electric (13)</a>
203       
204       
205       </li>
206       
207     
208       
209       
210       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/hewlett-packard/">Hewlett Packard (13)</a>
211       
212       
213       </li>
214       
215     
216       
217       
218       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/lynuxworks/">LynuxWorks (162)</a>
219       
220       
221       </li>
222       
223     
224       
225       
226       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/pqa/">PQA (35)</a>
227       
228       
229       </li>
230       
231     
232       
233       
234       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/salira/">Salira (79)</a>
235       
236       
237       </li>
238       
239     
240       
241       
242       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/tellabs/">Tellabs (2)</a>
243       
244       
245       </li>
246       
247     
248       
249       
250       <li class="widget-list-item"><a href="http://defaria.com/blogs/Status/texas-instruments/">Texas Instruments (31)</a>
251       
252       
253       </li>
254       
255     </ul>
256       
257     
258   </div>
259 </nav>
260   
261
262 <nav class="widget-archive-dropdown widget">
263   <h3 class="widget-header">Archives</h3>
264   <div class="widget-content">
265     <select>
266       <option>Select a Month...</option>
267     
268       <option value="http://defaria.com/blogs/Status/2016/02/">February 2016</option>
269     
270   
271     
272       <option value="http://defaria.com/blogs/Status/2014/09/">September 2014</option>
273     
274   
275     
276       <option value="http://defaria.com/blogs/Status/2014/04/">April 2014</option>
277     
278   
279     
280       <option value="http://defaria.com/blogs/Status/2014/03/">March 2014</option>
281     
282   
283     
284       <option value="http://defaria.com/blogs/Status/2013/02/">February 2013</option>
285     
286   
287     
288       <option value="http://defaria.com/blogs/Status/2012/09/">September 2012</option>
289     
290   
291     
292       <option value="http://defaria.com/blogs/Status/2012/08/">August 2012</option>
293     
294   
295     
296       <option value="http://defaria.com/blogs/Status/2012/05/">May 2012</option>
297     
298   
299     
300       <option value="http://defaria.com/blogs/Status/2012/04/">April 2012</option>
301     
302   
303     
304       <option value="http://defaria.com/blogs/Status/2012/02/">February 2012</option>
305     
306   
307     
308       <option value="http://defaria.com/blogs/Status/2012/01/">January 2012</option>
309     
310   
311     
312       <option value="http://defaria.com/blogs/Status/2011/10/">October 2011</option>
313     
314   
315     
316       <option value="http://defaria.com/blogs/Status/2011/07/">July 2011</option>
317     
318   
319     
320       <option value="http://defaria.com/blogs/Status/2010/09/">September 2010</option>
321     
322   
323     
324       <option value="http://defaria.com/blogs/Status/2010/08/">August 2010</option>
325     
326   
327     
328       <option value="http://defaria.com/blogs/Status/2010/04/">April 2010</option>
329     
330   
331     
332       <option value="http://defaria.com/blogs/Status/2010/03/">March 2010</option>
333     
334   
335     
336       <option value="http://defaria.com/blogs/Status/2010/02/">February 2010</option>
337     
338   
339     
340       <option value="http://defaria.com/blogs/Status/2009/05/">May 2009</option>
341     
342   
343     
344       <option value="http://defaria.com/blogs/Status/2009/04/">April 2009</option>
345     
346   
347     
348       <option value="http://defaria.com/blogs/Status/2008/07/">July 2008</option>
349     
350   
351     
352       <option value="http://defaria.com/blogs/Status/2008/05/">May 2008</option>
353     
354   
355     
356       <option value="http://defaria.com/blogs/Status/2008/04/">April 2008</option>
357     
358   
359     
360       <option value="http://defaria.com/blogs/Status/2008/03/">March 2008</option>
361     
362   
363     
364       <option value="http://defaria.com/blogs/Status/2008/02/">February 2008</option>
365     
366   
367     
368       <option value="http://defaria.com/blogs/Status/2008/01/">January 2008</option>
369     
370   
371     
372       <option value="http://defaria.com/blogs/Status/2007/12/">December 2007</option>
373     
374   
375     
376       <option value="http://defaria.com/blogs/Status/2007/11/">November 2007</option>
377     
378   
379     
380       <option value="http://defaria.com/blogs/Status/2007/10/">October 2007</option>
381     
382   
383     
384       <option value="http://defaria.com/blogs/Status/2007/09/">September 2007</option>
385     
386   
387     
388       <option value="http://defaria.com/blogs/Status/2007/08/">August 2007</option>
389     
390   
391     
392       <option value="http://defaria.com/blogs/Status/2007/07/">July 2007</option>
393     
394   
395     
396       <option value="http://defaria.com/blogs/Status/2007/06/">June 2007</option>
397     
398   
399     
400       <option value="http://defaria.com/blogs/Status/2007/05/">May 2007</option>
401     
402   
403     
404       <option value="http://defaria.com/blogs/Status/2007/04/">April 2007</option>
405     
406   
407     
408       <option value="http://defaria.com/blogs/Status/2007/03/">March 2007</option>
409     
410   
411     
412       <option value="http://defaria.com/blogs/Status/2007/01/">January 2007</option>
413     
414   
415     
416       <option value="http://defaria.com/blogs/Status/2006/12/">December 2006</option>
417     
418   
419     
420       <option value="http://defaria.com/blogs/Status/2006/11/">November 2006</option>
421     
422   
423     
424       <option value="http://defaria.com/blogs/Status/2006/10/">October 2006</option>
425     
426   
427     
428       <option value="http://defaria.com/blogs/Status/2006/09/">September 2006</option>
429     
430   
431     
432       <option value="http://defaria.com/blogs/Status/2006/07/">July 2006</option>
433     
434   
435     
436       <option value="http://defaria.com/blogs/Status/2006/06/">June 2006</option>
437     
438   
439     
440       <option value="http://defaria.com/blogs/Status/2006/05/">May 2006</option>
441     
442   
443     
444       <option value="http://defaria.com/blogs/Status/2006/04/">April 2006</option>
445     
446   
447     
448       <option value="http://defaria.com/blogs/Status/2006/03/">March 2006</option>
449     
450   
451     
452       <option value="http://defaria.com/blogs/Status/2006/02/">February 2006</option>
453     
454   
455     
456       <option value="http://defaria.com/blogs/Status/2006/01/">January 2006</option>
457     
458   
459     
460       <option value="http://defaria.com/blogs/Status/2005/12/">December 2005</option>
461     
462   
463     
464       <option value="http://defaria.com/blogs/Status/2005/11/">November 2005</option>
465     
466   
467     
468       <option value="http://defaria.com/blogs/Status/2005/10/">October 2005</option>
469     
470   
471     
472       <option value="http://defaria.com/blogs/Status/2005/09/">September 2005</option>
473     
474   
475     
476       <option value="http://defaria.com/blogs/Status/2005/08/">August 2005</option>
477     
478   
479     
480       <option value="http://defaria.com/blogs/Status/2005/07/">July 2005</option>
481     
482   
483     
484       <option value="http://defaria.com/blogs/Status/2005/06/">June 2005</option>
485     
486   
487     
488       <option value="http://defaria.com/blogs/Status/2005/05/">May 2005</option>
489     
490   
491     
492       <option value="http://defaria.com/blogs/Status/2005/04/">April 2005</option>
493     
494   
495     
496       <option value="http://defaria.com/blogs/Status/2005/03/">March 2005</option>
497     
498   
499     
500       <option value="http://defaria.com/blogs/Status/2005/02/">February 2005</option>
501     
502   
503     
504       <option value="http://defaria.com/blogs/Status/2005/01/">January 2005</option>
505     
506   
507     
508       <option value="http://defaria.com/blogs/Status/2004/12/">December 2004</option>
509     
510   
511     
512       <option value="http://defaria.com/blogs/Status/2004/09/">September 2004</option>
513     
514   
515     
516       <option value="http://defaria.com/blogs/Status/2004/08/">August 2004</option>
517     
518   
519     
520       <option value="http://defaria.com/blogs/Status/2004/07/">July 2004</option>
521     
522   
523     
524       <option value="http://defaria.com/blogs/Status/2004/06/">June 2004</option>
525     
526   
527     
528       <option value="http://defaria.com/blogs/Status/2004/05/">May 2004</option>
529     
530   
531     
532       <option value="http://defaria.com/blogs/Status/2004/04/">April 2004</option>
533     
534   
535     
536       <option value="http://defaria.com/blogs/Status/2004/03/">March 2004</option>
537     
538   
539     
540       <option value="http://defaria.com/blogs/Status/2004/02/">February 2004</option>
541     
542   
543     
544       <option value="http://defaria.com/blogs/Status/2004/01/">January 2004</option>
545     
546   
547     
548       <option value="http://defaria.com/blogs/Status/2003/12/">December 2003</option>
549     
550   
551     
552       <option value="http://defaria.com/blogs/Status/2003/11/">November 2003</option>
553     
554     </select>
555   </div>
556 </nav>
557     
558   
559
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>
563
564   </div>
565 </div>
566
567             </aside>
568           </div>
569         </div>
570         <footer id="footer" role="contentinfo">
571           <div id="footer-inner">
572             <div id="footer-content">
573   <nav role="navigation">
574           <ul>
575             <li><a href="http://defaria.com/blogs/Status/">Home</a></li>
576
577
578           </ul>
579         </nav>
580
581   <p class="license">&copy; Copyright 2016.</p>
582   <p class="poweredby">Powered by <a href="http://www.movabletype.org/">Movable Type</a></p>
583 </div>
584           </div>
585         </footer>
586       </div>
587     </div>
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>
590   </body>
591 </html>