<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-9149095646638471343</atom:id><lastBuildDate>Fri, 20 Jan 2012 12:18:42 +0000</lastBuildDate><category>recovery</category><category>FDD</category><category>shadow</category><category>SQL</category><category>hello ibsurgeon recovery</category><category>webinar</category><category>short ppt ibsurgeon recovery offerings</category><category>interbase</category><category>CPUAffinity</category><category>fbscanner release</category><category>best practices</category><category>sweep</category><category>fbscanner</category><category>France</category><category>multifile database</category><category>fbdataguard</category><category>conference</category><category>ibsurgeon whitepaper</category><category>indices</category><category>Oracle</category><category>case studies</category><category>nbackup</category><category>Evans Data Corp survey</category><category>test</category><category>restore</category><category>firebird interbase differences</category><category>mindthebird</category><category>worst practices</category><category>firebird optimizer</category><category>Brazil</category><category>optimization</category><category>christmas corruptions</category><category>IBAnalyst</category><category>readiness</category><category>interbase firebird magazine</category><category>Russia</category><category>performance</category><category>firebird test</category><category>FIrebird</category><category>release</category><category>ibsurgeon</category><category>fun firebird</category><category>Dnepropetrovsk</category><category>Ukraine</category><category>corruption statistics</category><category>firebird 2.5.1</category><category>backup</category><category>Firebird DataGuard</category><title>Firebird Surgeon</title><description /><link>http://firebirdsurgeon.blogspot.com/</link><managingEditor>noreply@blogger.com (IBSurgeon)</managingEditor><generator>Blogger</generator><openSearch:totalResults>39</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/FirebirdSurgeon" /><feedburner:info uri="firebirdsurgeon" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-4295030632399920134</guid><pubDate>Fri, 20 Jan 2012 12:18:00 +0000</pubDate><atom:updated>2012-01-20T16:18:42.072+04:00</atom:updated><title>DBInfo - new IBSurgeon's free product</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;br /&gt;
&lt;table style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; letter-spacing: normal; line-height: 15px; margin-left: 20px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;br /&gt;
&lt;b&gt;IBSurgeon DBInfo&lt;/b&gt;&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;is designed to visualize internal structure's statistics, so administrators or developers can view how much data, index, blob or other kind of information your Firebird or InterBase database stores.&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://4.bp.blogspot.com/-BpfC0XDrZ2Q/TxlbVrprKVI/AAAAAAAAAIo/cKk-t-6gio0/s1600/dbinfo.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-BpfC0XDrZ2Q/TxlbVrprKVI/AAAAAAAAAIo/cKk-t-6gio0/s1600/dbinfo.jpg" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-bottom: 0px; orphans: 2; padding-bottom: 0px; padding-top: 5px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

Frequiently Asked Questions&lt;/h1&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

1. What is the purpose of DBInfo?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;This tool allows you to&lt;/span&gt;&lt;br /&gt;
&lt;ul style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 18px; list-style-image: url(http://ib-aid.com/pieces/blue_arrow.gif); list-style-position: initial; list-style-type: square; margin-left: 15px; orphans: 2; padding-left: 0px; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
&lt;li&gt;view how much data, index, blob or other kind of information your InterBase or Firebird database store&lt;/li&gt;
&lt;li&gt;detect some database corruptions&lt;/li&gt;
&lt;li&gt;look at database page size, overall file size, database format&lt;/li&gt;
&lt;li&gt;have some fun watching dynamically changing % indicators.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

2. What InterBase and Firebird versions are supported?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Any from InterBase 4.0 to the latest InterBase and Firebird versions. DBInfo supports the following database formats:&lt;/span&gt;&lt;br /&gt;
&lt;ul style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 18px; list-style-image: url(http://ib-aid.com/pieces/blue_arrow.gif); list-style-position: initial; list-style-type: square; margin-left: 15px; orphans: 2; padding-left: 0px; text-align: left; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
&lt;li&gt;8.x - InterBase 4.x&lt;/li&gt;
&lt;li&gt;9.x - InterBase 5.x&lt;/li&gt;
&lt;li&gt;10.0 - InterBase 6.x, Firebird 1.0&lt;/li&gt;
&lt;li&gt;10.1 - Firebird 1.5.x&lt;/li&gt;
&lt;li&gt;11.x - InterBase 7.0/7.1/7.5&lt;/li&gt;
&lt;li&gt;11.x - Firebird 2.0/2.1/2.5&lt;/li&gt;
&lt;li&gt;11.x - Firebird 2.x&lt;/li&gt;
&lt;li&gt;12.x - InterBase 2007&lt;/li&gt;
&lt;li&gt;13.x - InterBase 2009&lt;/li&gt;
&lt;li&gt;15.x - InterBase XE&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

3. Do I need to have InterBase or Firebird server running?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;No. DBInfo can check database file by itself, without server, and it does not need client library also.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

4. Can I check for database contents on remote server?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;A. Yes and no. Since DBInfo opens database file by itself, i.e. use direct access to database, you can check for database contents of database on remote server only if this database file is being shared on network.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

5. May I use DBInfo if my database is on Linux (or other Unix)?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;No, DBInfo is a Windows Win32 tool, so you may only check database files that can be accessed as files from Windows - locally or at shared folders.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

6. Can DBInfo corrupt my database?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Never. DBInfo only reads the database file, and never writes to it. The open mode of the database file is read-only in any case.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

7. May I check database contents while InterBase or Firebird is working with it?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Yes. DBInfo can open the database file even when InterBase or Firebird works with it. But, since reading the whole database file affects disk performance, be sure that at the moment your database is not at high load by applications.&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Also, if you will check the database when the database is being modified by InterBase or Firebird, DBInfo may show warning that database is corrupted, which may be wrong.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

8. What is the purpose of the option "Do not use Windows file cache"?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;DBInfo can scan database file with two modes - using Windows cache or not using it. Usually when you copy file on Windows, it goes to the file cache. And, file cache is being allocated from physical memory. So, the bigger is file, the more amount of file cache is used by Windows. This can cause applications and other data to being moved to virtual memory, and slowdown computer performance.&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;For example, for database files larger than 500mb you could notice contiguous slowdown of DBInfo while scanning database file. Thus, we decided to turn off using cache in DBInfo by default. This allows to scan 1-10-100 gb databases without performance loss for DBInfo and operating system itself.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

9. Why percentage of blob pages is marked by that color?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;The colors is used to paint percentage bars does not have any meanings, except for bad pages found that is marked as red. This is the only case when we pays your attention to the damaged pages found in database.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

10. What I can do if DBInfo found that my database is corrupted?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;The better way is to immediately check the database by gfix and&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://ib-aid.com/products/firebird_interbase/IBFirstAID-FBFirstAID" style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;IBFirstAid Diagnostitian&lt;/a&gt;&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;, and send full log to&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href="mailto:support@ib-aid.com?subject=DBInfo" style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;support@ib-aid.com&lt;/a&gt;&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;. We will be able to help with&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://ib-aid.com/services/recovery" style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;Database Repair Services&lt;/a&gt;&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;or you can buy gull version of&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://ib-aid.com/products/firebird_interbase/IBFirstAID-FBFirstAID" style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;FirstAID&lt;/a&gt;&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; border-top-color: rgb(224, 224, 224); border-top-style: solid; border-top-width: 1px; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: bold; letter-spacing: normal; line-height: 15px; margin-top: 10px; orphans: 2; padding-top: 10px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;

11. What if I want to see how much space is taken for each table and index in database?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;In this case we suggest you to use our&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://ib-aid.com/products/firebird_interbase/monitoring/IBAnalyst" style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;IBAnalyst&lt;/a&gt;&lt;span style="background-color: white; color: #4f4e4e; display: inline ! important; float: none; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;tool, that not only can show you detailed information about your database, but also can give some notes and suggestions about performance optimizations&lt;/span&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;table style="background-color: white; color: #4f4e4e; font-family: Arial,Helvetica; font-size: 13px; letter-spacing: normal; line-height: 15px; margin-left: 20px; orphans: 2; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px;"&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-4295030632399920134?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/Wkmo4piJ2_Q" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/Wkmo4piJ2_Q/dbinfo-new-ibsurgeons-free-product.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-BpfC0XDrZ2Q/TxlbVrprKVI/AAAAAAAAAIo/cKk-t-6gio0/s72-c/dbinfo.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2012/01/dbinfo-new-ibsurgeons-free-product.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-8921007620410020162</guid><pubDate>Sun, 15 Jan 2012 20:40:00 +0000</pubDate><atom:updated>2012-01-16T00:40:39.736+04:00</atom:updated><title>IBSurgeon Log Viewer: new free product</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;
&lt;div style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; orphans: 2; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
IBSurgeon Log Viewer is designed to facilitate viewing and analyzing long Firebird and InterBase logs. Many Firebird and Interbase developers and administrators do not pay enough attention to the contents of firebird.log (interbase.log), though there is a lot of useful information, which can help to find and resolve various issues with Firebird/InterBase databases.&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Originally Log Viewer was IBSurgeon's internal application, which helped to quickly navigate through very long Firebird and InterBase logs, and in version 2.0 it became mature enough to be released for the community.&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://ib-aid.com/download/setup_ibsurgeon_logviewer.exe" style="color: #0155a9;"&gt;Download free version&lt;/a&gt;&lt;span class="Apple-converted-space"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style="-webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; orphans: 2; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
&lt;br /&gt;Install it and open server’s log (usually it's in C:\Program Files\Firebird\Firebird_n_n\ folder). There are also descriptions for log entries shipped with IBSurgeon Log Viewer:&lt;span class="Apple-converted-space"&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="http://2.bp.blogspot.com/-B57nCI1KGoQ/TxM5ok87-OI/AAAAAAAAAIg/KaVXkydnksA/s1600/ibslogviewer.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="442" src="http://2.bp.blogspot.com/-B57nCI1KGoQ/TxM5ok87-OI/AAAAAAAAAIg/KaVXkydnksA/s640/ibslogviewer.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #4f4e4e; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; margin: 0px; orphans: 2; padding: 0px; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
&lt;span class="Apple-converted-space"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #4f4e4e; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; margin: 0px; orphans: 2; padding: 0px; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
&lt;span class="Apple-converted-space"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="background-color: white; color: #4f4e4e; font-family: Arial,Helvetica; font-size: 13px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: 15px; margin: 0px; orphans: 2; padding: 0px; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px;"&gt;
&lt;span class="Apple-converted-space"&gt;Feel free to contact IBSurgeon Support (&lt;a href="mailto:support@ib-aid.com"&gt;support@ib-aid.com&lt;/a&gt;) if you see suspicious messages in your logs. Don't forget to attach log to the message!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-8921007620410020162?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/JxwSPo72EDU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/JxwSPo72EDU/ibsurgeon-log-viewer-new-free-product.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-B57nCI1KGoQ/TxM5ok87-OI/AAAAAAAAAIg/KaVXkydnksA/s72-c/ibslogviewer.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2012/01/ibsurgeon-log-viewer-new-free-product.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-122529654668527291</guid><pubDate>Tue, 04 Oct 2011 08:48:00 +0000</pubDate><atom:updated>2011-10-04T12:48:44.392+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Firebird Conference 2011: Luxembourg, November 25-26</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;The Firebird Project invites all Firebird users and developers to  participate in the &lt;a _fcksavedurl="http://www.firebirdsql.org/en/firebird-conference-2011/" href="http://www.firebirdsql.org/en/firebird-conference-2011/"&gt;Firebird Conference 2011&lt;/a&gt;, hich will take place in &lt;strong&gt;Luxembourg, November 25-26, 2011&lt;/strong&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;a href="http://www.ib-aid.com/"&gt;IBSurgeon &lt;/a&gt;is a sponsor of Firebird Conference 2011, and we recommend all our customers to go there.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The   Firebird Conference 2011 will be devoted to  a variety of important   topics: Firebird SQL language improvements, performance, optimization,   database protection and recovery, and many others.&lt;br /&gt;
&lt;br /&gt;
A number of presentations will be done by the &lt;strong&gt;Firebird Core team&lt;/strong&gt;,   which  will ensure access to information at the best technical levels.   The  Firebird Conference 2011 will be a place to improve your Firebird    development  skills and give a chance to ask questions directly to   Firebird Core  team. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Firebird Core Team will be represented by Dmitry Yemanov, Vlad Khorsun,  Alex Peshkoff, Philippe Makowski, etc.     There are also will be  speakers from IBSurgeon and other Firebird-related companies.&lt;br /&gt;
&lt;br /&gt;
More information: &lt;a _fcksavedurl="http://www.firebirdsql.org/en/firebird-conference-2011/" href="http://www.firebirdsql.org/en/firebird-conference-2011/"&gt;www.firebirdsql.org/en/firebird-conference-2011/&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-122529654668527291?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/Ztw8ZJcda74" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/Ztw8ZJcda74/firebird-conference-2011-luxembourg.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2011/10/firebird-conference-2011-luxembourg.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-6355074331616334101</guid><pubDate>Fri, 30 Sep 2011 10:38:00 +0000</pubDate><atom:updated>2011-10-04T14:18:16.932+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">fbscanner release</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">firebird 2.5.1</category><title>Firebird 2.5.1 (sub-release) is available</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;pre style="font-family: inherit;" wrap=""&gt;Firebird Project is happy to announce general availability of Firebird 2.5.1 - a minor release of the award-winning relational database management system. This sub-release introduces several bug fixes and many important improvements  - for example, performance improvements during a database restore, the ability to write to global temporary tables in read-only databases, etc.&amp;nbsp;&lt;/pre&gt;&lt;pre style="font-family: inherit;" wrap=""&gt;For the full list of changes please refer to the Release Notes, Chapter 2 "New in Firebird 2.5".&amp;nbsp;&lt;/pre&gt;&lt;pre style="font-family: inherit;" wrap=""&gt;Firebird 2.5.1 has 100% compatible on-disk structure with Firebird 2.5.0, so it is recommended to migrate to 2.5.1 as soon as possible. To download Firebird 2.5.1, please visit the download section at the official web-site: &lt;a href="http://firebirdsql.org/en/firebird-2-5-1/"&gt;http://firebirdsql.org/en/firebird-2-5-1/&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-6355074331616334101?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/fwIOpZzC9BA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/fwIOpZzC9BA/firebird-251-sub-release-is-available.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2011/09/firebird-251-sub-release-is-available.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-1101477041626875259</guid><pubDate>Thu, 25 Aug 2011 15:06:00 +0000</pubDate><atom:updated>2011-08-30T00:18:36.200+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">sweep</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Tip for Sweep</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;As you probably know, manual sweep (by invoking gfix -sweep) is the important part of Firebird database maintenance (especially for big databases). Unfortunately, there are few people who understand the internals of sweep process. In this post we will not explain the magic of sweep, because it requires long and detailed explanation, instead of this we will provide you with the simple method to check that sweep was completed successfully and fulfilled its task.&lt;br /&gt;
After running&amp;nbsp; gfix -sweep you need to run any Firebird client (like isql.exe) and commit at least one transaction - this is necessary to move other transactions' markers after sweep.&lt;br /&gt;
Then run gstat -h and check its output: all transaction markers should be aligned (i.e., with minimal gap):&lt;br /&gt;
&lt;br /&gt;
&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Oldest transaction&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16702&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Oldest active&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16703&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Oldest snapshot&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16703&lt;br /&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Next transaction&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 16704&lt;/div&gt;If you see that gap is more than several transactions, it means that sweep did not remove all possible garbage (and in this case you can see gap of hundreds/thousands transactions). Unfortunately, sweep does not produce any errors or messages in firebird.log, so it's hard to determine the reason of failure.&lt;br /&gt;
&lt;i&gt;Also, the big gap is an obvious alert to check database statistics (produced by gstat -r, visualized by IBAnalyst).&lt;/i&gt;&lt;br /&gt;
The most often reason why sweep does not clear all record versions is long-running writeable transaction (and this is the most often reason why automatic sweep does not work well), but there are other unpleasant options, like database corruption.&lt;br /&gt;
If you are sure that there were no connected users during sweep, or you saw that sweep finished unusually quickly for the big database (like several second for database 5+Gb in size), consider it as an alert, and run validation (gfix -v -full) as soon as possible.&lt;br /&gt;
&lt;br /&gt;
Disadvantage of such approach (in terms of recognizing problem in system area of Firebird with failed sweep) is that sweep usually scheduled to run once per day, and it requires explicit attention of administrator, because only indirect signs appear. To monitor database health around the clock we are using our FBDataGuard tool - it check the same metadata that sweep touches during sweeping, and it sends alert immediately if something is wrong.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-1101477041626875259?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/mNLgvTAhQZ8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/mNLgvTAhQZ8/tip-for-sweep.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2011/08/tip-for-sweep.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-1224584710882503869</guid><pubDate>Tue, 23 Aug 2011 09:05:00 +0000</pubDate><atom:updated>2011-08-23T16:19:55.211+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">shadow</category><category domain="http://www.blogger.com/atom/ns#">CPUAffinity</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">nbackup</category><category domain="http://www.blogger.com/atom/ns#">SQL</category><category domain="http://www.blogger.com/atom/ns#">multifile database</category><title>You DON'T need CPUAffinity, nBackup, shadow and multifile databases</title><description>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;span class="Apple-style-span" style="background-color: #e3f1fc; color: #333333; line-height: 18px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-size: 12px; line-height: 1.5em; margin-bottom: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial,Helvetica,sans-serif;"&gt;Right now at&amp;nbsp;&lt;a href="http://www.firebirdnew.org/"&gt;www.firebirdnew.org&lt;/a&gt;&amp;nbsp;you can see the survey about Firebird features in production environment.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 1.5em; margin-bottom: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial,Helvetica,sans-serif;"&gt;Some answers look like dangerous signals, especially for those who run big Firebird databases.&lt;/span&gt;&lt;br /&gt;
&lt;img alt="" src="data:image/png;base64,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" /&gt;&lt;span class="Apple-style-span" style="font-family: Arial,Helvetica,sans-serif;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="background-color: #e3f1fc; color: #333333; font-family: 'Trebuchet MS',Georgia,Arial,serif; font-size: 12px; line-height: 18px;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class="Apple-style-span" style="background-color: #e3f1fc;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="color: #333333; font-size: 12px; line-height: 1.5em; margin-bottom: 1em; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px; text-align: left;"&gt;&lt;span class="Apple-style-span" style="font-family: Arial,sans-serif; line-height: 24px;"&gt;So, what's wrong with these answers?&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif; font-size: 12px; line-height: 24px;"&gt;1. &lt;b&gt;CPUAffinity&lt;/b&gt;. CPUAffinity can be used to bind Firebird SuperServer to some particular CPU/core. At present we have plenty of cores even at desktop workstations, so there is no reason to use SuperServer and limit Firebird to the only CPU - use SuperClassic or Classic architectures to run Firebird at full throttle.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 24px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 24px;"&gt;2. &amp;nbsp;&lt;b&gt;NBackup&lt;/b&gt;. In IBSurgeon we do not recommend our clients to use NBackup without external monitoring and as the only way of backup. NBackup makes the straight copy of database on page level &amp;nbsp;- it's fast, but, unlike the gbak, it does not check pages' contents. If you use only NBackup and does not perform necessary database maintenance (at least regular sweep, combined with transaction markers monitoring), and someday your database became corrupted (due to RAM problem or abnormal shutdown, for example) , NBackup will continue to make (and overwrite) "backups". &amp;nbsp;Another danger is "frozen: delta-file, when database are not unlocked correctly, and all changes are written to delta-file, and cannot be merged due to delta file problem. &amp;nbsp;To use nbackup strengths and avoid pitfalls, we setup special backup scheme for our clients.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 24px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 24px;"&gt;3. &lt;b&gt;Shadow &lt;/b&gt;is completely useless in modern production environments. It provides protection from the only type of corruption - occasional critical crash of HDD (assuming that shadow is configured correctly, with 2 separate HDDs). &amp;nbsp; Use RAID5 (or RAID10) instead - it will be much faster and more convenient for maintenance.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 24px;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; line-height: 24px;"&gt;4. &lt;b&gt;Multifile database&lt;/b&gt;. There is no actual reason to use multi-file database at present. With multi-file it will be impossible to do NBackup, database files will be tied to its locations, and it will give no advantage at all. Often multi-file databases are being implemented to perform copying of database to DVD, but you need to switch off Firebird during this operation.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;b&gt;Summary&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;Of course, the title of this post is a provocation, and sometimes administrator need to use CPUAffinity, nbackup and other features (not shadow!), in order to achieve some specific result, but it should be done correctly and with full understanding of steps to be done. NBackup is the most useful tool, which is very often understimated both in terms of strengths and possible problems with it.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;i&gt;More information:&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;"Firebird's Big Database" presentation at slideshare:&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;a href="http://www.slideshare.net/ibsurgeon/firebirds-big-databases-in-english"&gt;http://www.slideshare.net/ibsurgeon/firebirds-big-databases-in-english&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="font-size: 12px; line-height: 24px;"&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: Arial,sans-serif;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="background-color: #e3f1fc;"&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal" style="margin-bottom: 12pt;"&gt;&lt;span class="Apple-style-span" style="background-color: #e3f1fc;"&gt;&lt;span class="Apple-style-span" style="color: #333333;"&gt;&lt;span class="Apple-style-span"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-1224584710882503869?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/2MLXoTOEDxk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/2MLXoTOEDxk/you-dont-need-cpuaffinity-nbackup.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2011/08/you-dont-need-cpuaffinity-nbackup.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-6283099746395709588</guid><pubDate>Sun, 17 Jul 2011 16:32:00 +0000</pubDate><atom:updated>2011-07-17T20:43:04.431+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">optimization</category><category domain="http://www.blogger.com/atom/ns#">indices</category><category domain="http://www.blogger.com/atom/ns#">fbscanner</category><title>Firebird: how to find SQL queries which use bad index?</title><description>&lt;div class="MsoNormal"&gt;&lt;div style="font-family: Times,&amp;quot;Times New Roman&amp;quot;,serif;"&gt;&lt;span lang="EN-US" style="font-size: small;"&gt;In the first part of our optimization story ("&lt;a href="http://firebirdsurgeon.blogspot.com/2011/07/how-to-ruin-firebird-performance-with.html"&gt;How to ruin Firebird performance...&lt;/a&gt;") we mentioned that indices should be analyzed before dropping, even if they appeared to be very bad in IBAnalyst in terms of garbage and number of unique values.&lt;/span&gt;&lt;/div&gt;&lt;div style="font-family: Times,&amp;quot;Times New Roman&amp;quot;,serif;"&gt;&lt;span lang="EN-US" style="font-size: small;"&gt;In essence, we need to log all queries used in applications, get their execution plans and check, how indices are used.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;div style="font-family: inherit;"&gt;&lt;span lang="EN-US" style="font-size: small;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;b&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="line-height: 115%;"&gt;For this we need to log all SQL traffic between applications and Firebird database.&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="line-height: 115%;"&gt;&lt;span style="font-family: inherit;"&gt;There are 2 ways to do it in Firebird 2.5 a&lt;/span&gt;nd later: FBScanner and Trace API, and the only way in early versions of Firebird: FBScanner.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="font-family: inherit;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US" style="line-height: 115%;"&gt;FBScanner (Firebird Scanner) is a tool that can monitor and view all traffic between Firebird and InterBase servers and their client applications. &lt;/span&gt;&lt;/span&gt;  &lt;/div&gt;&lt;div class="MsoNormal" style="font-family: inherit;"&gt;&lt;span style="font-size: small;"&gt;&lt;span lang="EN-US"&gt;FBScanner can log all SQL traffic to text files and external Firebird database, it includes FBScanner LogAnalyzer module to analyze SQL performance.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 11pt; line-height: 115%;"&gt;&lt;span style="font-family: inherit;"&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;Why not use Trace API?&lt;/b&gt;&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;For Firebird 2.5 users using TraceAPI could be good solution, but for high-load system TraceAPI can add too much load to Firebird. FBScanner add only 5-10% overhead to general operations and, moreover, it can be installed on separate [debug] server, so users and applications will not see any difference.&lt;br /&gt;
Also, as you can see below, FBScanner offers convenient user interface to analyze plans and queries.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;span lang="EN-US"&gt;FBScanner stores all information into the single table. It uses self-links to reduce the amount of stored information and it makes raw log hard to read and understand.&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;To facilitate log analysis we have created new module in FBScanner 3.0 - LogAnalyzer. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;
&lt;span lang="EN-US"&gt;At first start LogAnalyzer will create necessary indices, it can take several minutes.&lt;/span&gt;&lt;br /&gt;
&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;After that LogAnalyzer will show the last available day in the log at the “Server Load” tab:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-w4dZWrjUeeo/TiMNYaRQe4I/AAAAAAAAAHQ/KhlUiXli_iw/s1600/server_load.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="449" src="http://1.bp.blogspot.com/-w4dZWrjUeeo/TiMNYaRQe4I/AAAAAAAAAHQ/KhlUiXli_iw/s640/server_load.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;“Server Load” tab shows how many SQL queries were run per minute, and how much time they took to execute. Effectively it shows server load, i.e., number of queries and their execution times.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Zoom in (button in the top left corner of the tab “Server load”), drag graph by holding right-button of the mouse and select the peak you are interested to investigate – click right-button to show popup-menu&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-OHLVs5pG278/TiMNkok8mhI/AAAAAAAAAHU/hSaFlSA-2YU/s1600/server_load2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-OHLVs5pG278/TiMNkok8mhI/AAAAAAAAAHU/hSaFlSA-2YU/s1600/server_load2.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;It will show you tab “All statements”, where you can browse SQL queries&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-pmbRC6A4bHo/TiMNuQDaprI/AAAAAAAAAHY/KL0AygYwczM/s1600/all_statements.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="204" src="http://1.bp.blogspot.com/-pmbRC6A4bHo/TiMNuQDaprI/AAAAAAAAAHY/KL0AygYwczM/s640/all_statements.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Select any query to see its text and, if plan logging feature is enabled, its plan.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;To follow the execution flow, you can right-click on the query and look for connection and transactions for this query&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-WUK5FtT1iOk/TiMN49cKi2I/AAAAAAAAAHc/6GtXvx8jZe8/s1600/query_details.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="488" src="http://1.bp.blogspot.com/-WUK5FtT1iOk/TiMN49cKi2I/AAAAAAAAAHc/6GtXvx8jZe8/s640/query_details.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;LogAnalyzer marks bold queries in the same transaction:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-aX38JsuN6rU/TiMOmgkw9GI/AAAAAAAAAHw/2Tj4BRH6vvc/s1600/same_transaction.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-aX38JsuN6rU/TiMOmgkw9GI/AAAAAAAAAHw/2Tj4BRH6vvc/s1600/same_transaction.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;You can sort queries and, for example, find query with the longest execution time:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-JjNltTBG5Ms/TiMOBmDxXTI/AAAAAAAAAHg/iX9qStJZ9u8/s1600/sort_queries.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-JjNltTBG5Ms/TiMOBmDxXTI/AAAAAAAAAHg/iX9qStJZ9u8/s1600/sort_queries.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;To know more about this query - double-click on it and see more details&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-BwIUV23uagA/TiMOUWEsv7I/AAAAAAAAAHo/ONrC9gpcxKg/s1600/query_details.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="488" src="http://2.bp.blogspot.com/-BwIUV23uagA/TiMOUWEsv7I/AAAAAAAAAHo/ONrC9gpcxKg/s640/query_details.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;i&gt;More information about FBScanner is available in "&lt;a href="http://www.ib-aid.com/download/docs/FBScanner3UserGuide.pdf"&gt;FBScanner User Guide&lt;/a&gt;".&lt;/i&gt;&lt;br /&gt;
&lt;br /&gt;
After fixing plans we can delete bad indices. But good question - how to assure that new plans will act normally in production environment?&lt;br /&gt;
See answer for this question in the next article.&lt;br /&gt;
&lt;br /&gt;
&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-6283099746395709588?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/ZXx82kbFyHI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/ZXx82kbFyHI/firebird-how-to-find-sql-queries-which.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-w4dZWrjUeeo/TiMNYaRQe4I/AAAAAAAAAHQ/KhlUiXli_iw/s72-c/server_load.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2011/07/firebird-how-to-find-sql-queries-which.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-465833356735133073</guid><pubDate>Sun, 10 Jul 2011 13:03:00 +0000</pubDate><atom:updated>2011-07-17T20:44:02.470+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">IBAnalyst</category><category domain="http://www.blogger.com/atom/ns#">optimization</category><category domain="http://www.blogger.com/atom/ns#">indices</category><title>How to ruin Firebird performance with bad indices</title><description>&lt;h1&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h3&gt;&lt;span lang="EN-US"&gt;Abstract&lt;/span&gt;&lt;/h3&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;This short article shows by example how bad index can affect Firebird database performance. &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;b&gt;Test database&lt;/b&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Imagine you have simple Firebird database: &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;CREATE DATABASE “E:\TESTFB25INDEX.FDB” USER “SYSDBA” PASSWORD “masterkey”;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;CREATE TABLE TABLEIND1 (&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; I1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; INTEGER NOT NULL PRIMARY KEY,&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; NAME&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; VARCHAR(250),&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MALEORFEMALE&amp;nbsp; SMALLINT&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;);&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;CREATE GENERATOR G1;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;SET TERM ^ ;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;create or alter procedure INS1MLN&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;returns (&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; INSERTED_CNT integer)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;as&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;BEGIN&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;inserted_cnt = 0;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;WHILE (inserted_cnt &amp;lt;1000000) DO&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;BEGIN&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;&amp;nbsp;Insert into tableind1(i1, name, maleorfemale) values(gen_id(g1,1), 'TEST name', (:inserted_cnt - (:inserted_cnt/2)*2));&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;&amp;nbsp;inserted_cnt=inserted_cnt+1;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;END&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;suspend;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;END^&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;SET TERM ; ^&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;GRANT INSERT ON TABLEIND1 TO PROCEDURE INS1MLN;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;GRANT EXECUTE ON PROCEDURE INS1MLN TO SYSDBA;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;COMMIT;&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;For some reason you need:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing" style="margin-left: 36pt; text-indent: -18pt;"&gt;&lt;span lang="EN-US" style="font-family: Symbol;"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;insert 1 million records&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing" style="margin-left: 36pt; text-indent: -18pt;"&gt;&lt;span lang="EN-US" style="font-family: Symbol;"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;update all these records&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing" style="margin-left: 36pt; text-indent: -18pt;"&gt;&lt;span lang="EN-US" style="font-family: Symbol;"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;delete all records&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing" style="margin-left: 36pt; text-indent: -18pt;"&gt;&lt;span lang="EN-US" style="font-family: Symbol;"&gt;·&lt;span style="font: 7pt &amp;quot;Times New Roman&amp;quot;;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;/span&gt;&lt;span lang="EN-US"&gt;run SELECT count(*) from this database.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;To perform it, we can use the following script (to run it immediately after database creation script) :&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;set stat on; &amp;nbsp;/*show statistics*/&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;select * from ins1mln; &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;update tableind1 SET MALEORFEMALE = 3;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;delete from tableind1;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;select count(*) from tableind1;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;and store result for future analysis.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;Then we will create database with the same structure - &amp;nbsp;but add index for MALEORFEMAIL column&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;"&gt;CREATE INDEX TABLEIND1_IDX1 ON TABLEIND1 (MALEORFEMALE); &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;As you can see, we insert to this column only 0 or 1 integer values.&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;Then we repeat the script with this index and compare results.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;Results are in the following table:&lt;/span&gt;&lt;/div&gt;&lt;table border="1" cellpadding="0" cellspacing="0" class="MsoTableGrid" style="border-collapse: collapse; border: medium none;"&gt;&lt;tbody&gt;
&lt;tr&gt;   &lt;td style="border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 239.25pt;" valign="top" width="319"&gt;&lt;div class="MsoNoSpacing"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Without index for MALEORFEMAIL&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border-color: windowtext windowtext windowtext -moz-use-text-color; border-style: solid solid solid none; border-width: 1pt 1pt 1pt medium; padding: 0cm 5.4pt; width: 239.3pt;" valign="top" width="319"&gt;&lt;div class="MsoNoSpacing"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;With index for MALEORFEMALE&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;tr&gt;   &lt;td style="border-color: -moz-use-text-color windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; padding: 0cm 5.4pt; width: 239.25pt;" valign="top" width="319"&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; set stat on; /*show statistics*/&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&lt;b&gt;&amp;gt;   select * from ins1mln&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;INSERTED_CNT&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   1000000&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 10487216&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = 80560&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 12569996&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;13.33&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 18756&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 7833503&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&lt;b&gt;&amp;gt;   update tableind1 SET MALEORFEMALE = 3&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 76551788&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = 66064572&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 111442520&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;15.04&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 16166&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 15852&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 6032307&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; &lt;b&gt;delete   from tableind1;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 76550240&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = -1548&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 111442520&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;3.27&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 16147&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 16006&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 5032277&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; &lt;b&gt;select   count(*) from tableind1&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   COUNT&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 76552064&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = 1824&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 111442520&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;1.35&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 16021&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 1791&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 2032278&lt;/span&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style="border-color: -moz-use-text-color windowtext windowtext -moz-use-text-color; border-style: none solid solid none; border-width: medium 1pt 1pt medium; padding: 0cm 5.4pt; width: 239.3pt;" valign="top" width="319"&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; set stat on; /*show statistics*/&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; &lt;b&gt;select   * from ins1mln&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;INSERTED_CNT&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   1000000&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 10484140&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = 75524&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 12569996&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;23.94&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 23942&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 11459599&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; &lt;b&gt;update   tableind1 SET MALEORFEMALE = 3;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 76548712&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = 66064572&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 111439444&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;29.30&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 16167&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 19492&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 10035948&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; &lt;b&gt;delete   from tableind1;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 76547164&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = -1548&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 111439444&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;3.41&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 16147&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 15967&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 5032277&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;SQL&amp;gt; &lt;b&gt;select   count(*) from tableind1&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   COUNT&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Current memory = 76548988&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Delta memory = 1824&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Max memory = 111439444&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Elapsed time= &lt;b&gt;0.69&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Reads = 16021&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Writes 1901&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-size: 9pt;"&gt;Fetches = 2032278&lt;/span&gt;&lt;span lang="EN-US"&gt; &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;So, bad index decreases performance&lt;b&gt; by approximately 2 times while inserting or updating&lt;/b&gt;. Also we can see that non-optimal index greatly increases number of writes and record fetches.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;span lang="EN-US"&gt;Let’s get statistics for this sample database (with bad index for MALEORFEMALE) and try to find some details.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;To gather statistics, we run the following command:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; line-height: 115%;"&gt;gstat -r e:\testfb25index.fdb &amp;gt; e:\teststat.txt&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;span lang="EN-US"&gt;TABLEIND1 table and indices statistics section looks intriguing, but what useful information it gives to us? &amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;TABLEIND1 (128)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Primary pointer page: 166, Index root page: 167&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Average record length: 0.00, total records: 1000000&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Average version length: 27.00, total versions: 1000000, max versions: 1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Data pages: 16130, data page slots: 16130, average fill: 93%&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fill distribution:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;0 - 19% = 1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 - 39% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40 - 59% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60 - 79% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80 - 99% = 16129&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Index RDB$PRIMARY1 (0)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Depth: 3, leaf buckets: 1463, nodes: 1000000&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Average data length: 1.00, total dup: 0, max dup: 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fill distribution:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 - 19% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 20 - 39% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 40 - 59% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 60 - 79% = 1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 80 - 99% = 1462&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Index TABLEIND1_IDX1 (1)&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Depth: 3, leaf buckets: 2873, nodes: 2000000&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Average data length: 0.00, total dup: 1999997, max dup: 999999&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fill distribution:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 - 19% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 20 - 39% = 1&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 40 - 59% = 1056&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 60 - 79% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; 80 - 99% = 1816&lt;/span&gt;&lt;span lang="EN-US" style="font-size: 10pt;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;To understand the meaning of shown numbers and percentage values, we can use &lt;a href="http://www.ib-aid.com/products/firebird_interbase/monitoring/IBAnalyst"&gt;IBAnalyst tool&lt;/a&gt;, which offers visual interpretation of database statistics:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-Et66AJmwc-Q/ThmiyoBSfPI/AAAAAAAAAHI/lun4bc3UzI0/s1600/simple_stat.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://1.bp.blogspot.com/-Et66AJmwc-Q/ThmiyoBSfPI/AAAAAAAAAHI/lun4bc3UzI0/s1600/simple_stat.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;By clicking Reports/View recommendations we can find the appropriate explanation for this index:&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;Bad indices count: 1.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;By `bad` we name indices with many duplicate keys (90% of all keys) &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;and big groups of equal keys (30% of all keys). Big groups of equal &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;keys slowdown garbage collection - MaxEquals here is % of max groups &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;of keys having equal values. Index search for such an index is not &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;efficient. You can drop such indices (if they are not on FK &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;constraints).&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;Index&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ( Relation)&amp;nbsp; Duplicates&amp;nbsp; MaxEquals&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US" style="font-family: &amp;quot;Courier New&amp;quot;;"&gt;TABLEIND1_IDX1 (TABLEIND1) :&amp;nbsp;&amp;nbsp; 100%,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50%&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;In production databases often we can see many bad indices, which can greatly affect database performance. In this example we can see table with 13 millions of records which have 7 bad indices, which are (most likely) useless and greatly decrease Firebird performance.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-OSoCVJTqbyU/Thmi4hlERWI/AAAAAAAAAHM/B6PbASGpKCE/s1600/production_stats.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/-OSoCVJTqbyU/Thmi4hlERWI/AAAAAAAAAHM/B6PbASGpKCE/s1600/production_stats.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;span lang="EN-US"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;Usually the first move of developer is to drop these bad indices. On other hand, it’s possible that bad index was used in some particular SQL query, which required specific combination of indices (including bad one) in order to run fast enough. &lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;Firebird SQL optimizer has complex rules, and it often happens that dropping of bad index can lead to significant performance degradation in some queries.&lt;/span&gt;&lt;/div&gt;&lt;div class="MsoNoSpacing"&gt;&lt;span lang="EN-US"&gt;Certainly, these SQL queries should be rewritten to use more optimal execution plan without bad index, but there is a still a problem: how to find SQL queries which use bad index?&amp;nbsp;&lt;/span&gt;&lt;br /&gt;
&lt;span lang="EN-US"&gt;The answer is in the &lt;a href="http://firebirdsurgeon.blogspot.com/2011/07/firebird-how-to-find-sql-queries-which.html"&gt;next episode&lt;/a&gt; of our Optimization series of articles.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-465833356735133073?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/0a0IR35foPc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/0a0IR35foPc/how-to-ruin-firebird-performance-with.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-Et66AJmwc-Q/ThmiyoBSfPI/AAAAAAAAAHI/lun4bc3UzI0/s72-c/simple_stat.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2011/07/how-to-ruin-firebird-performance-with.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-3080735899362417973</guid><pubDate>Tue, 30 Nov 2010 17:41:00 +0000</pubDate><atom:updated>2010-11-30T22:07:47.936+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">case studies</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Firebird Case Studies Catalog</title><description>To support Firebird Project and MindTheBird!, we'll re-print their message here:&lt;br /&gt;
&lt;br /&gt;
Hello All Firebirders! &lt;br /&gt;
&lt;br /&gt;
Today we start very important activity &amp;nbsp;- building Firebird Case  Studies catalog. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
WHAT IS CASE STUDY? &lt;br /&gt;
&lt;br /&gt;
Case study is an example of real-world implementation of  certain product. Case study should be very specific and describe&lt;br /&gt;
1) technical details (database size, # of users, transactions  load), &lt;br /&gt;
2) type of business (ERP, hospital automations, CD catalogs,  web-sites &lt;br /&gt;
examples, etc)  and &lt;br /&gt;
3) business value – license costs economy, performance increasing,  etc. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
WHY FIREBIRD PROJECT NEEDS YOUR CASE STUDIES? &lt;br /&gt;
&lt;br /&gt;
People are looking for templates in all areas of the life.&lt;br /&gt;
There are hundreds of “sitting ducks” Firebird deployments, which  are  very good in all terms – database sizes, # of users, high ROI for business, etc, etc.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We need to go for them and build the collection of case  studies at  &lt;a href="http://www.google.com/url?sa=D&amp;amp;q=www.firebirdsql.org&amp;amp;usg=AFQjCNFGpFF3ioItJgN43w77C8FU5yMYxg" rel="nofollow" target="_blank"&gt;www.firebirdsql.org&lt;/a&gt;  web-site to clearly demonstrate to the world the actual value of Firebird deployments. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is very important for Firebird Project future  development and its  recognition in IT world. Let's expose the power of Firebird to everybody, and for this we need participation of each Firebird  developer! &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
WHO CAN PARTICIPATE IN FIREBIRD CASE STUDY CATALOG? &lt;br /&gt;
&lt;br /&gt;
Yes, you can! &lt;br /&gt;
Firebird needs case studies and stories of all types - so  regardless of what software you create - for bakery automation or to navigate space ships - create and submit your case study.&lt;br /&gt;
Every EXE-file or web-site which uses Firebird is important for  Firebird project, if it does useful things.  It will take only 1-2 hours and it will help Firebird a lot! &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
HOW TO CREATE FIREBIRD CASE STUDY? &lt;br /&gt;
&lt;br /&gt;
Download Firebird Case Study Guide and Template &lt;a href="http://www.mindthebird.com/docs/firebird_case_study_template.doc" rel="nofollow" target="_blank"&gt;www.mindthebird.com/docs/firebird_case_study_template.doc&lt;/a&gt; &lt;br /&gt;
&lt;br /&gt;
You will go through several steps that are described in this  template  and then fill out the necessary text sections, attach appropriate graphics and write several quotes. &amp;nbsp;We estimate time to create case &lt;br /&gt;
study in 1-1.5 hour.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Only case studies in English are accepted, but if you have  Case Study  in several languages, it will be good addition.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you have several good examples of Firebird usage, create  several Case Studies for each. &lt;br /&gt;
&lt;br /&gt;
The result will be submitted to Firebird Project Marketing  and a professional designer will create the final case study document in  PDF format. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PRIZES AND BENEFITS &lt;br /&gt;
&lt;br /&gt;
Every submitted case study will be considered by MindTheBird  Team and  Firebird Project Marketing and, if it will be considered as a good  and complete description of the real-world project or existing packaged &lt;br /&gt;
software, it will be included into Firebird Case Studies Catalog at firebirdsql.org, which will run in Q1 of 2011.&lt;br /&gt;
First 20 Case Studies will have prizes from the list &lt;a href="http://www.google.com/url?sa=D&amp;amp;q=www.mindthebird.com/benefits.html&amp;amp;usg=AFQjCNEWktKk3UVeQfl1ZKhlFgIMsOidRQ" rel="nofollow" target="_blank"&gt;www.mindthebird.com/benefits.html&lt;/a&gt;  and, of course, they will be specially listed at minthebird.com  and, later, at firebirdsql.org. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ANY QUESTIONS? &lt;br /&gt;
&lt;br /&gt;
Send your questions to  case(at)mindthebird.com&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-3080735899362417973?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/yWmP15nC4wA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/yWmP15nC4wA/firebird-case-studies-catalog.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/11/firebird-case-studies-catalog.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-3921534223731241106</guid><pubDate>Mon, 29 Nov 2010 06:20:00 +0000</pubDate><atom:updated>2010-11-29T09:20:38.029+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">corruption statistics</category><title>Vacations' corruptions</title><description>Every year we have numerous corruption requests after vacations. Unattended computer systems can reach their implementation limits or encounter hidden problems, like lack of space, HDD bad blocks, automatic updates, etc.&lt;br /&gt;
Firebird is a software too, and it has "popular" reasons to stop working while administrator enjoys roasted turkey.&lt;br /&gt;
Before vacations and after them we recommend to check the free space on HDD with database and HDD on backups, check the transaction markers state (gstat -h) for the gaps and limits and, if possible, perform full backup/restore cycle (with gbak -b/gbak -r).&lt;br /&gt;
These simple actions can save your database from "vacations' corruptions".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-3921534223731241106?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/g29WspD3MQY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/g29WspD3MQY/vacations-corruptions.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/11/vacations-corruptions.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-3140508487665706811</guid><pubDate>Tue, 19 Oct 2010 14:17:00 +0000</pubDate><atom:updated>2010-10-19T18:17:55.718+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">performance</category><category domain="http://www.blogger.com/atom/ns#">webinar</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">test</category><title>Firebird Performance Testing - presentation is available</title><description>Please take a look at presentation from Firebird Performance Testing webinar.&lt;br /&gt;
If you have any questions regarding tests, please feel free to ask them &lt;a href="mailto:test@ib-aid.com?subject=Performance"&gt;via email&lt;/a&gt; &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;div id="__ss_5489803" style="width: 425px;"&gt;&lt;strong style="display: block; margin: 12px 0pt 4px;"&gt;&lt;a href="http://www.slideshare.net/mindthebird/firebirdperformancetesting" title="Firebird.performance.testing"&gt;Firebird.performance.testing&lt;/a&gt;&lt;/strong&gt;&lt;object height="355" id="__sse5489803" width="425"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=firebird-performance-testing-101019090815-phpapp01&amp;amp;stripped_title=firebirdperformancetesting&amp;amp;userName=mindthebird" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed name="__sse5489803" src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=firebird-performance-testing-101019090815-phpapp01&amp;amp;stripped_title=firebirdperformancetesting&amp;amp;userName=mindthebird" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="padding: 5px 0pt 12px;"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/mindthebird"&gt;Mind TheFirebird&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-3140508487665706811?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/PyLc1rUkjH0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/PyLc1rUkjH0/firebird-performance-testing.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/10/firebird-performance-testing.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-8740340243357978226</guid><pubDate>Fri, 08 Oct 2010 07:31:00 +0000</pubDate><atom:updated>2010-10-08T11:31:46.501+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">France</category><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Firebird Day'2010 in France</title><description>October 1, 2010 - Firebird Day took place in Paris, France.&lt;br /&gt;
31 attendees and speakers:&lt;br /&gt;
&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Philippe Makowski, Firebird Foundation&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Thierry&amp;nbsp;Laborde (&lt;a href="http://www.blog.codegearfrance.com/"&gt;CodeGear&lt;/a&gt;)&amp;nbsp;&lt;/strong&gt;:&amp;nbsp;Delphi&amp;nbsp;and  Firebird.&lt;/li&gt;
&lt;li value="0"&gt;         &lt;div align="left"&gt;           &lt;strong&gt;Henri Gourvest (&lt;a href="http://www.progdigy.com/"&gt;progdigy.com&lt;/a&gt;)&lt;/strong&gt;&amp;nbsp;:&lt;br /&gt;
Unicode,  UIB, FB2.5 specifities in UIB. &lt;/div&gt;&lt;/li&gt;
&lt;li value="0"&gt;         &lt;div align="left"&gt;           &lt;strong&gt;Frédéric Guillien (&lt;a href="http://www.grizzlydev.com/"&gt;GrizzlyDev&lt;/a&gt;)&lt;/strong&gt; :&lt;br /&gt;
Maintenance  best practice. &lt;/div&gt;&lt;/li&gt;
&lt;li value="0"&gt;         &lt;div align="left"&gt;           &lt;strong&gt;Alexey Kovyazin&lt;/strong&gt; &lt;br /&gt;
Anti-corruption approach  for Firebird - ppt is here are &lt;a href="http://www.slideshare.net/ibsurgeon/firebird-anticorruption-approach"&gt;http://www.slideshare.net/ibsurgeon/firebird-anticorruption-approach&lt;/a&gt;.&lt;/div&gt;&lt;/li&gt;
&lt;li value="0"&gt;         &lt;div align="left"&gt;           &lt;strong&gt;Paul Reeves (IBPhoenix)&lt;/strong&gt; :&lt;br /&gt;
PHP  Framework&amp;nbsp;and Firebird. &lt;/div&gt;&lt;/li&gt;
&lt;li value="0"&gt;         &lt;div align="left"&gt;           &lt;strong&gt;Pierre Yagger&lt;/strong&gt;&amp;nbsp;:&lt;br /&gt;
Firebird and Ruby/Rails. &lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;Conference is ready to start&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TK7CKb9M-VI/AAAAAAAAAF8/wUeOSu4WRW4/s1600/DSC_1025.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://3.bp.blogspot.com/_96JgNg47bC8/TK7CKb9M-VI/AAAAAAAAAF8/wUeOSu4WRW4/s400/DSC_1025.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TK7CT-GmehI/AAAAAAAAAGA/dQXaicB58_U/s1600/DSC_1028.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://3.bp.blogspot.com/_96JgNg47bC8/TK7CT-GmehI/AAAAAAAAAGA/dQXaicB58_U/s400/DSC_1028.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&amp;nbsp;Philippe Makowski (is launching Firebird 2.5, so photo is too light :))&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TK7Cv8gN4QI/AAAAAAAAAGM/P3br6_bTk1Q/s1600/DSC_1035.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://4.bp.blogspot.com/_96JgNg47bC8/TK7Cv8gN4QI/AAAAAAAAAGM/P3br6_bTk1Q/s400/DSC_1035.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&amp;nbsp;&lt;strong&gt;Henri Gourvest (&lt;a href="http://www.progdigy.com/"&gt;progdigy.com&lt;/a&gt;)&lt;/strong&gt;&amp;nbsp;:&lt;br /&gt;
Unicode,  UIB, FB2.5 specifities in UIB&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TK7DAvcIdeI/AAAAAAAAAGU/fIVBWZCwrRc/s1600/DSC_1045.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://4.bp.blogspot.com/_96JgNg47bC8/TK7DAvcIdeI/AAAAAAAAAGU/fIVBWZCwrRc/s400/DSC_1045.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
Paul Reeves (IBPhoenix), Philippe Makowski and unknown person, preparing for the next session&amp;nbsp; (Firebird and PHP)&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TK7DZFQw0KI/AAAAAAAAAGg/mEHt_w5mk2c/s1600/DSC_1049.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://2.bp.blogspot.com/_96JgNg47bC8/TK7DZFQw0KI/AAAAAAAAAGg/mEHt_w5mk2c/s640/DSC_1049.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: left;"&gt;Some moment of the conference&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TK7Dq66sQsI/AAAAAAAAAGo/-QAlESbcoHQ/s1600/DSC_1052.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://2.bp.blogspot.com/_96JgNg47bC8/TK7Dq66sQsI/AAAAAAAAAGo/-QAlESbcoHQ/s640/DSC_1052.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Almost all people were until the end of conference - probably, presentations were good!&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TK7D0Jjp5ZI/AAAAAAAAAGs/pa20SCsJb4U/s1600/DSC_1056.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="427" src="http://2.bp.blogspot.com/_96JgNg47bC8/TK7D0Jjp5ZI/AAAAAAAAAGs/pa20SCsJb4U/s640/DSC_1056.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-8740340243357978226?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/LPzNIZaQBOs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/LPzNIZaQBOs/firebird-day2010-in-france.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_96JgNg47bC8/TK7CKb9M-VI/AAAAAAAAAF8/wUeOSu4WRW4/s72-c/DSC_1025.JPG" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/10/firebird-day2010-in-france.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-1400498501460301086</guid><pubDate>Tue, 05 Oct 2010 18:24:00 +0000</pubDate><atom:updated>2010-10-05T22:24:31.047+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">Russia</category><title>3d Russian Firebird Conference: Photos</title><description>September 29, 2010 - 3d Russian Firebird Conference. 114 people attended. Here are some photos &lt;br /&gt;
&lt;br /&gt;
Philippe Makowski and Dmitry Yemanov - coffee before sessions.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TKtiSnNEJ1I/AAAAAAAAADY/dT62SHqqgN8/s1600/DSC_0662.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://2.bp.blogspot.com/_96JgNg47bC8/TKtiSnNEJ1I/AAAAAAAAADY/dT62SHqqgN8/s640/DSC_0662.JPG" width="428" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&amp;nbsp;Sessions will start soon.&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
Philippe and Dmitry. &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TKtjLd9Sw6I/AAAAAAAAADw/lTf9QYH8r1E/s1600/DSC_0674.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="267" src="http://4.bp.blogspot.com/_96JgNg47bC8/TKtjLd9Sw6I/AAAAAAAAADw/lTf9QYH8r1E/s400/DSC_0674.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&amp;nbsp;Kirill Sinitsin from Ansoft, Phillipe Makowski and Dmitry Yemanov&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtjU7j0e9I/AAAAAAAAAD0/vtoa30CTHM8/s1600/DSC_0675.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtjU7j0e9I/AAAAAAAAAD0/vtoa30CTHM8/s640/DSC_0675.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Opening of conference &lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKtjeX5SJ3I/AAAAAAAAAD4/yUFenERFtd0/s1600/DSC_0676.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKtjeX5SJ3I/AAAAAAAAAD4/yUFenERFtd0/s640/DSC_0676.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
Phillipe's talk &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TKtjxfd_lmI/AAAAAAAAAEA/OsUBiWGkJEk/s1600/DSC_0682.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://4.bp.blogspot.com/_96JgNg47bC8/TKtjxfd_lmI/AAAAAAAAAEA/OsUBiWGkJEk/s640/DSC_0682.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtj79klvVI/AAAAAAAAAEE/Pa7jSk-9JKo/s1600/DSC_0683.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtj79klvVI/AAAAAAAAAEE/Pa7jSk-9JKo/s640/DSC_0683.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TKtkFWzTKqI/AAAAAAAAAEI/MGrF0HImSko/s1600/DSC_0688.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://2.bp.blogspot.com/_96JgNg47bC8/TKtkFWzTKqI/AAAAAAAAAEI/MGrF0HImSko/s640/DSC_0688.JPG" width="428" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKtkYhU8toI/AAAAAAAAAEQ/kvD0yREvwvE/s1600/DSC_0690.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="400" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKtkYhU8toI/AAAAAAAAAEQ/kvD0yREvwvE/s400/DSC_0690.JPG" width="267" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtkqWdE8AI/AAAAAAAAAEY/vuKb8Z1xlH4/s1600/DSC_0694.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="427" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtkqWdE8AI/AAAAAAAAAEY/vuKb8Z1xlH4/s640/DSC_0694.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&amp;nbsp;Alexey Kovyazin, Alex Peshkoff, Vlad Khorsun and Phillipe Makowski&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TKtk9Vz0XBI/AAAAAAAAAEg/1Es0Apn-bpw/s1600/DSC_0703.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://4.bp.blogspot.com/_96JgNg47bC8/TKtk9Vz0XBI/AAAAAAAAAEg/1Es0Apn-bpw/s640/DSC_0703.JPG" width="640" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Dmitry Yemanov started his presentation &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKtmeUwzTXI/AAAAAAAAAEo/bMP84o14VHo/s1600/DSC_0709.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="212" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKtmeUwzTXI/AAAAAAAAAEo/bMP84o14VHo/s320/DSC_0709.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Alexey Kovyazin's presentation &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtmoHsbcyI/AAAAAAAAAEs/QZARzmjoshU/s1600/DSC_0721.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtmoHsbcyI/AAAAAAAAAEs/QZARzmjoshU/s640/DSC_0721.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&amp;nbsp;Room is full&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TKtmxbt0jvI/AAAAAAAAAEw/zcRI3UrPoYs/s1600/DSC_0723.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="425" src="http://2.bp.blogspot.com/_96JgNg47bC8/TKtmxbt0jvI/AAAAAAAAAEw/zcRI3UrPoYs/s320/DSC_0723.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtm8bAEN2I/AAAAAAAAAE0/l2KZFTIHe90/s1600/DSC_0724.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtm8bAEN2I/AAAAAAAAAE0/l2KZFTIHe90/s640/DSC_0724.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtnFkaLKXI/AAAAAAAAAE4/DVxRNsC699c/s1600/DSC_0725.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtnFkaLKXI/AAAAAAAAAE4/DVxRNsC699c/s640/DSC_0725.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKtnPFub1VI/AAAAAAAAAE8/vSd0Q-oORmk/s1600/DSC_0733.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKtnPFub1VI/AAAAAAAAAE8/vSd0Q-oORmk/s640/DSC_0733.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TKtnYxkX6QI/AAAAAAAAAFA/Sf3sf2tcJ2E/s1600/DSC_0734.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://2.bp.blogspot.com/_96JgNg47bC8/TKtnYxkX6QI/AAAAAAAAAFA/Sf3sf2tcJ2E/s640/DSC_0734.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKtnhyXAk_I/AAAAAAAAAFE/k2NDLdBKAVA/s1600/DSC_0738.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKtnhyXAk_I/AAAAAAAAAFE/k2NDLdBKAVA/s320/DSC_0738.JPG" width="428" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Embarcadero session about Delphi&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtnq1j0abI/AAAAAAAAAFI/Nhq8unxw-X0/s1600/DSC_0740.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtnq1j0abI/AAAAAAAAAFI/Nhq8unxw-X0/s640/DSC_0740.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Alex Peshkoff's presentation &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/TKtn0I57_UI/AAAAAAAAAFM/UCIov6k3geE/s1600/DSC_0742.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://2.bp.blogspot.com/_96JgNg47bC8/TKtn0I57_UI/AAAAAAAAAFM/UCIov6k3geE/s640/DSC_0742.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TKtn86Du_gI/AAAAAAAAAFQ/IROgEmxvUd4/s1600/DSC_0743.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://4.bp.blogspot.com/_96JgNg47bC8/TKtn86Du_gI/AAAAAAAAAFQ/IROgEmxvUd4/s640/DSC_0743.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Another Embarcadero presentation &lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtoGtlUsLI/AAAAAAAAAFU/3D5lLo_rA4A/s1600/DSC_0744.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtoGtlUsLI/AAAAAAAAAFU/3D5lLo_rA4A/s640/DSC_0744.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtoQP2fnRI/AAAAAAAAAFY/0KRGCUm8zjc/s1600/DSC_0745.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtoQP2fnRI/AAAAAAAAAFY/0KRGCUm8zjc/s640/DSC_0745.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKtoYj7siMI/AAAAAAAAAFc/NxAiTYcB4Xg/s1600/DSC_0747.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKtoYj7siMI/AAAAAAAAAFc/NxAiTYcB4Xg/s640/DSC_0747.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Unique photo: Firebird and InterBase at the sofa: Dmitry Yemanov and Christine Normile&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtohN3DSrI/AAAAAAAAAFg/jg8fQg-CVdk/s1600/DSC_0748.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtohN3DSrI/AAAAAAAAAFg/jg8fQg-CVdk/s640/DSC_0748.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Presentation about &lt;a href="http://www.lensart.ru/"&gt;www.lensart.ru &lt;/a&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/TKtoqsGREFI/AAAAAAAAAFk/fqSNLwHzUxQ/s1600/DSC_0770.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="640" src="http://1.bp.blogspot.com/_96JgNg47bC8/TKtoqsGREFI/AAAAAAAAAFk/fqSNLwHzUxQ/s640/DSC_0770.JPG" width="428" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Round table in the end of conference - from left to the right - Dmitry Yemanov, Alexey Kovyazin, Christine Normile, Vlad Khorsun, Philippe Makowski.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/TKto8sJiRuI/AAAAAAAAAFs/ajQwIrQ0tak/s1600/DSC_0772.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="428" src="http://3.bp.blogspot.com/_96JgNg47bC8/TKto8sJiRuI/AAAAAAAAAFs/ajQwIrQ0tak/s640/DSC_0772.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;Alex Peshkoff, Vlad Khorsun, Philippe Makowski, Alexey Kovyazin&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/TKtlGjZOxAI/AAAAAAAAAEk/6S21UPM-xek/s1600/DSC_0704.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="427" src="http://4.bp.blogspot.com/_96JgNg47bC8/TKtlGjZOxAI/AAAAAAAAAEk/6S21UPM-xek/s640/DSC_0704.JPG" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-1400498501460301086?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/mydjX-wABZ4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/mydjX-wABZ4/3d-russian-firebird-conference-photos.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/_96JgNg47bC8/TKtiSnNEJ1I/AAAAAAAAADY/dT62SHqqgN8/s72-c/DSC_0662.JPG" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/10/3d-russian-firebird-conference-photos.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-7338588996235756085</guid><pubDate>Mon, 04 Oct 2010 11:34:00 +0000</pubDate><atom:updated>2010-10-04T15:34:17.528+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">release</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Firebird 2.5 Introduces New Audit Features and Improved Scalability</title><description>October 4, 2010. The Firebird Project today announces Firebird 2.5, the fifth and newest major release of its open source relational database management system. Enhancements in this new release are pitched at better serving the needs of businesses of any scale, from embedded device to enterprise resource planning solutions.&lt;br /&gt;
&lt;br /&gt;
Philippe Makowski, President of the non-profit Firebird Foundation observes that the Firebird 2.5 release is a very important step in Firebird's 10th anniversary year, not just for the Firebird Project but for the whole open-source world, too.&lt;br /&gt;
&lt;br /&gt;
"Today businesses all around the world are looking for mature, cost-effective solutions and Firebird 2.5 offers them a solution that is truly powerful and truly free", he noted.&lt;br /&gt;
&lt;br /&gt;
The mix of high performance, small footprint, supreme scalability, silent and simple installation and royalty-free deployment make Firebird a highly attractive choice for all types of software developers and vendors. Firebird deployments are well established around the globe, serving data to hundreds of thousands of business systems with hundreds of users and databases exceeding 300GB.&lt;br /&gt;
&lt;br /&gt;
Known Firebird installations number more than 2,000 each day, according to download statistics.&lt;br /&gt;
&lt;br /&gt;
"Many of our customers have Firebird databases with sizes from 200GB to 400GB and they keep growing", said Stewart Spink, CTO of Watermark Software. "The performance improvements in Firebird 2.5 will ensure that their future demands will be satisfied completely."&lt;br /&gt;
&lt;br /&gt;
Alexander Shaposhnikov, CIO of medical distributor Profitmed predicts that Firebird 2.5 will support the growth of Profitmed's business. "Currently we have a 65Gb database and 250 active users working 24x7. We intend to double both the size of the database and the number of users in two years and we have chosen Firebird 2.5 for this business-critical task."&lt;br /&gt;
&lt;br /&gt;
Firebird binaries are distributed for a variety of system and hardware platforms: Windows, Linux, MacOS, Solaris, HP-UX and more. Firebird runs on on x86, x64, PowerPC, Sparc and other hardware platforms, providing an easy migration mechanism between these diverse platforms.&lt;br /&gt;
&lt;br /&gt;
The V.2.5 release binaries ship for 32-bit and 64-bit Windows and Linux, with MacOSX x86 to follow. Other POSIX platform builds are likely to appear before the year is out, in response to demand.&lt;br /&gt;
New features of Firebird 2.5&lt;br /&gt;
&lt;br /&gt;
    * New SuperClassic Architecture  Firebird 2.5 introduces a new architecture, tagged "SuperClassic", to gain better leverage from multi-core and multi-CPU hardware environments and improve resource usage for systems with large numbers of users and huge databases.&lt;br /&gt;
&lt;br /&gt;
    * Audit  System audit tracing and user trace sessions via the Services API enable nearly real-time monitoring and analysis of everything going on in a database&lt;br /&gt;
&lt;br /&gt;
    * Cross-database queries  Firebird 2.5 opens the way for Firebird database instances to query one another and to exchange information&lt;br /&gt;
&lt;br /&gt;
    * Enhanced user management  User management becomes accessible and flexible through SQL requests submitted from user databases&lt;br /&gt;
&lt;br /&gt;
    * Other features include autonomous transactions within PSQL modules (stored procedures, triggers, SQL blocks), support for regular expressions as arguments in SQL using the SIMILAR TO predicate, asynchronous cancellation of connections, enhancements of monitoring capabilities and much more.&lt;br /&gt;
&lt;br /&gt;
Paul Beach, President and CEO of IBPhoenix, an organisation that offers professional services and contributes to Firebird development, considers the new security features and the impressive scaling capability of Firebird 2.5 will be welcomed by many existing Firebird users.&lt;br /&gt;
&lt;br /&gt;
"In particular, it will help those in the finance and health industries to meet the growing requirements of their businesses", he notes, "especially in pushing the limits of performance."&lt;br /&gt;
&lt;br /&gt;
David Wilder, CTO of Bas-X, welcomed the Firebird 2.5 release for its improved useability and flexibility. "It will enable our customers to turn over more transactions and run more concurrent users on the same hardware," he said.&lt;br /&gt;
&lt;br /&gt;
Pricing and Availability&lt;br /&gt;
&lt;br /&gt;
Firebird 2.5 is an open source database system that is available free of charge for any kind of usage, be it commercial, educational, non-profit or simply for private use. Both binary packages and the complete source code can be downloaded at no cost through the Firebird Project website for immediate installation. No registration or activation is required.&lt;br /&gt;
&lt;br /&gt;
About the Firebird Foundation&lt;br /&gt;
&lt;br /&gt;
The Firebird Foundation is a non-profit organization with the goal to support the development and growth of the Firebird relational database system. The Foundation was incorporated in 2002 and is currently supported by more than 300 active members, several of whom are also cash sponsors. It also accepts and manages donations of cash and resources from persons and organisations that are not regular members. The Foundation redistributes these funds as grants to some of the key workers in the Firebird Project. The Firebird Project has no other source of income.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-7338588996235756085?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/kErm_gfMcJA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/kErm_gfMcJA/firebird-25-introduces-new-audit.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/10/firebird-25-introduces-new-audit.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-5783408230591001034</guid><pubDate>Tue, 07 Sep 2010 17:03:00 +0000</pubDate><atom:updated>2010-09-07T21:05:50.209+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">best practices</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">worst practices</category><category domain="http://www.blogger.com/atom/ns#">Oracle</category><title>Oracle Worst Practices</title><description>It seems that database design problems are very common and do not depend on used database platform - every new generation of developers each 4-5 years repeats the same mistakes...&lt;br /&gt;
The presentation below is recommended for every database developer, regardless of the database being used. &lt;br /&gt;
My favourite slide is about "How many tables do you &lt;i&gt;really &lt;/i&gt;need? - Four at most!" :-))&lt;br /&gt;
&lt;br /&gt;
&lt;a title="View Oracle Database Worst Practices on Scribd" href="http://www.scribd.com/doc/7422356/Oracle-Database-Worst-Practices" style="margin: 12px auto 6px auto; font-family: Helvetica,Arial,Sans-serif; font-style: normal; font-variant: normal; font-weight: normal; font-size: 14px; line-height: normal; font-size-adjust: none; font-stretch: normal; -x-system-font: none; display: block; text-decoration: underline;"&gt;Oracle Database Worst Practices&lt;/a&gt; &lt;object id="doc_404549603792436" name="doc_404549603792436" height="500" width="100%" type="application/x-shockwave-flash" data="http://d1.scribdassets.com/ScribdViewer.swf" style="outline:none;" rel="media:presentation" resource="http://d1.scribdassets.com/ScribdViewer.swf?document_id=7422356&amp;access_key=key-1jt9h377ovwkl2zsc21l&amp;page=1&amp;viewMode=list" &gt; &lt;param name="movie" value="http://d1.scribdassets.com/ScribdViewer.swf"&gt;&lt;param name="wmode" value="opaque"&gt;&lt;param name="bgcolor" value="#ffffff"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowScriptAccess" value="always"&gt;&lt;param name="FlashVars" value="document_id=7422356&amp;access_key=key-1jt9h377ovwkl2zsc21l&amp;page=1&amp;viewMode=list"&gt;&lt;embed id="doc_404549603792436" name="doc_404549603792436" src="http://d1.scribdassets.com/ScribdViewer.swf?document_id=7422356&amp;access_key=key-1jt9h377ovwkl2zsc21l&amp;page=1&amp;viewMode=list" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="500" width="100%" wmode="opaque" bgcolor="#ffffff"&gt;&lt;/embed&gt; &lt;/object&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-5783408230591001034?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/MMUC30oHNGI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/MMUC30oHNGI/oracle-worst-practices.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/09/oracle-worst-practices.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-4003213998955669036</guid><pubDate>Mon, 06 Sep 2010 10:45:00 +0000</pubDate><atom:updated>2010-09-06T14:45:45.083+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">backup</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>The need for backups</title><description>&lt;h3&gt;&lt;span style="font-size: small;"&gt;&lt;b&gt;&lt;span style="font-weight: normal;"&gt;I've read the post at &lt;a href="http://successfulsoftware.net/2010/08/24/10-things-non-technical-users-dont-understand-about-your-software/"&gt;http://successfulsoftware.net&lt;/a&gt; about 10 things which &lt;/span&gt;&lt;/b&gt;&lt;span style="font-weight: normal;"&gt;non-technical users do not understand.&amp;nbsp; During our work with Firebird database recoveries we interact mostly with people considered as IT professionals - developers and system administrators, but we can confirm the absolute truth of the following&lt;/span&gt; words regarding backups:&lt;/span&gt;&lt;/h3&gt;&lt;h3&gt;&lt;span style="font-size: small;"&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/h3&gt;&lt;h3 style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;8. The need for backups&lt;/h3&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;Every few days I get an email from someone who has lost all their  data because they had a major hardware problem and no backups on a  separate device. Sometimes this is because they don’t even realize the  data is stored on their computer. You can mention &lt;a href="http://successfulsoftware.net/2008/02/04/your-harddrive-will-fail-its-just-a-question-of-when/"&gt;the  need for back-ups&lt;/a&gt; in your documentation and/or in the software, but  it is unlikely to make much difference. History shows that this is a  lesson most people have to learn the hard way (&lt;b&gt;techies included&lt;/b&gt;).  Mentioning it doesn’t hurt though and it might help to defuse an angry  users if you point it out to them after the event.&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;Consider this post as a small reminder that your Firebird database should have backups, and they should be done in the right way. &lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: Arial,Helvetica,sans-serif;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-4003213998955669036?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/e2LeV5LvoBU" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/e2LeV5LvoBU/need-for-backups.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>1</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/09/need-for-backups.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-3853298014153866923</guid><pubDate>Wed, 01 Sep 2010 05:24:00 +0000</pubDate><atom:updated>2010-09-01T09:34:05.513+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">restore</category><category domain="http://www.blogger.com/atom/ns#">backup</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">fbdataguard</category><title>How to increase Firebird backup and restore speed (up to 30%)</title><description>It seems that many Firebird developers and administrators are not aware about switch -se[rvice] for gbak.exe&lt;br /&gt;
The origin of this switch is in the fact that code for backup and restore can be invoked in Firebird twice - first as explicit external application (i.e., through gbak.exe) and, second, as a Services API call.&lt;br /&gt;
&lt;br /&gt;
Backup/restore through Services is faster than usual approach&amp;nbsp; - due to the bypassing of interprocess communication and, probably, due to some IO optimizations.&lt;br /&gt;
&lt;br /&gt;
To use Services instead of regular gbak.exe you need to add switch -se to the gbak command:&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;gbak -se service_mgr -b -g ...&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Try to run backup with your database with and without switch -se[rvice] and compare results. In our experience switch -se can increase backup and restore speed up to 30%.&lt;br /&gt;
Btw, our FBdataGuard uses Services API to run backup and restore, and many users find it faster than general gbak.exe. Now you know that it's not the magic&amp;nbsp; - just good knowledge of Firebird and its internals.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-3853298014153866923?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/yPY44QdrrMc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/yPY44QdrrMc/how-to-increase-firebird-backup-and.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>6</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/09/how-to-increase-firebird-backup-and.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-2092394381748339272</guid><pubDate>Mon, 30 Aug 2010 06:44:00 +0000</pubDate><atom:updated>2010-08-31T12:23:51.035+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">interbase</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>InterBase 2009 installer - say hello to Windows 3.1 again</title><description>&lt;div class="separator" style="clear: both; text-align: left;"&gt;It seems that InterBase development suffers from the lack of resources.  Recently I downloaded InterBase 2009 Developer Edition in order to install  it at new workstation, with intention to look at corrupted database from  customer, started to install it and saw this dialog: &lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_96JgNg47bC8/THtQZEabzyI/AAAAAAAAADI/BhmuQO4LsK8/s1600/interbase_install.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="246" src="http://1.bp.blogspot.com/_96JgNg47bC8/THtQZEabzyI/AAAAAAAAADI/BhmuQO4LsK8/s320/interbase_install.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Someone new it IT could not not even recognize where is this dialog from... it's from Windows 3.1. Installation is the first experience that new users have from InterBase and what they see? Old-styled dialogs indicate the level of attention from company to its product.&lt;br /&gt;
On other hand, localized and fast (and much smaller) Firebird installer at Windows looks much better and give very positive user experience, because opens source developers create products for own use too, not for the abstract customers. &lt;br /&gt;
Also, CodeGear in the installation location - IB2009 was published in August 2008, when Embarcadero already bought virtual CodeGear division from Borland, and there were at least 3 service packs and 1 hotfix after that.&lt;br /&gt;
It seems that there is nobody in Embarcadero who is responsible for the renovation of InterBase installer.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Update&lt;/b&gt;&lt;br /&gt;
&lt;b&gt;After this blog-post Sriram&lt;/b&gt;&lt;i&gt; &lt;/i&gt;&lt;b&gt;Balasubramanian&lt;/b&gt;&lt;b&gt; from Embarcadero contacted us and commented on branding issue:&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;i&gt;Thank you for the report. InterBase 2009 branding and name  specifications were set before the Embarcadero purchase timeline for  CodeGear. Thus the name still reflects C:/CodeGear/interbase/&lt;br /&gt;
&lt;br /&gt;
Since the installer does not get branding/naming changes in Service Pack releases, it still (unfortunately) reflects no change.&lt;/i&gt; &lt;i&gt;&lt;br /&gt;
&lt;br /&gt;
We have already made the branding changes in an upcoming release of InterBase, &lt;/i&gt; &lt;i&gt;&lt;a href="http://channel-e.embarcadero.com/index.php?option=com_jvideodirect&amp;amp;v=2BIc9syaWrknH&amp;amp;x=1" target="_blank"&gt;http://channel-e.embarcadero.com/index.php?option=com_jvideodirect&amp;amp;v=2BIc9syaWrknH&amp;amp;x=1&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If there are other installer specific input that you'd like to suggest, please post your comments to &lt;/i&gt;  &lt;i&gt;&lt;a href="http://forums.embarcadero.com/" target="_blank"&gt;http://forums.embarcadero.com&lt;/a&gt; and/or log a case in Quality Central for InterBase (at &lt;a href="http://qc.embarcadero.com/" target="_blank"&gt;http://qc.embarcadero.com&lt;/a&gt;).&lt;br /&gt;
&lt;br /&gt;
Thanks!&lt;/i&gt;  &lt;i&gt;&lt;br /&gt;
&lt;br /&gt;
Best wishes,&lt;br /&gt;
Sriram Balasubramanian&lt;br /&gt;
InterBase,&lt;br /&gt;
Embarcadero Technologies&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-2092394381748339272?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/YkRn9sgbaLw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/YkRn9sgbaLw/interbase-2009-installer-say-hello-to.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_96JgNg47bC8/THtQZEabzyI/AAAAAAAAADI/BhmuQO4LsK8/s72-c/interbase_install.png" height="72" width="72" /><thr:total>1</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/08/interbase-2009-installer-say-hello-to.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-3369313872653637600</guid><pubDate>Sun, 08 Aug 2010 12:01:00 +0000</pubDate><atom:updated>2010-08-08T16:01:16.611+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">Russia</category><title>3d Russian Firebird Conference</title><description>3d Russian Firebird Conference will take place in Moscow, September&lt;br /&gt;
29, 2010. The conference will be devoted to the Firebird new versions&lt;br /&gt;
and to best practices in maintenance and development, with special&lt;br /&gt;
focus on big Firebird databases.&lt;br /&gt;
&lt;br /&gt;
Special speakers at conference: Phillipe Makowski, President of&lt;br /&gt;
Firebird Foundation, Firebird developers team: Dmitry Yemanov, Vlad&lt;br /&gt;
Khorsun and Alex Peshkoff.&lt;br /&gt;
Registration (in Russian): &lt;a href="http://ibase.ru/conf2010/"&gt;http://ibase.ru/conf2010/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-3369313872653637600?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/jw5Pe6ucBv0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/jw5Pe6ucBv0/3d-russian-firebird-conference.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/08/3d-russian-firebird-conference.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-4543730964545234084</guid><pubDate>Sun, 25 Jul 2010 13:35:00 +0000</pubDate><atom:updated>2010-07-25T17:35:58.840+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">FDD</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">fbdataguard</category><title>Free FBDataGuard  for Firebird Developer Day participants</title><description>At FDD'2010 Dmitry Kuzmenko has presented 2 presentations - the is one about approach to maintain big databases (50-400Gb) in the right way and the second is about restore speed tests.&lt;br /&gt;
Among other thing Dmitry said that any participant who will send email request to &lt;b&gt;dataguard at ib-aid.com&lt;/b&gt; till 20-JUL-2010, will get this tool's 1 year license for free.&lt;br /&gt;
We just finished to process 108 requests and sent them all (check antispam folder if you did not get it).&lt;br /&gt;
&lt;br /&gt;
So, it is interesting to see that approximately 20% of attendees can think about right database maintenance and how to avoid corruption. Other 80% are welcome to our recovery service.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-4543730964545234084?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/4iO3Fl7EDQI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/4iO3Fl7EDQI/free-fbdataguard-for-firebird-developer.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/07/free-fbdataguard-for-firebird-developer.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-7168299147789861031</guid><pubDate>Mon, 12 Jul 2010 08:33:00 +0000</pubDate><atom:updated>2010-07-12T12:33:33.487+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">FDD</category><category domain="http://www.blogger.com/atom/ns#">recovery</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">Brazil</category><category domain="http://www.blogger.com/atom/ns#">ibsurgeon</category><title>7th Firebird Developers Days: Visit IBSurgeon's presentations</title><description>17th of July, Piracicaba, Brazil: The 7th Firebird Developers Day will take place in the UNIMEP university theatre. This is undoubtedly the biggest worlwide event devoted to Firebird - more that 600 people, dozen of speakers and lot of interest. &lt;br /&gt;
As you may knows, Brazil is the N1 country in terms of number of Firebird users (following with Germany, Russia and USA), and Firebird is the number 1 database in Brazil too.&lt;br /&gt;
This will be 4th time IBSurgeon sponsors and presents at FDD. This year Dmitry Kuzmenko will speak about big Firebird databases (you may remember that recently we did test with 1Terabyte Firebird database) and about speed of test restores.&lt;br /&gt;
Also at this event IBSurgeon will announce some serious changes in licensing policy, intended to encourage people to treat Firebird databases in more careful way.&lt;br /&gt;
We will follow the results of conference and post updates here.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-7168299147789861031?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/4V8eDu66ndg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/4V8eDu66ndg/7th-firebird-developers-days-visit.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/07/7th-firebird-developers-days-visit.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-992956500352748107</guid><pubDate>Mon, 26 Apr 2010 07:51:00 +0000</pubDate><atom:updated>2010-04-26T14:05:02.356+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">Ukraine</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">Dnepropetrovsk</category><title>The 1st Firebird Conference in Ukraine</title><description>At April 23, 2010, &lt;a href="http://www.grossbee.com/regform.php3"&gt;the first Firebird Conference in Ukraine&lt;/a&gt; took place. There were 90 people live and (average) 40 people online at this conference.&lt;br /&gt;
This is the first conference from the series of 10 events devoted to the 10th anniversary, it was organized by &lt;a href="http://www.grossbee.com/"&gt;Grossbe &lt;/a&gt;(Ukrainian vendor of Firebird-based open-source ERP).&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_96JgNg47bC8/S9VDL_w0SwI/AAAAAAAAACE/7ML9cFkBw_Y/s1600/IMG_2914.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_96JgNg47bC8/S9VDL_w0SwI/AAAAAAAAACE/7ML9cFkBw_Y/s320/IMG_2914.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&amp;nbsp;IBSurgeon was the sponsor of this conference, our CEO Dmitry Kuzmenko has presented &lt;a href="http://www.mindthebird.com/"&gt;MindTheBird!&lt;/a&gt; to the audience and also spoke about protection against database corruptions and overall approach for the right maintenance of important Firebird databases using general techniques and new version of IBSurgeon's Firebird DataGuard product.&lt;br /&gt;
&lt;br /&gt;
Firebird Core Developers Dmitry Yemanov, Vlad Khorsun and Alex Peshkoff presented the new features of Firebird, deep dive presentations devoted to the SQL enhancements, security improvements and other hot topics.&lt;br /&gt;
Definitely it was a great success for Firebird which confirmed the strong position of this true open source DBMS in Ukraine. We are sure that next year we'll meet again with Ukrainian Firebird developers and continue our success evolution with Firebird.&lt;br /&gt;
&lt;br /&gt;
Below you can see several pictures from the Firebird Conference in Ukraine.&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_96JgNg47bC8/S9VDV40R2wI/AAAAAAAAACU/2iN-YnHubsA/s1600/IMG_2912.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/_96JgNg47bC8/S9VDV40R2wI/AAAAAAAAACU/2iN-YnHubsA/s320/IMG_2912.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/ITzpht_AQkE&amp;hl=ru_RU&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/ITzpht_AQkE&amp;hl=ru_RU&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_96JgNg47bC8/S9VDRQA9nQI/AAAAAAAAACM/dS3Yn1A0MIQ/s1600/IMG_2911.jpg" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_96JgNg47bC8/S9VDRQA9nQI/AAAAAAAAACM/dS3Yn1A0MIQ/s320/IMG_2911.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-992956500352748107?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/RvBhTIouCeo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/RvBhTIouCeo/1st-firebird-conference-is-ukraine-is.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_96JgNg47bC8/S9VDL_w0SwI/AAAAAAAAACE/7ML9cFkBw_Y/s72-c/IMG_2914.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/04/1st-firebird-conference-is-ukraine-is.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-6224722945492401823</guid><pubDate>Mon, 08 Mar 2010 20:34:00 +0000</pubDate><atom:updated>2010-03-08T23:34:55.138+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">mindthebird</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>MindTheBird: How You Can Help Firebird 2.5 To Launch</title><description>&lt;div id="__ss_3368243" style="width: 425px;"&gt;&lt;strong style="display: block; margin: 12px 0pt 4px;"&gt;&lt;a href="http://www.slideshare.net/mindthebird/mindthebird-how-you-can-help-firebird-to-launch" title="MindTheBird: How You Can Help Firebird to Launch"&gt;MindTheBird: How You Can Help Firebird to Launch&lt;/a&gt;&lt;/strong&gt;&lt;object height="355" width="425"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=0whatismindthebird-100308141736-phpapp01&amp;amp;stripped_title=mindthebird-how-you-can-help-firebird-to-launch" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=0whatismindthebird-100308141736-phpapp01&amp;amp;stripped_title=mindthebird-how-you-can-help-firebird-to-launch" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="padding: 5px 0pt 12px;"&gt;View more &lt;a href="http://www.slideshare.net/"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/mindthebird"&gt;Mind TheFirebird&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-6224722945492401823?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/9QgX3csfIa4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/9QgX3csfIa4/mindthebird-how-you-can-help-firebird.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/03/mindthebird-how-you-can-help-firebird.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-6055383428338287387</guid><pubDate>Mon, 08 Mar 2010 18:07:00 +0000</pubDate><atom:updated>2010-09-05T23:21:26.957+04:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Why IBSurgeon supports Firebird?</title><description>Recently we have joined &lt;a href="http://www.mindthebird.com/"&gt;MindTheBird &lt;/a&gt;Campaign, and it's a good time to explain our attitude to Firebird.&lt;br /&gt;
&lt;br /&gt;
As you know, currently there are lot of big and small companies involved in open source support and development. Some big companies (like IBM or Oracle) use open-source as mass destruction weapon against competitors, and also split development and/or testing and (definitely!) marketing costs with open-source community.&lt;br /&gt;
&lt;br /&gt;
Some companies (like majority of Firebird Foundation members) support open source because they rely on them as part of their business - as platform or in other way.&lt;br /&gt;
&lt;br /&gt;
And I doubt that there is company that supports open source project as complete charity, without intention to use its code in this or that way. If you know such company - please refer to it, I'm interested to know.&lt;br /&gt;
&lt;br /&gt;
For IBSurgeon the answer for the question "why you support Firebird" is pretty obvious. Our main business is related with database recovery. Our statistics for last 8 years shows that there is a pretty&lt;b&gt; stable ratio&lt;/b&gt; between overall Firebird users and databases crashes. There were some peaks related with pre-release bugs but the baseline is rather stable and has slow growth tendency.&lt;br /&gt;
&lt;br /&gt;
If we will exclude peaks we can see for sure that corruptions are mostly caused by&lt;b&gt; lack of administration&lt;/b&gt; and &lt;b&gt;hardware failures&lt;/b&gt;. This is the part of nature - people make mistakes, hardware is being broken. So ratio is pretty predictable and will be predictable as human nature and hardware will be at the current level. &lt;br /&gt;
&lt;br /&gt;
So we can consider the whole Firebird user base as potential customers which will be converted to recovery solution consumers and, for serious enterprises, to consumers of our protection tools and services.&lt;br /&gt;
&lt;br /&gt;
Last years we saw amazing growth of Firebird, both in terms of users and in terms of installations (official Firebird installer for Windows has optional URL to notify Google Analytics about fresh install, and it shows more than 2000 Firebird installations every day and it grows over time!).&lt;br /&gt;
&lt;br /&gt;
So we see the great potential of Firebird growth, because proprietary databases have serious issues due to the increasing open-source adoption and, of course, due to tough economics.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-6055383428338287387?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/B8B9ZntWuoI" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/B8B9ZntWuoI/why-ibsurgeon-supports-firebird.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>1</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/03/why-ibsurgeon-supports-firebird.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-9096664819242174343</guid><pubDate>Wed, 24 Feb 2010 05:29:00 +0000</pubDate><atom:updated>2010-02-24T08:29:28.379+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">mindthebird</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>MindTheBird! is started</title><description>You may notice a nice banner at the left side of our blog with the "&lt;a href="http://www.mindthebird.com/"&gt;MindTheBird&lt;/a&gt;!" slogan.&lt;br /&gt;
It means that MindTheBird! campaign goes public.&lt;br /&gt;
&lt;br /&gt;
MindTheBird! is a Firebird community activation campaign to support Firebird 2.5 Launch.&lt;br /&gt;
&lt;br /&gt;
Firebird 2.5 release is very important event for Firebird, but we can turn it into even more valuable thing and use upcoming release of new version to gain attention from IT world.&lt;br /&gt;
&lt;br /&gt;
Join MindTheBird now: download MindTheBird materials and put Firebird 2.5 banner or embed presentation like you see below.&lt;br /&gt;
&lt;br /&gt;
&amp;nbsp;With this very small help from each Firebirder it's possible to gain significant attention from the other world.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;Now it is time to make the world to mind the bird!&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div id="__ss_3260046" style="text-align: left; width: 425px;"&gt;&lt;a href="http://www.slideshare.net/mindthebird/why-firebird-fact-for-decision-makers" style="display: block; font: 14px Helvetica,Arial,Sans-serif; margin: 12px 0pt 3px; text-decoration: underline;" title="Why Firebird? Facts for decision makers"&gt;Why Firebird? Facts for decision makers&lt;/a&gt;&lt;object height="355" style="margin: 0px;" width="425"&gt;&lt;param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=2firebirdtechnical-100223151527-phpapp01&amp;amp;stripped_title=why-firebird-fact-for-decision-makers" /&gt;&lt;param name="allowFullScreen" value="true"/&gt;&lt;param name="allowScriptAccess" value="always"/&gt;&lt;embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=2firebirdtechnical-100223151527-phpapp01&amp;amp;stripped_title=why-firebird-fact-for-decision-makers" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style="font-family: tahoma,arial; font-size: 11px; height: 26px; padding-top: 2px;"&gt;View more &lt;a href="http://www.slideshare.net/" style="text-decoration: underline;"&gt;presentations&lt;/a&gt; from &lt;a href="http://www.slideshare.net/mindthebird" style="text-decoration: underline;"&gt;mindthebird&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/9149095646638471343-9096664819242174343?l=firebirdsurgeon.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/FirebirdSurgeon/~4/sVeEgFsXAVs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/FirebirdSurgeon/~3/sVeEgFsXAVs/mindthebird-is-started.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total><feedburner:origLink>http://firebirdsurgeon.blogspot.com/2010/02/mindthebird-is-started.html</feedburner:origLink></item></channel></rss>

