<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-9149095646638471343</atom:id><lastBuildDate>Thu, 05 Sep 2024 05:21:28 +0000</lastBuildDate><category>FIrebird</category><category>conference</category><category>FDD</category><category>Russia</category><category>backup</category><category>fbdataguard</category><category>fbscanner release</category><category>indices</category><category>mindthebird</category><category>optimization</category><category>Brazil</category><category>CPUAffinity</category><category>Dnepropetrovsk</category><category>Evans Data Corp survey</category><category>Firebird DataGuard</category><category>France</category><category>IBAnalyst</category><category>Oracle</category><category>SQL</category><category>Ukraine</category><category>best practices</category><category>case studies</category><category>christmas corruptions</category><category>corruption statistics</category><category>fbscanner</category><category>firebird 2.5.1</category><category>firebird interbase differences</category><category>firebird optimizer</category><category>firebird test</category><category>fun firebird</category><category>hello ibsurgeon recovery</category><category>ibsurgeon</category><category>ibsurgeon whitepaper</category><category>interbase</category><category>interbase firebird magazine</category><category>multifile database</category><category>nbackup</category><category>performance</category><category>readiness</category><category>recovery</category><category>release</category><category>restore</category><category>shadow</category><category>short ppt ibsurgeon recovery offerings</category><category>sweep</category><category>test</category><category>webinar</category><category>worst practices</category><title>Firebird Surgeon</title><description></description><link>http://firebirdsurgeon.blogspot.com/</link><managingEditor>noreply@blogger.com (IBSurgeon)</managingEditor><generator>Blogger</generator><openSearch:totalResults>44</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-1742700948046928285</guid><pubDate>Thu, 16 Jan 2014 18:30:00 +0000</pubDate><atom:updated>2014-01-16T22:30:51.822+04:00</atom:updated><title>FBScanner 3.6.1 is released</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
New version of&amp;nbsp;&lt;a href=&quot;http://ib-aid.com/products/firebird_interbase/monitoring/FBScanner&quot; style=&quot;color: #0155a9;&quot;&gt;FBScanner (3.6.1)&lt;/a&gt;&amp;nbsp;is released. FBScanner is an unique tool to trace and audit Firebird (1.0 - 2.5) and InterBase (4.0 - XE3) SQL traffic (connections, transactions, queries), it&#39;s very efficient tool for performance optimization and SQL bug tracking.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
FBScanner works like a proxy, and enables transparent data capture and analysis:&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px; text-align: center;&quot;&gt;
&lt;img alt=&quot;FBScanner is Firebird performance optimization tool&quot; src=&quot;http://ib-aid.com/images/fbs_dedicated_setup.jpg&quot; /&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
FBScanner can be used for the following tasks:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 18px; list-style: square url(http://ib-aid.com/pieces/blue_arrow.gif); margin-left: 15px; padding-left: 0px;&quot;&gt;
&lt;li&gt;Find queries with bad performance (i.e., slow queries with high prepare and execute times, queries with bad plans)&lt;/li&gt;
&lt;li&gt;Track transactions usage&lt;/li&gt;
&lt;li&gt;Real-time view of connections, users and transactions (connections can be killed)&lt;/li&gt;
&lt;li&gt;Retrospective analysis of SQL traffic&lt;/li&gt;
&lt;li&gt;and more - see&amp;nbsp;&lt;a href=&quot;http://www.slideshare.net/ibsurgeon/fbscanner-ibsurgeons-tool-to-solve-all-types-of-performance-problems-with-firebird&quot; style=&quot;color: #0155a9;&quot;&gt;presentation here&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
FBScanner has 2 licensing options:&lt;/div&gt;
&lt;ul style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 18px; list-style: square url(http://ib-aid.com/pieces/blue_arrow.gif); margin-left: 15px; padding-left: 0px;&quot;&gt;
&lt;li&gt;&lt;b&gt;Per server&lt;/b&gt;&amp;nbsp;- FBScanner can be used on the single server or computer to track Firebird traffic.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Unlimited ISV subscription&lt;/b&gt;&amp;nbsp;- FBScanner can be installed on any number of computers during the 1 year for use with the specific software application from the single independent software vendor (ISV).&lt;/li&gt;
&lt;/ul&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
All users of FBScanner 3 already have FBScanner 3.6.1 in IBSurgeon Deploy Center.&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
User of FBScanner 2.x can upgrade to FBScanner 3.6.1 with 50% discount - please contact&amp;nbsp;&lt;b&gt;upgrade@ib-aid.com&lt;/b&gt;&lt;/div&gt;
&lt;br style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px;&quot; /&gt;&lt;br /&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
&lt;b&gt;Download now:&lt;/b&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
Demo version of FBScanner can be found here:&lt;br /&gt;&lt;a href=&quot;http://www.ib-aid.com/download/FBScannerTrial.zip&quot; style=&quot;color: #0155a9;&quot;&gt;FBScanner Demo version&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; padding: 0px;&quot;&gt;
Please look at the FBScanner User Guide to get more information about its capabilities:&lt;br /&gt;&lt;a href=&quot;http://www.ib-aid.com/download/docs/FBScanner3UserGuide.pdf&quot; style=&quot;color: #0155a9;&quot;&gt;FBScanner User Guide&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://firebirdsurgeon.blogspot.com/2014/01/fbscanner-361-is-released.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>8</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-4349748295343224173</guid><pubDate>Tue, 12 Nov 2013 19:57:00 +0000</pubDate><atom:updated>2013-11-12T23:57:26.719+04:00</atom:updated><title>Firebird Tour 2013: detailed schedule for seminar “All About Transactions”</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;h1&gt;
Firebird Tour 2013: seminar “All About Transactions”&lt;o:p&gt;&lt;/o:p&gt;&lt;/h1&gt;
&lt;div class=&quot;MsoNoSpacing&quot;&gt;
&lt;a href=&quot;http://www.firebirdsql.org/en/firebird-conference-tour-2013/&quot; target=&quot;_blank&quot;&gt;Siegburg, November 22, Kranz Park Hotel&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot;&gt;
&lt;a href=&quot;http://www.firebirdsql.org/en/firebird-conference-tour-2013/&quot; target=&quot;_blank&quot;&gt;Prague, November 25, Hotel Extol Inn&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;h2&gt;
Overview&lt;o:p&gt;&lt;/o:p&gt;&lt;/h2&gt;
&lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoNormalTable&quot; style=&quot;border-collapse: collapse; margin-left: 4.65pt; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 1184; width: 587px;&quot;&gt;
 &lt;tbody&gt;
&lt;tr style=&quot;height: 15.0pt; mso-yfti-firstrow: yes; mso-yfti-irow: 0;&quot;&gt;
  &lt;td style=&quot;border: solid windowtext 1.0pt; height: 15.0pt; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;b&gt;#&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;b&gt;Topic&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;b&gt;Speaker&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-left: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;b&gt;Time&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 45.0pt; mso-yfti-irow: 1;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
1&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Overview of Firebird development&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Vlad Khorsun&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
30&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 45.0pt; mso-yfti-irow: 2;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
2&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Overview of transactions concept and its parameters. &amp;nbsp;Examples of transactions parameters and their
  usage. &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Alexey Kovyazin/Pavel Cizar&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
&lt;span lang=&quot;RU&quot;&gt;45&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 45.0pt; mso-yfti-irow: 3;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
3&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Transaction in Firebird: peculiarities and special
  parameters.&amp;nbsp; Transaction inventory
  page, versions and how transactions work in multi-generation database.&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Dmitry Kuzmenko&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
&lt;span lang=&quot;RU&quot;&gt;60&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 15.0pt; mso-yfti-irow: 4;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Coffee-Break&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
15&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 60.0pt; mso-yfti-irow: 5;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 60.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
4&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 60.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Inside Firebird transactions: what happen inside engine during
  transactions’ start, commit, rollback. What is retaining, autocommit, how
  transactions work with GTT. Memory consumption for transactions processing.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 60.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Vlad Khorsun&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 60.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
60&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 41.25pt; mso-yfti-irow: 6;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 41.25pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
5&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 41.25pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Transactions interaction and best practices for application
  development. Conflicts between transactions.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 41.25pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Dmitry Kuzmenko&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 41.25pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
60&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 15.0pt; mso-yfti-irow: 7;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Lunch&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
60&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 15.0pt; mso-yfti-irow: 8;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
6&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Garbage collection mechanism and sweep in details&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Vlad Khorsun&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
&lt;span lang=&quot;RU&quot;&gt;45&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 30.0pt; mso-yfti-irow: 9;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 30.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
7&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 30.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Transactions management in various drivers (Delphi, .NET, Java,
  etc): parameters and approaches.&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 30.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Dmitry Kuzmenko/Jiri Cincura&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 30.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
&lt;span lang=&quot;RU&quot;&gt;45&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 15.0pt; mso-yfti-irow: 10;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Coffee-Break&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
15&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 45.0pt; mso-yfti-irow: 11;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
8&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Diagnosing transaction management problems: most prevalent
  problems, how to catch and fix them.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Alexey Kovyazin&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 45.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
&lt;span lang=&quot;RU&quot;&gt;60&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;tr style=&quot;height: 15.0pt; mso-yfti-irow: 12; mso-yfti-lastrow: yes;&quot;&gt;
  &lt;td style=&quot;border-top: none; border: solid windowtext 1.0pt; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 44.2pt;&quot; width=&quot;59&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
9&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 255.2pt;&quot; width=&quot;340&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
Round table&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 78.35pt;&quot; width=&quot;104&quot;&gt;
  &lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/td&gt;
  &lt;td style=&quot;border-bottom: solid windowtext 1.0pt; border-left: none; border-right: solid windowtext 1.0pt; border-top: none; height: 15.0pt; mso-border-bottom-alt: solid windowtext .5pt; mso-border-right-alt: solid windowtext .5pt; padding: 0cm 5.4pt 0cm 5.4pt; width: 62.45pt;&quot; width=&quot;83&quot;&gt;
  &lt;div align=&quot;right&quot; class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 0.0001pt; text-align: right;&quot;&gt;
45&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/td&gt;
 &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h2&gt;
Detailed plan&lt;o:p&gt;&lt;/o:p&gt;&lt;/h2&gt;
&lt;div class=&quot;MsoListParagraphCxSpFirst&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&amp;nbsp; &amp;nbsp;1.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Overview of Firebird
development&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;New features and details of
Firebird development, &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Plan for next releases&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&amp;nbsp; &amp;nbsp;2.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Overview of transactions concept
and its parameters. &amp;nbsp;Examples of transactions
parameters and their usage. &lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Historical overview of transactions: locking engines,
dirty read, why Firebird has only snapshot &lt;span lang=&quot;RU&quot;&gt;и&lt;/span&gt; read_committed&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Transaction as logical operation: bridge between
business logic and database implementation&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What is &lt;span lang=&quot;RU&quot;&gt;ACID&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Isolation levels: standard levels and Firebird
levels&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;e.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span lang=&quot;RU&quot;&gt;read
only\write&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;f.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span lang=&quot;RU&quot;&gt;wait &lt;/span&gt;and&lt;span lang=&quot;RU&quot;&gt; nowait&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;g.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Examples of transactions with various isolation
levels, read-only/write and wait/nowait, from the client point of view&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&amp;nbsp; &amp;nbsp;3.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Transaction in Firebird:
peculiarities and special parameters.&amp;nbsp;
Transaction inventory page, versions and how transactions work in
multi-generation database.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Full syntax of SET TRANSACTION and TPB
parameters&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Some undocumented parameters&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Who create transactions&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Application&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;ii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;System transaction (tx #0)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Garbage collector&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iv.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Autonomous transactions&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;v.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Triggers ON CONNECT\ON DISCONNECT&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Versioning basics&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;e.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;How versions are being created&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;f.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;States of transaction in Firebird (active,
committed, rolled back, limbo)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;g.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Visibility of record versions in transactions&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;h.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Key differences between Read Committed and Snapshot
&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Triggers for transactions start and stop&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;j.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Context variables at transaction’s level&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;k.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;GTT and read-only transactions&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&amp;nbsp; &amp;nbsp;4.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;!--[endif]--&gt;Inside Firebird
transactions: what happen inside engine during transactions’ start, commit,
rollback. &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What happens at
transactions’ start&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Global transaction markers (OAT, OST, OIT) and
their meaning&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;ii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Autosweep&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What happens at transaction commit&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;How &lt;span lang=&quot;RU&quot;&gt;DWF&lt;/span&gt;
works&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;ii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;DDL queries&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Dispatching events&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iv.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Flush of dirty pages&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;v.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span lang=&quot;RU&quot;&gt;TIP&lt;/span&gt;
processing&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What happens at rollback&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Standard rollback with cache flush&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;ii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Forces rollback without cache flush&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Rollback transactions with undo-log&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iv.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Rollback without undo-log&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What is retaining&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;e.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Auto-commit (does anybody know about it?)&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;f.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Managing memory for transactions&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Temporary BLOBs&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;ii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Undo-log&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;g.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Local TIP and related issues&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&amp;nbsp; &amp;nbsp;5.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Transactions interaction
and best practices for application development. Conflicts between transactions.&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Transactions interactions types&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Templates for transaction usage in application
development&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Scenarios breakdown: Readers and Readers,
Readers and Writers, Writers and Writers&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Best practices&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;i.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Dictionaries&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;ii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Splitting read and write transactions &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iii.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Locking record with empty Update&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;iv.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Locking with SELECT WITH LOCK&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;v.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Reports&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 108.0pt; mso-add-space: auto; mso-list: l0 level3 lfo1; mso-text-indent-alt: -9.0pt; text-indent: -108.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;vi.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Serialization: how to build effective queues &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&amp;nbsp; &amp;nbsp;6.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;!--[endif]--&gt;Garbage collection mechanism
and sweep in details &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Why we need sweep?&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;How sweep works&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Types of the sweep: cooperative, background,
background&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Differences between sweep and garbage collection&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;e.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Autosweep&lt;span lang=&quot;RU&quot;&gt;: &lt;/span&gt;pro and contras&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;f.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Examples of application design mistakes which lead
to excessive garbage&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&amp;nbsp; &amp;nbsp;7.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;!--[endif]--&gt;Transactions management in
various drivers (Delphi, .NET, Java, etc): parameters and approaches.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What are direct and non-direct client drivers?&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;BDE, dbExpress, ODBC, .Net&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span lang=&quot;RU&quot;&gt;IBX,
FIBPlus, FireDAC&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Transactions management in applications:
examples&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;e.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;How to manage transactions lifetime in various drivers&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;f.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;How to implement edit dialogs in the effective and
safe way&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;g.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Commit retaining &lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&lt;span lang=&quot;RU&quot;&gt;&amp;nbsp; &amp;nbsp;8.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Diagnosing transaction
management problems: most prevalent problems, how to catch and fix them.&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;a.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;What we can see at gstat -h&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;b.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;OIT, OST, OAT, NEXT&amp;nbsp; - their combinations and what they mean &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;c.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;When garbage collection does not work? &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;d.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Transaction markers dynamics analysis with IBTM.
Catching sweep moments.&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;e.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;How to determine quantity of garbage versions&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;f.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;How to find long transactions with MON$ tables&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;g.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Transactions monitoring with MON$ and TraceAPI.&lt;span lang=&quot;RU&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoListParagraphCxSpMiddle&quot; style=&quot;margin-left: 72.0pt; mso-add-space: auto; mso-list: l0 level2 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;h.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;Legacy applications: workarounds for error in
transactions management &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoListParagraphCxSpLast&quot; style=&quot;mso-list: l0 level1 lfo1; text-indent: -18.0pt;&quot;&gt;
&lt;!--[if !supportLists]--&gt;&amp;nbsp; &amp;nbsp;9.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;!--[endif]--&gt;Round table: questions and answers&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://firebirdsurgeon.blogspot.com/2013/11/firebird-tour-2013-detailed-schedule.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-8267208708467351280</guid><pubDate>Tue, 24 Sep 2013 14:58:00 +0000</pubDate><atom:updated>2013-09-24T18:58:09.303+04:00</atom:updated><title>Answers for 3 transactions questions</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
So, it&#39;s time for the answers.&lt;br /&gt;
&lt;br /&gt;
The question 1 is the easiest:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
1.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;In some transaction there were 3 inserts made. The third INSERT raises exception. Is it possible to commit this transaction?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ ] yes, [ ] no&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
Answer is Yes, of course. An ability to commit or rollback transaction does not depend on insert operations which were performed in the frame of transaction. Of course, usually application logic is built in the way to commit only successful set of operations, but it&#39;s not a rule.&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
The second question is a bit more tricky:&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.25in; text-indent: -0.25in;&quot;&gt;
2.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;In some table there were 10 records. 3 simultaneous transactions were started and then in each transaction 1 record was inserted. In transaction 3 query SELECT COUNT(*) FROM Table was executed. The result will be:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.5in;&quot;&gt;
[ ] 10, [ ] 11, [ ] 12, [ ] 13&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
In this question you need to take an account that transactions are not committed. As you know, all changes in the frames of non-committed transaction are visible only inside this transaction, so the answer will be 11.&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
The third question is devoted to the generators concept of Firebird engine.&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px;&quot;&gt;
3. &amp;nbsp;Initially we have generator with name id, its value is 10. We have simultaneous transactions A and B. In A executed gen_id(id,1), in B gen_id(id,1). Then A was commited and B was rollbacked. What value is in id?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ ] 10, [ ] 11, [ ]12&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;background-color: white; color: #222222; font-family: Arial, Tahoma, Helvetica, FreeSans, sans-serif; font-size: 13px; line-height: 18px; margin-left: 0.5in;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;Generators (or sequences) work outside the frames of transactions. It means that commit or rollback of transactions does not affect the resulted value - i.e., generator ID will be increased both in A and B, and correct answer is 12.&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;Did you answer all these questions correctly? I guess so, since they are very easy.&amp;nbsp;&lt;/span&gt;&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;There are more interesting topics related with transactions. For example, do you know that each database in Firebird has a limit of transactions which can be performed between backup/restore cycles? And, more interesting, that unused transactions occupy space in the database, which is released only after backup/restore, and there could be up to 700Mb of such space in the worst case?&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Calibri, sans-serif;&quot;&gt;&lt;span style=&quot;font-size: 15px; line-height: 17px;&quot;&gt;If you are interested, consider to visit &lt;a href=&quot;http://firebirdsql.org/en/firebird-conference-tour-2013/&quot; target=&quot;_blank&quot;&gt;Firebird 2013 Tour &amp;nbsp;seminar&lt;/a&gt; &quot;All About Transactions&quot; in Siegburg, Germany, November 22, 2013.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;text-align: left;&quot;&gt;
&lt;span style=&quot;font-family: Calibri, sans-serif; font-size: 11pt; line-height: 17px;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
</description><link>http://firebirdsurgeon.blogspot.com/2013/09/answers-for-3-transactions-questions.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-1156612714105397631</guid><pubDate>Mon, 23 Sep 2013 13:17:00 +0000</pubDate><atom:updated>2013-09-23T17:29:45.112+04:00</atom:updated><title>3 questions about transactions every Firebird developer should answer correctly</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
Hi All,&lt;br /&gt;
&lt;br /&gt;
As you probably know, Firebird Project will have a seminar, devoted to transactions topic, in Siegburg (Germany), November 22, 2013. More details: &lt;a href=&quot;http://firebirdsql.org/en/firebird-conference-tour-2013/&quot;&gt;http://firebirdsql.org/en/firebird-conference-tour-2013/&lt;/a&gt;&lt;br /&gt;
Many developers think that transactions are straightforward and easy thing to understand and use, so probably there is no reason to devote 1 day seminar to discover transactions mechanism in Firebird in great details. Is it so?&lt;br /&gt;
Here I offer 3 simple questions about transactions which every Firebird developer should answer. Please take a look and choose the correct answer:&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .25in; mso-list: l0 level1 lfo1; text-indent: -.25in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .25in; mso-list: l0 level1 lfo1; text-indent: -.25in;&quot;&gt;
1.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;In some
transaction there were 3 inserts made. The third INSERT raises exception. Is it
possible to commit this transaction?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot;&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [ ] yes, [ ] no&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .25in; mso-list: l0 level1 lfo1; text-indent: -.25in;&quot;&gt;
2.&lt;span style=&quot;font-size: 7pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
&lt;/span&gt;&lt;!--[endif]--&gt;In some
table there were 10 records. 3 simultaneous transactions were started and then in
each transaction 1 record was inserted. In transaction 3 query SELECT COUNT(*)
FROM Table was executed. The result will be:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .5in;&quot;&gt;
[ ] 10, [ ] 11, [ ] 12, [ ] 13&lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot;&gt;
3. &amp;nbsp;Initially we have generator with name id, its value is 10. We
have simultaneous transactions A and B. In A executed gen_id(id,1), in B
gen_id(id,1). Then A was commited and B was rollbacked. What value is in id?&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;o:p&gt;&lt;/o:p&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;span style=&quot;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 11.0pt; line-height: 115%; mso-ansi-language: EN-US; mso-ascii-theme-font: minor-latin; mso-bidi-font-family: &amp;quot;Times New Roman&amp;quot;; mso-bidi-language: AR-SA; mso-bidi-theme-font: minor-bidi; mso-fareast-font-family: Calibri; mso-fareast-language: EN-US; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [
] 10, [ ] 11, [ ]12&lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: .5in;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
So, take your time and choose correct answers. Tomorrow we&#39;ll consider the questions and their answers.&lt;/div&gt;
</description><link>http://firebirdsurgeon.blogspot.com/2013/09/3-questions-about-transactions-every.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-9149095646638471343.post-7845942397916415325</guid><pubDate>Wed, 11 Apr 2012 10:11:00 +0000</pubDate><atom:updated>2012-04-11T14:11:45.311+04:00</atom:updated><title>Update 1 for FBDataGuard 2.7</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;span style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;Update 1 for FBDataGuard 2.7 is available&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://www.ib-aid.com/dgupdates/FBDataGuardSetup.exe&quot; style=&quot;background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;for download&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;&amp;nbsp;(archive&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://www.ib-aid.com/dgupdates/dataguard27.zip&quot; style=&quot;background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;for Linux&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;,&amp;nbsp;&lt;/span&gt;&lt;a href=&quot;http://ib-aid.com/download/docs/FBDataGuard_User_Guide.pdf&quot; style=&quot;background-color: white; color: #0155a9; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;User Guide&lt;/a&gt;&lt;span style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;). It replaces the previous version of FBDataGuard 2.7. This update contains important stability improvements (for environments with more than 200 concurrent users) and several bugfixes.&amp;nbsp;&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot; /&gt;&lt;br style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot; /&gt;&lt;span style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;Please upgrade your FBDataGuard 2.7 installations as soon as possible. This is a minor upgrade, so instead of full reinstallation you can stop FBDataGuard 2.7 service, replace dataguard.jar (from new dataguard27.zip) and start it again.&amp;nbsp;&lt;/span&gt;&lt;br style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot; /&gt;&lt;br style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot; /&gt;&lt;span style=&quot;background-color: white; color: #4f4e4e; font-family: Arial, Helvetica; font-size: 13px; line-height: 15px; text-align: -webkit-auto;&quot;&gt;Do not hesitate to ask any questions: support@ib-aid.com.&lt;/span&gt;
&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2012/04/update-1-for-fbdataguard-27.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></item><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&#39;s free product</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;br /&gt;
&lt;table style=&quot;-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;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td&gt;&lt;br /&gt;
&lt;b&gt;IBSurgeon DBInfo&lt;/b&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;is designed to visualize internal structure&#39;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=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCZf1JrpHHuFBLCjZpCSAuKwb4E2UmewXjBzhKNXcanXdYkNur2fCD6IPIEMXQmJQViFcopmjAoIsNM3ecQlF3hihMOsZ8LyR3OnvYVqU9kzGd7MP5_YhHODM3FN8pS5B6NEx2KWB8uf1I/s1600/dbinfo.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCZf1JrpHHuFBLCjZpCSAuKwb4E2UmewXjBzhKNXcanXdYkNur2fCD6IPIEMXQmJQViFcopmjAoIsNM3ecQlF3hihMOsZ8LyR3OnvYVqU9kzGd7MP5_YhHODM3FN8pS5B6NEx2KWB8uf1I/s1600/dbinfo.jpg&quot; /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;h1 style=&quot;-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;&quot;&gt;

Frequiently Asked Questions&lt;/h1&gt;
&lt;h2 style=&quot;-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;&quot;&gt;

1. What is the purpose of DBInfo?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&gt;This tool allows you to&lt;/span&gt;&lt;br /&gt;
&lt;ul style=&quot;-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;&quot;&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=&quot;-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;&quot;&gt;

2. What InterBase and Firebird versions are supported?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&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=&quot;-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;&quot;&gt;

3. Do I need to have InterBase or Firebird server running?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

4. Can I check for database contents on remote server?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

5. May I use DBInfo if my database is on Linux (or other Unix)?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

6. Can DBInfo corrupt my database?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

7. May I check database contents while InterBase or Firebird is working with it?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

8. What is the purpose of the option &quot;Do not use Windows file cache&quot;?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

9. Why percentage of blob pages is marked by that color?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&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=&quot;-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;&quot;&gt;

10. What I can do if DBInfo found that my database is corrupted?&lt;/h2&gt;
&lt;br /&gt;
&lt;span style=&quot;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;&quot;&gt;The better way is to immediately check the database by gfix and&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://ib-aid.com/products/firebird_interbase/IBFirstAID-FBFirstAID&quot; style=&quot;-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;&quot;&gt;IBFirstAid Diagnostitian&lt;/a&gt;&lt;span style=&quot;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;&quot;&gt;, and send full log to&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;mailto:support@ib-aid.com?subject=DBInfo&quot; style=&quot;-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;&quot;&gt;support@ib-aid.com&lt;/a&gt;&lt;span style=&quot;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;&quot;&gt;. We will be able to help with&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://ib-aid.com/services/recovery&quot; style=&quot;-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;&quot;&gt;Database Repair Services&lt;/a&gt;&lt;span style=&quot;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;&quot;&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;or you can buy gull version of&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://ib-aid.com/products/firebird_interbase/IBFirstAID-FBFirstAID&quot; style=&quot;-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;&quot;&gt;FirstAID&lt;/a&gt;&lt;span style=&quot;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;&quot;&gt;.&lt;/span&gt;&lt;br /&gt;
&lt;h2 style=&quot;-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;&quot;&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=&quot;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;&quot;&gt;In this case we suggest you to use our&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;a href=&quot;http://ib-aid.com/products/firebird_interbase/monitoring/IBAnalyst&quot; style=&quot;-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;&quot;&gt;IBAnalyst&lt;/a&gt;&lt;span style=&quot;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;&quot;&gt;&lt;span class=&quot;Apple-converted-space&quot;&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;br /&gt;
&lt;table style=&quot;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;&quot;&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;</description><link>http://firebirdsurgeon.blogspot.com/2012/01/dbinfo-new-ibsurgeons-free-product.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjCZf1JrpHHuFBLCjZpCSAuKwb4E2UmewXjBzhKNXcanXdYkNur2fCD6IPIEMXQmJQViFcopmjAoIsNM3ecQlF3hihMOsZ8LyR3OnvYVqU9kzGd7MP5_YhHODM3FN8pS5B6NEx2KWB8uf1I/s72-c/dbinfo.jpg" height="72" width="72"/><thr:total>0</thr:total></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=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;
&lt;div style=&quot;-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;&quot;&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=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Originally Log Viewer was IBSurgeon&#39;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=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;a href=&quot;http://ib-aid.com/download/setup_ibsurgeon_logviewer.exe&quot; style=&quot;color: #0155a9;&quot;&gt;Download free version&lt;/a&gt;&lt;span class=&quot;Apple-converted-space&quot;&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;-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;&quot;&gt;
&lt;br /&gt;Install it and open server’s log (usually it&#39;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=&quot;Apple-converted-space&quot;&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;
&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiCSd-aURj-Qs-OcQRSrqz3SyTEjZNsoCt87pmEVKkYT0iy5UyzVJQxT9-VT3GuONFRHISseOEdoaCqEYyWm4rRx6X6MpqZQfHXJU1CkzpeBOG5pceDWk2oVVbQkqX8o5PKnCAAHxoa-vH/s1600/ibslogviewer.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;442&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiCSd-aURj-Qs-OcQRSrqz3SyTEjZNsoCt87pmEVKkYT0iy5UyzVJQxT9-VT3GuONFRHISseOEdoaCqEYyWm4rRx6X6MpqZQfHXJU1CkzpeBOG5pceDWk2oVVbQkqX8o5PKnCAAHxoa-vH/s640/ibslogviewer.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style=&quot;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;&quot;&gt;
&lt;span class=&quot;Apple-converted-space&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;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;&quot;&gt;
&lt;span class=&quot;Apple-converted-space&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style=&quot;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;&quot;&gt;
&lt;span class=&quot;Apple-converted-space&quot;&gt;Feel free to contact IBSurgeon Support (&lt;a href=&quot;mailto:support@ib-aid.com&quot;&gt;support@ib-aid.com&lt;/a&gt;) if you see suspicious messages in your logs. Don&#39;t forget to attach log to the message!&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2012/01/ibsurgeon-log-viewer-new-free-product.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjiCSd-aURj-Qs-OcQRSrqz3SyTEjZNsoCt87pmEVKkYT0iy5UyzVJQxT9-VT3GuONFRHISseOEdoaCqEYyWm4rRx6X6MpqZQfHXJU1CkzpeBOG5pceDWk2oVVbQkqX8o5PKnCAAHxoa-vH/s72-c/ibslogviewer.png" height="72" width="72"/><thr:total>0</thr:total></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=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;The Firebird Project invites all Firebird users and developers to  participate in the &lt;a _fcksavedurl=&quot;http://www.firebirdsql.org/en/firebird-conference-2011/&quot; href=&quot;http://www.firebirdsql.org/en/firebird-conference-2011/&quot;&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=&quot;http://www.ib-aid.com/&quot;&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=&quot;http://www.firebirdsql.org/en/firebird-conference-2011/&quot; href=&quot;http://www.firebirdsql.org/en/firebird-conference-2011/&quot;&gt;www.firebirdsql.org/en/firebird-conference-2011/&lt;/a&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2011/10/firebird-conference-2011-luxembourg.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;pre style=&quot;font-family: inherit;&quot; wrap=&quot;&quot;&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=&quot;font-family: inherit;&quot; wrap=&quot;&quot;&gt;For the full list of changes please refer to the Release Notes, Chapter 2 &quot;New in Firebird 2.5&quot;.&amp;nbsp;&lt;/pre&gt;&lt;pre style=&quot;font-family: inherit;&quot; wrap=&quot;&quot;&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=&quot;http://firebirdsql.org/en/firebird-2-5-1/&quot;&gt;http://firebirdsql.org/en/firebird-2-5-1/&lt;/a&gt;&lt;/pre&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2011/09/firebird-251-sub-release-is-available.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">sweep</category><title>Tip for Sweep</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&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&#39; 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=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&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&#39;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;</description><link>http://firebirdsurgeon.blogspot.com/2011/08/tip-for-sweep.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">CPUAffinity</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">multifile database</category><category domain="http://www.blogger.com/atom/ns#">nbackup</category><category domain="http://www.blogger.com/atom/ns#">shadow</category><category domain="http://www.blogger.com/atom/ns#">SQL</category><title>You DON&#39;T need CPUAffinity, nBackup, shadow and multifile databases</title><description>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: #e3f1fc; color: #333333; line-height: 18px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;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;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Right now at&amp;nbsp;&lt;a href=&quot;http://www.firebirdnew.org/&quot;&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=&quot;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;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;Some answers look like dangerous signals, especially for those who run big Firebird databases.&lt;/span&gt;&lt;br /&gt;
&lt;img alt=&quot;&quot; src=&quot;data:image/png;base64,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&quot; /&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt; &lt;/span&gt;&lt;/div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: #e3f1fc; color: #333333; font-family: &#39;Trebuchet MS&#39;,Georgia,Arial,serif; font-size: 12px; line-height: 18px;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: #e3f1fc;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div style=&quot;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;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-family: Arial,sans-serif; line-height: 24px;&quot;&gt;So, what&#39;s wrong with these answers?&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 12pt;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif; font-size: 12px; line-height: 24px;&quot;&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=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 24px;&quot;&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&#39;s fast, but, unlike the gbak, it does not check pages&#39; 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) &quot;backups&quot;. &amp;nbsp;Another danger is &quot;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=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 24px;&quot;&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=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;
&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;font-size: 12px; line-height: 24px;&quot;&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=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;b&gt;Summary&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&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=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;i&gt;More information:&lt;/i&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&quot;Firebird&#39;s Big Database&quot; presentation at slideshare:&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/ibsurgeon/firebirds-big-databases-in-english&quot;&gt;http://www.slideshare.net/ibsurgeon/firebirds-big-databases-in-english&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;font-size: 12px; line-height: 24px;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333; font-family: Arial,sans-serif;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: #e3f1fc;&quot;&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot; style=&quot;margin-bottom: 12pt;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;background-color: #e3f1fc;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot; style=&quot;color: #333333;&quot;&gt;&lt;span class=&quot;Apple-style-span&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2011/08/you-dont-need-cpuaffinity-nbackup.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">fbscanner</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">indices</category><category domain="http://www.blogger.com/atom/ns#">optimization</category><title>Firebird: how to find SQL queries which use bad index?</title><description>&lt;div class=&quot;MsoNormal&quot;&gt;&lt;div style=&quot;font-family: Times,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;In the first part of our optimization story (&quot;&lt;a href=&quot;http://firebirdsurgeon.blogspot.com/2011/07/how-to-ruin-firebird-performance-with.html&quot;&gt;How to ruin Firebird performance...&lt;/a&gt;&quot;) 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=&quot;font-family: Times,&amp;quot;Times New Roman&amp;quot;,serif;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&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=&quot;font-family: inherit;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: small;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;font-family: inherit;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;line-height: 115%;&quot;&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=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&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=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;line-height: 115%;&quot;&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=&quot;MsoNormal&quot; style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Calibri&amp;quot;,&amp;quot;sans-serif&amp;quot;; font-size: 11pt; line-height: 115%;&quot;&gt;&lt;span style=&quot;font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&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=&quot;MsoNormal&quot;&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=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;EN-US&quot;&gt;At first start LogAnalyzer will create necessary indices, it can take several minutes.&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTFro_9fklK22_svT4-O9ZSEqUDoMqNQo8aYh2JV-ogwbqKtGCli8Z2PxnGAJGTad-wCqnZjTNOXwTMQeCh4HVVhyphenhyphenIcHsjIBL9noTvDeIKzmBN2pZKDM9WZ-jSSUYky8Q3rBrafBBufNPr/s1600/server_load.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;449&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTFro_9fklK22_svT4-O9ZSEqUDoMqNQo8aYh2JV-ogwbqKtGCli8Z2PxnGAJGTad-wCqnZjTNOXwTMQeCh4HVVhyphenhyphenIcHsjIBL9noTvDeIKzmBN2pZKDM9WZ-jSSUYky8Q3rBrafBBufNPr/s640/server_load.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBFaF65RQ3rVo44G-0aPABoGRZEXIOQk37J-W8J4ARevPJ7p3JBREQBVD8OmNeNclhGx4YrnSSyCPFtIIKhSahAuQFw0rrVOLspOwX93Z6GhqGuuSI9WbBi_oygfc94wapW0P8omFmzdr9/s1600/server_load2.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBFaF65RQ3rVo44G-0aPABoGRZEXIOQk37J-W8J4ARevPJ7p3JBREQBVD8OmNeNclhGx4YrnSSyCPFtIIKhSahAuQFw0rrVOLspOwX93Z6GhqGuuSI9WbBi_oygfc94wapW0P8omFmzdr9/s1600/server_load2.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;It will show you tab “All statements”, where you can browse SQL queries&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhalk8IcW0UX_m2-zsVZeo-2pr_gLNuiA_wTT-n9SrVXjBRuXV6ExHMNZYBBQsi906BJzo3Pl4uLkuWVODm1PAGZsCktYRvuvcYW3uLVO9lVJFhIcTawtGIpLvA24ArNOwtucKW-igh_XjA/s1600/all_statements.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;204&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhalk8IcW0UX_m2-zsVZeo-2pr_gLNuiA_wTT-n9SrVXjBRuXV6ExHMNZYBBQsi906BJzo3Pl4uLkuWVODm1PAGZsCktYRvuvcYW3uLVO9lVJFhIcTawtGIpLvA24ArNOwtucKW-igh_XjA/s640/all_statements.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinOhqQ1O-rh985pqnDbuFXV5h9ABbr9kLXG4EMD-M8vOBc3RD-x_EkkCJ_jlZUGNx2nA3xPk6scdRtde2zRXs96yzjc7RQ78_fRd2_1cj-IghnvvhB8FvPcy-k4AM5Omz_sRhcePyEeLVC/s1600/query_details.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;488&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEinOhqQ1O-rh985pqnDbuFXV5h9ABbr9kLXG4EMD-M8vOBc3RD-x_EkkCJ_jlZUGNx2nA3xPk6scdRtde2zRXs96yzjc7RQ78_fRd2_1cj-IghnvvhB8FvPcy-k4AM5Omz_sRhcePyEeLVC/s640/query_details.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;LogAnalyzer marks bold queries in the same transaction:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXsefRnhQT5oTizo_w094Pt8rHnUUOh5d55y9vbiBKcNjvqY-qHDx4AcNszzChv5i-XaZJrlMD5f9UzjBz5BXhxsUMyMlghmqeH7AsxeRERlo1_nBTD5PKh_H9ixVYzV2PYxsR9lk95TjF/s1600/same_transaction.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXsefRnhQT5oTizo_w094Pt8rHnUUOh5d55y9vbiBKcNjvqY-qHDx4AcNszzChv5i-XaZJrlMD5f9UzjBz5BXhxsUMyMlghmqeH7AsxeRERlo1_nBTD5PKh_H9ixVYzV2PYxsR9lk95TjF/s1600/same_transaction.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;You can sort queries and, for example, find query with the longest execution time:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGSoRQq-P2EulV0hiiM7PC5zMHWkhrHws3r40-kw_sqxjRsKhb5iVpMrLS38t53b52OnyfH9t-njg2iR86p2zggCjuL6NbF50ZYu0Hv6tqyoU5lnl65D02J-joxjXksY_A5gZfq8NsK8lo/s1600/sort_queries.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGSoRQq-P2EulV0hiiM7PC5zMHWkhrHws3r40-kw_sqxjRsKhb5iVpMrLS38t53b52OnyfH9t-njg2iR86p2zggCjuL6NbF50ZYu0Hv6tqyoU5lnl65D02J-joxjXksY_A5gZfq8NsK8lo/s1600/sort_queries.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;To know more about this query - double-click on it and see more details&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo-4QULDLWKyb4sgXNkl3POkDUf1EmvUR5dC0jVj3NaEHFlgmOXix8HsWbV2ApSOb7dbzLk8plKHYKjvgHUrGFEmZlnRVTQwtLQVLcqyyppXRplWGKNgkbLFgaxMcv5K_KWESag0SKb6LD/s1600/query_details.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;488&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgo-4QULDLWKyb4sgXNkl3POkDUf1EmvUR5dC0jVj3NaEHFlgmOXix8HsWbV2ApSOb7dbzLk8plKHYKjvgHUrGFEmZlnRVTQwtLQVLcqyyppXRplWGKNgkbLFgaxMcv5K_KWESag0SKb6LD/s640/query_details.png&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;i&gt;More information about FBScanner is available in &quot;&lt;a href=&quot;http://www.ib-aid.com/download/docs/FBScanner3UserGuide.pdf&quot;&gt;FBScanner User Guide&lt;/a&gt;&quot;.&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;</description><link>http://firebirdsurgeon.blogspot.com/2011/07/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="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTFro_9fklK22_svT4-O9ZSEqUDoMqNQo8aYh2JV-ogwbqKtGCli8Z2PxnGAJGTad-wCqnZjTNOXwTMQeCh4HVVhyphenhyphenIcHsjIBL9noTvDeIKzmBN2pZKDM9WZ-jSSUYky8Q3rBrafBBufNPr/s72-c/server_load.png" height="72" width="72"/><thr:total>0</thr:total></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#">indices</category><category domain="http://www.blogger.com/atom/ns#">optimization</category><title>How to ruin Firebird performance with bad indices</title><description>&lt;h1&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/h1&gt;&lt;h3&gt;&lt;span lang=&quot;EN-US&quot;&gt;Abstract&lt;/span&gt;&lt;/h3&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;This short article shows by example how bad index can affect Firebird database performance. &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;b&gt;Test database&lt;/b&gt; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;Imagine you have simple Firebird database: &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;CREATE DATABASE “E:\TESTFB25INDEX.FDB” USER “SYSDBA” PASSWORD “masterkey”;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;CREATE TABLE TABLEIND1 (&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; MALEORFEMALE&amp;nbsp; SMALLINT&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;);&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;CREATE GENERATOR G1;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;SET TERM ^ ;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;create or alter procedure INS1MLN&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;returns (&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; INSERTED_CNT integer)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;as&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;BEGIN&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;inserted_cnt = 0;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;WHILE (inserted_cnt &amp;lt;1000000) DO&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;BEGIN&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;&amp;nbsp;Insert into tableind1(i1, name, maleorfemale) values(gen_id(g1,1), &#39;TEST name&#39;, (:inserted_cnt - (:inserted_cnt/2)*2));&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;&amp;nbsp;inserted_cnt=inserted_cnt+1;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;END&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;suspend;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;END^&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;SET TERM ; ^&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;GRANT INSERT ON TABLEIND1 TO PROCEDURE INS1MLN;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;GRANT EXECUTE ON PROCEDURE INS1MLN TO SYSDBA;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;COMMIT;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;For some reason you need:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: 36pt; text-indent: -18pt;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font: 7pt &amp;quot;Times New Roman&amp;quot;;&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=&quot;EN-US&quot;&gt;insert 1 million records&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: 36pt; text-indent: -18pt;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font: 7pt &amp;quot;Times New Roman&amp;quot;;&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=&quot;EN-US&quot;&gt;update all these records&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: 36pt; text-indent: -18pt;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font: 7pt &amp;quot;Times New Roman&amp;quot;;&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=&quot;EN-US&quot;&gt;delete all records&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot; style=&quot;margin-left: 36pt; text-indent: -18pt;&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: Symbol;&quot;&gt;·&lt;span style=&quot;font: 7pt &amp;quot;Times New Roman&amp;quot;;&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=&quot;EN-US&quot;&gt;run SELECT count(*) from this database.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;set stat on; &amp;nbsp;/*show statistics*/&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;select * from ins1mln; &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;update tableind1 SET MALEORFEMALE = 3;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;delete from tableind1;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;select count(*) from tableind1;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;and store result for future analysis.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 9pt;&quot;&gt;CREATE INDEX TABLEIND1_IDX1 ON TABLEIND1 (MALEORFEMALE); &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;As you can see, we insert to this column only 0 or 1 integer values.&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;Then we repeat the script with this index and compare results.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;Results are in the following table:&lt;/span&gt;&lt;/div&gt;&lt;table border=&quot;1&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;MsoTableGrid&quot; style=&quot;border-collapse: collapse; border: medium none;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;   &lt;td style=&quot;border: 1pt solid windowtext; padding: 0cm 5.4pt; width: 239.25pt;&quot; valign=&quot;top&quot; width=&quot;319&quot;&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;Without index for MALEORFEMAIL&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;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;&quot; valign=&quot;top&quot; width=&quot;319&quot;&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;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;&quot; valign=&quot;top&quot; width=&quot;319&quot;&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; set stat on; /*show statistics*/&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&lt;b&gt;&amp;gt;   select * from ins1mln&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;INSERTED_CNT&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   1000000&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 10487216&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = 80560&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 12569996&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;13.33&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 0&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 18756&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 7833503&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&lt;b&gt;&amp;gt;   update tableind1 SET MALEORFEMALE = 3&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 76551788&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = 66064572&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 111442520&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;15.04&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 16166&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 15852&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 6032307&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; &lt;b&gt;delete   from tableind1;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 76550240&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = -1548&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 111442520&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;3.27&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 16147&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 16006&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 5032277&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; &lt;b&gt;select   count(*) from tableind1&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   COUNT&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 76552064&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = 1824&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 111442520&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;1.35&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 16021&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 1791&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 2032278&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;   &lt;td style=&quot;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;&quot; valign=&quot;top&quot; width=&quot;319&quot;&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; set stat on; /*show statistics*/&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; &lt;b&gt;select   * from ins1mln&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;INSERTED_CNT&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   1000000&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 10484140&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = 75524&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 12569996&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;23.94&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 1&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 23942&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 11459599&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; &lt;b&gt;update   tableind1 SET MALEORFEMALE = 3;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 76548712&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = 66064572&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 111439444&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;29.30&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 16167&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 19492&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 10035948&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; &lt;b&gt;delete   from tableind1;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 76547164&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = -1548&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 111439444&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;3.41&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 16147&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 15967&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 5032277&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;SQL&amp;gt; &lt;b&gt;select   count(*) from tableind1&lt;/b&gt;;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;   COUNT&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;============&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Current memory = 76548988&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Delta memory = 1824&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Max memory = 111439444&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Elapsed time= &lt;b&gt;0.69&lt;/b&gt; sec&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Buffers = 2048&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Reads = 16021&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Writes 1901&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-size: 9pt;&quot;&gt;Fetches = 2032278&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt; &lt;/span&gt;&lt;/div&gt;&lt;/td&gt;  &lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;To gather statistics, we run the following command:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt; line-height: 115%;&quot;&gt;gstat -r e:\testfb25index.fdb &amp;gt; e:\teststat.txt&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;TABLEIND1 (128)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Primary pointer page: 166, Index root page: 167&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Average record length: 0.00, total records: 1000000&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fill distribution:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20 - 39% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40 - 59% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 60 - 79% = 0&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 80 - 99% = 16129&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Index RDB$PRIMARY1 (0)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fill distribution:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Index TABLEIND1_IDX1 (1)&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Fill distribution:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;; font-size: 10pt;&quot;&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=&quot;EN-US&quot; style=&quot;font-size: 10pt;&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;To understand the meaning of shown numbers and percentage values, we can use &lt;a href=&quot;http://www.ib-aid.com/products/firebird_interbase/monitoring/IBAnalyst&quot;&gt;IBAnalyst tool&lt;/a&gt;, which offers visual interpretation of database statistics:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIsrEIFR-H8DOCiXobQO_BOIAk3yhzxbWjIwhzkx776sJFa7RN-_BOUWKOb3FpGxEFQUdJKVT2rPgUW0aiv75DWSewYBzvzX6pHQ9BuENRRpAEkE4PhuM0ZlB0WN3ndPh99D998VZxlOiO/s1600/simple_stat.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIsrEIFR-H8DOCiXobQO_BOIAk3yhzxbWjIwhzkx776sJFa7RN-_BOUWKOb3FpGxEFQUdJKVT2rPgUW0aiv75DWSewYBzvzX6pHQ9BuENRRpAEkE4PhuM0ZlB0WN3ndPh99D998VZxlOiO/s1600/simple_stat.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNormal&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;By clicking Reports/View recommendations we can find the appropriate explanation for this index:&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;Bad indices count: 1.&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;By `bad` we name indices with many duplicate keys (90% of all keys) &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;keys slowdown garbage collection - MaxEquals here is % of max groups &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;of keys having equal values. Index search for such an index is not &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;efficient. You can drop such indices (if they are not on FK &lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&quot;&gt;constraints).&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot; style=&quot;font-family: &amp;quot;Courier New&amp;quot;;&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=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhES7lAhvuw16gcD87qRBSwiu9oaPEzuL8j3mPHootgV16-yPY-361HaMeY9WrH2DhT5KGxAle5IBxBtjR3BVjptBNMRErQGeupcg8s_phzG9KsEDe0pEEc_XU3BGJK-Qxx7V1IljNBCb4m/s1600/production_stats.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhES7lAhvuw16gcD87qRBSwiu9oaPEzuL8j3mPHootgV16-yPY-361HaMeY9WrH2DhT5KGxAle5IBxBtjR3BVjptBNMRErQGeupcg8s_phzG9KsEDe0pEEc_XU3BGJK-Qxx7V1IljNBCb4m/s1600/production_stats.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;MsoNoSpacing&quot;&gt;&lt;span lang=&quot;EN-US&quot;&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=&quot;EN-US&quot;&gt;The answer is in the &lt;a href=&quot;http://firebirdsurgeon.blogspot.com/2011/07/firebird-how-to-find-sql-queries-which.html&quot;&gt;next episode&lt;/a&gt; of our Optimization series of articles.&lt;/span&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2011/07/how-to-ruin-firebird-performance-with.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhIsrEIFR-H8DOCiXobQO_BOIAk3yhzxbWjIwhzkx776sJFa7RN-_BOUWKOb3FpGxEFQUdJKVT2rPgUW0aiv75DWSewYBzvzX6pHQ9BuENRRpAEkE4PhuM0ZlB0WN3ndPh99D998VZxlOiO/s72-c/simple_stat.png" height="72" width="72"/><thr:total>0</thr:total></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&#39;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=&quot;http://www.google.com/url?sa=D&amp;amp;q=www.firebirdsql.org&amp;amp;usg=AFQjCNFGpFF3ioItJgN43w77C8FU5yMYxg&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&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&#39;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=&quot;http://www.mindthebird.com/docs/firebird_case_study_template.doc&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&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=&quot;http://www.google.com/url?sa=D&amp;amp;q=www.mindthebird.com/benefits.html&amp;amp;usg=AFQjCNEWktKk3UVeQfl1ZKhlFgIMsOidRQ&quot; rel=&quot;nofollow&quot; target=&quot;_blank&quot;&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</description><link>http://firebirdsurgeon.blogspot.com/2010/11/firebird-case-studies-catalog.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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&#39; 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 &quot;popular&quot; 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 &quot;vacations&#39; corruptions&quot;.</description><link>http://firebirdsurgeon.blogspot.com/2010/11/vacations-corruptions.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">performance</category><category domain="http://www.blogger.com/atom/ns#">test</category><category domain="http://www.blogger.com/atom/ns#">webinar</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=&quot;mailto:test@ib-aid.com?subject=Performance&quot;&gt;via email&lt;/a&gt; &lt;br /&gt;
&amp;nbsp; &lt;br /&gt;
&lt;br /&gt;
&lt;div id=&quot;__ss_5489803&quot; style=&quot;width: 425px;&quot;&gt;&lt;strong style=&quot;display: block; margin: 12px 0pt 4px;&quot;&gt;&lt;a href=&quot;http://www.slideshare.net/mindthebird/firebirdperformancetesting&quot; title=&quot;Firebird.performance.testing&quot;&gt;Firebird.performance.testing&lt;/a&gt;&lt;/strong&gt;&lt;object height=&quot;355&quot; id=&quot;__sse5489803&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=firebird-performance-testing-101019090815-phpapp01&amp;amp;stripped_title=firebirdperformancetesting&amp;amp;userName=mindthebird&quot; /&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;/&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;/&gt;&lt;embed name=&quot;__sse5489803&quot; src=&quot;http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=firebird-performance-testing-101019090815-phpapp01&amp;amp;stripped_title=firebirdperformancetesting&amp;amp;userName=mindthebird&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;355&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;div style=&quot;padding: 5px 0pt 12px;&quot;&gt;View more &lt;a href=&quot;http://www.slideshare.net/&quot;&gt;presentations&lt;/a&gt; from &lt;a href=&quot;http://www.slideshare.net/mindthebird&quot;&gt;Mind TheFirebird&lt;/a&gt;.&lt;/div&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2010/10/firebird-performance-testing.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">conference</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">France</category><title>Firebird Day&#39;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=&quot;http://www.blog.codegearfrance.com/&quot;&gt;CodeGear&lt;/a&gt;)&amp;nbsp;&lt;/strong&gt;:&amp;nbsp;Delphi&amp;nbsp;and  Firebird.&lt;/li&gt;
&lt;li value=&quot;0&quot;&gt;         &lt;div align=&quot;left&quot;&gt;           &lt;strong&gt;Henri Gourvest (&lt;a href=&quot;http://www.progdigy.com/&quot;&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=&quot;0&quot;&gt;         &lt;div align=&quot;left&quot;&gt;           &lt;strong&gt;Frédéric Guillien (&lt;a href=&quot;http://www.grizzlydev.com/&quot;&gt;GrizzlyDev&lt;/a&gt;)&lt;/strong&gt; :&lt;br /&gt;
Maintenance  best practice. &lt;/div&gt;&lt;/li&gt;
&lt;li value=&quot;0&quot;&gt;         &lt;div align=&quot;left&quot;&gt;           &lt;strong&gt;Alexey Kovyazin&lt;/strong&gt; &lt;br /&gt;
Anti-corruption approach  for Firebird - ppt is here are &lt;a href=&quot;http://www.slideshare.net/ibsurgeon/firebird-anticorruption-approach&quot;&gt;http://www.slideshare.net/ibsurgeon/firebird-anticorruption-approach&lt;/a&gt;.&lt;/div&gt;&lt;/li&gt;
&lt;li value=&quot;0&quot;&gt;         &lt;div align=&quot;left&quot;&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=&quot;0&quot;&gt;         &lt;div align=&quot;left&quot;&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhT8-wpPjqnPg5h0UhT-sCUU6UtQ5hjpPUoNu2IVybWxJvECGJaJdYalLIesmx0InjkqxiRwxh8Zh3fGdqiwX0W2m2UJPkxhaTycIJjGgJ0k2IZw_Mg1blOKtF57mrltJHeo0CEJigsBBsj/s1600/DSC_1025.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhT8-wpPjqnPg5h0UhT-sCUU6UtQ5hjpPUoNu2IVybWxJvECGJaJdYalLIesmx0InjkqxiRwxh8Zh3fGdqiwX0W2m2UJPkxhaTycIJjGgJ0k2IZw_Mg1blOKtF57mrltJHeo0CEJigsBBsj/s400/DSC_1025.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivYAws8zCy4PyPd4n6qicz_0X4asBDmuyPjVJeZj9IIHrwfUkA7CmRwR1dXsaQETCmIZRv6eNOS4QJXny-LSqULeNvgTSlogLYbyckcy40Z_X6AU0WhlOE40rQHl7cFqEkRUkp_MdWKQdx/s1600/DSC_1028.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivYAws8zCy4PyPd4n6qicz_0X4asBDmuyPjVJeZj9IIHrwfUkA7CmRwR1dXsaQETCmIZRv6eNOS4QJXny-LSqULeNvgTSlogLYbyckcy40Z_X6AU0WhlOE40rQHl7cFqEkRUkp_MdWKQdx/s400/DSC_1028.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&amp;nbsp;Philippe Makowski (is launching Firebird 2.5, so photo is too light :))&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-moZdRKtmuoW56Z9RfbvqQfx-0En3wlbk29aW81B6U4CRplosQo6b7xogxmlgmDJHwwAdf1X1wvn4SCzgg95CxnDPYERfjzlcDnd5T7K9pE96wetpLXn5xnks0O5s7z2pn-zF0Hq2toZF/s1600/DSC_1035.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-moZdRKtmuoW56Z9RfbvqQfx-0En3wlbk29aW81B6U4CRplosQo6b7xogxmlgmDJHwwAdf1X1wvn4SCzgg95CxnDPYERfjzlcDnd5T7K9pE96wetpLXn5xnks0O5s7z2pn-zF0Hq2toZF/s400/DSC_1035.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&amp;nbsp;&lt;strong&gt;Henri Gourvest (&lt;a href=&quot;http://www.progdigy.com/&quot;&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHcALpBJXuQdUwm4WHC4G4er9kXrc6Nuhi2xm_OZuWe14cMMrh-TvmGD1p7-YNPpM4k25KEAk-dDny53lO27aFO4XtvJqrDd7aq-4ABS9qMkYtAPUOgU38bdaAkDd09N9qHWRvyu31b6ir/s1600/DSC_1045.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhHcALpBJXuQdUwm4WHC4G4er9kXrc6Nuhi2xm_OZuWe14cMMrh-TvmGD1p7-YNPpM4k25KEAk-dDny53lO27aFO4XtvJqrDd7aq-4ABS9qMkYtAPUOgU38bdaAkDd09N9qHWRvyu31b6ir/s400/DSC_1045.JPG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYSlz6KK0xZ8ZzbUwXhm8Vw7iLM6s825fLFnOD6ji9CgLb05mJfEjCg-yEr9LRnwPbAmnDT_27cMVG-jRqfmTQWA4z2wnizJXbzKLJMny2v7DHINNi_u-d0Ynwyo_5HusgiWSRiqtz-o6C/s1600/DSC_1049.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYSlz6KK0xZ8ZzbUwXhm8Vw7iLM6s825fLFnOD6ji9CgLb05mJfEjCg-yEr9LRnwPbAmnDT_27cMVG-jRqfmTQWA4z2wnizJXbzKLJMny2v7DHINNi_u-d0Ynwyo_5HusgiWSRiqtz-o6C/s640/DSC_1049.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&gt;Some moment of the conference&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLIlq4qI9nrohI-XT6Vpz_656bjkjOq74Dut7naAVA3rV6mT_JzZPiDfHx9hujOJ5K3xoeB43DjF1zChq03LVly6AxV7sMX193UAkfN7zHkoJEaxEBPKsyPWl46yhSLL6r0zXRIKN6j41N/s1600/DSC_1052.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLIlq4qI9nrohI-XT6Vpz_656bjkjOq74Dut7naAVA3rV6mT_JzZPiDfHx9hujOJ5K3xoeB43DjF1zChq03LVly6AxV7sMX193UAkfN7zHkoJEaxEBPKsyPWl46yhSLL6r0zXRIKN6j41N/s640/DSC_1052.JPG&quot; width=&quot;640&quot; /&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf2Sts1-WNnXtIAXowTD3vr2QrUhe8TdoXLa3vMrdr_qEalPL8XrBziZ1_nXYgNULUZ2LnYlOHQP1GGey61kYePEoDWgIs0V4YfuD_KDOZMzsZZi5H1QZH1nL-m_UQrlt38v4v8hdmfWWW/s1600/DSC_1056.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;427&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf2Sts1-WNnXtIAXowTD3vr2QrUhe8TdoXLa3vMrdr_qEalPL8XrBziZ1_nXYgNULUZ2LnYlOHQP1GGey61kYePEoDWgIs0V4YfuD_KDOZMzsZZi5H1QZH1nL-m_UQrlt38v4v8hdmfWWW/s640/DSC_1056.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2010/10/firebird-day2010-in-france.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhT8-wpPjqnPg5h0UhT-sCUU6UtQ5hjpPUoNu2IVybWxJvECGJaJdYalLIesmx0InjkqxiRwxh8Zh3fGdqiwX0W2m2UJPkxhaTycIJjGgJ0k2IZw_Mg1blOKtF57mrltJHeo0CEJigsBBsj/s72-c/DSC_1025.JPG" height="72" width="72"/><thr:total>1</thr:total></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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzBbjiCBz_eugtXPA8YfSKuTV3a6Dmx7y_8k4GK1xlMAqgrBLQVz1x7unysHDle0R7zDaXq4Zcp9V-dNoAjbEADhbBGspVcaIoLf8GeaWU4iKer5IZ-mhjliKYkzmCo7_7TU1EKCECAsKz/s1600/DSC_0662.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzBbjiCBz_eugtXPA8YfSKuTV3a6Dmx7y_8k4GK1xlMAqgrBLQVz1x7unysHDle0R7zDaXq4Zcp9V-dNoAjbEADhbBGspVcaIoLf8GeaWU4iKer5IZ-mhjliKYkzmCo7_7TU1EKCECAsKz/s640/DSC_0662.JPG&quot; width=&quot;428&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&amp;nbsp;Sessions will start soon.&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
Philippe and Dmitry. &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf_SK-EdVvx4Mxdk4s129vHENFY-Zlzvc1zBmkq2eDiPwAzUBtxirJDBNRDLDxnBAf4oYYyGesVZBBN2OzH-zxgJKKYhf69voYBjmi25TKQij1ZgjdV6G6dhNrkPfk1sYRl_N_cdvokfmf/s1600/DSC_0674.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;267&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjf_SK-EdVvx4Mxdk4s129vHENFY-Zlzvc1zBmkq2eDiPwAzUBtxirJDBNRDLDxnBAf4oYYyGesVZBBN2OzH-zxgJKKYhf69voYBjmi25TKQij1ZgjdV6G6dhNrkPfk1sYRl_N_cdvokfmf/s400/DSC_0674.JPG&quot; width=&quot;400&quot; /&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGUafBLbqlo7tpqlo43ny26BUPoVF_JTvDxKFw61rNkmWtltaYctKMe5Fk8RcOGGDRUMokvg4bJDeuT0qMjfUtVvPbeN1YNjiZdfys2U6pK0NDCe9ataiBubT2sa26zEjbioZ4yj9lsjYw/s1600/DSC_0675.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiGUafBLbqlo7tpqlo43ny26BUPoVF_JTvDxKFw61rNkmWtltaYctKMe5Fk8RcOGGDRUMokvg4bJDeuT0qMjfUtVvPbeN1YNjiZdfys2U6pK0NDCe9ataiBubT2sa26zEjbioZ4yj9lsjYw/s640/DSC_0675.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Opening of conference &lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf5p2uvMJAgdLa1xMCbRkC8a0rlfB7zMYj7r26iFrduy5PDSgCRnNCrIHFpwo-B1TMEhrdt7JhxkJXgmDNYHDD9sZye3Nht03EpjvaxN3QtzBPZEO9lrbu63v7NsSW9Irok4DjZdO1F9T8/s1600/DSC_0676.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgf5p2uvMJAgdLa1xMCbRkC8a0rlfB7zMYj7r26iFrduy5PDSgCRnNCrIHFpwo-B1TMEhrdt7JhxkJXgmDNYHDD9sZye3Nht03EpjvaxN3QtzBPZEO9lrbu63v7NsSW9Irok4DjZdO1F9T8/s640/DSC_0676.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
Phillipe&#39;s talk &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcrBpAzmdPMBg9bhxylEfg7gyohzbX0LvgLa-MQOIcDK9ZbaKxCPJGsojDaOPkvZqV6QuPzB5noIdmmiuzNIDbRS5vNkrFfTWgh-vORHiLyAmDJ9K47x884VGJoSE8YSctsAw7Zk7GZqog/s1600/DSC_0682.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcrBpAzmdPMBg9bhxylEfg7gyohzbX0LvgLa-MQOIcDK9ZbaKxCPJGsojDaOPkvZqV6QuPzB5noIdmmiuzNIDbRS5vNkrFfTWgh-vORHiLyAmDJ9K47x884VGJoSE8YSctsAw7Zk7GZqog/s640/DSC_0682.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKA3tIyh4JMioudl8OcUSfABWVYGjVglgEa7BlvYPPvWqF5y8XF02m9aKPx8ecLdprFOrq024Lr2MsAxUDilUJcIpSMl8-VrZ35PPnf4-e5gFQHkqvyp3SXeim_FJ323DgGUwGDylW8gPD/s1600/DSC_0683.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgKA3tIyh4JMioudl8OcUSfABWVYGjVglgEa7BlvYPPvWqF5y8XF02m9aKPx8ecLdprFOrq024Lr2MsAxUDilUJcIpSMl8-VrZ35PPnf4-e5gFQHkqvyp3SXeim_FJ323DgGUwGDylW8gPD/s640/DSC_0683.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrReXjjem2rmKwxAcw6xZYqdbV7phYUWG8GX0JgLyvBpgOE0t7NFxBo3ZnULByGsO1PFNFx0tu8Y4vA-32KAtUHCaVYbPkYqclAwfXZOiWU7F-1k7DojRiGWHmsSrg9GaoL-_Fw19pE4Ot/s1600/DSC_0688.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgrReXjjem2rmKwxAcw6xZYqdbV7phYUWG8GX0JgLyvBpgOE0t7NFxBo3ZnULByGsO1PFNFx0tu8Y4vA-32KAtUHCaVYbPkYqclAwfXZOiWU7F-1k7DojRiGWHmsSrg9GaoL-_Fw19pE4Ot/s640/DSC_0688.JPG&quot; width=&quot;428&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOZLgb7scQHD2t_Ze4N1DgZdQguCPtjlnHzSD39kDqkJbMUUZBySwG4c90OjyYXDakay3Elek2k6-h4KufWMAmV3BXIfImhJXWWPhZMLRkLWM7HrI5SETUMYSJxwbUM7hU-kyvTjY5k-FM/s1600/DSC_0690.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;400&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhOZLgb7scQHD2t_Ze4N1DgZdQguCPtjlnHzSD39kDqkJbMUUZBySwG4c90OjyYXDakay3Elek2k6-h4KufWMAmV3BXIfImhJXWWPhZMLRkLWM7HrI5SETUMYSJxwbUM7hU-kyvTjY5k-FM/s400/DSC_0690.JPG&quot; width=&quot;267&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgACRZ4t-_I5AhUYid6qHkpMYsJ0pVTLoJ0Ddq-GL8qNk1eagNyDSxJeC6GwJouH6GYweJs2Gy8JRbGgW8hZXgH33r86vvMnNPyjN4X0UmpdKUCdzKiKrsY3ITbFqxC0VdFeTlWruyjD8tK/s1600/DSC_0694.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;427&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgACRZ4t-_I5AhUYid6qHkpMYsJ0pVTLoJ0Ddq-GL8qNk1eagNyDSxJeC6GwJouH6GYweJs2Gy8JRbGgW8hZXgH33r86vvMnNPyjN4X0UmpdKUCdzKiKrsY3ITbFqxC0VdFeTlWruyjD8tK/s640/DSC_0694.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&amp;nbsp;Alexey Kovyazin, Alex Peshkoff, Vlad Khorsun and Phillipe Makowski&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRdtZAgw9GEmigAVl_cCTY-cWT7NI02Q81KBgalQBOVPj7tEXxsGRidUSqd7sSSOzv_FH9B8sruz4KwhT56YHyuyHS36RXeLJy7qkPx2QFalPq1UzZ11qZ-B92dJUhrdumqDQmXJgAd1RJ/s1600/DSC_0703.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhRdtZAgw9GEmigAVl_cCTY-cWT7NI02Q81KBgalQBOVPj7tEXxsGRidUSqd7sSSOzv_FH9B8sruz4KwhT56YHyuyHS36RXeLJy7qkPx2QFalPq1UzZ11qZ-B92dJUhrdumqDQmXJgAd1RJ/s640/DSC_0703.JPG&quot; width=&quot;640&quot; /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;Dmitry Yemanov started his presentation &lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJgEfB8UYukaZNzL3w-S5tP_I0zRSEXLLojBOBNUmq0A7jHRkfIZTRuOaU0-pYYZ77dzJ_15nLhdT8xx-M1DZoIenRN65NMSfz2hlodDolk93EXzVuaLzCIw8W80iQiIqq7s3AP4n3rAVe/s1600/DSC_0709.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;212&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJgEfB8UYukaZNzL3w-S5tP_I0zRSEXLLojBOBNUmq0A7jHRkfIZTRuOaU0-pYYZ77dzJ_15nLhdT8xx-M1DZoIenRN65NMSfz2hlodDolk93EXzVuaLzCIw8W80iQiIqq7s3AP4n3rAVe/s320/DSC_0709.JPG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Alexey Kovyazin&#39;s presentation &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVlIk1KF4Gif4e0O1I_t4L4rhch4-g_7-hr5wFl8cTAvExWZoUnycYmGhmBZubMpiAYCfOcOi6aMDy6zYID-FLFiXVoy-XjYPNw-y0LnM-3vJXs3Et92xPr1h1lo8TSMYzBC2v9ad5pfJp/s1600/DSC_0721.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVlIk1KF4Gif4e0O1I_t4L4rhch4-g_7-hr5wFl8cTAvExWZoUnycYmGhmBZubMpiAYCfOcOi6aMDy6zYID-FLFiXVoy-XjYPNw-y0LnM-3vJXs3Et92xPr1h1lo8TSMYzBC2v9ad5pfJp/s640/DSC_0721.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&amp;nbsp;Room is full&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguNPr6F6W64l246ITioWZJyRZQw_oaS3ItuM-1lfND0OYtHqLkfmObVwZNK4EHkrolZQQGioW_FEjM6nQl1UIudj9AkgStAW3PhO9oLMSFP7i-Rp3JjAlcZNcdk4XURSgvDYO5ruCDhfoh/s1600/DSC_0723.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;425&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguNPr6F6W64l246ITioWZJyRZQw_oaS3ItuM-1lfND0OYtHqLkfmObVwZNK4EHkrolZQQGioW_FEjM6nQl1UIudj9AkgStAW3PhO9oLMSFP7i-Rp3JjAlcZNcdk4XURSgvDYO5ruCDhfoh/s320/DSC_0723.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji71P445kwvvDAWtBgWYZcLXulxi9WVqEGRHLqCpHnre8YhqAAdr_ojBihKcHEXFSnWvnroyYIDcorAYc28YgkbGGcnunSklldHyOPUx0h7KQ_-f48N3kJ07e8JLZ9QlstXpxikOkPDqE-/s1600/DSC_0724.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEji71P445kwvvDAWtBgWYZcLXulxi9WVqEGRHLqCpHnre8YhqAAdr_ojBihKcHEXFSnWvnroyYIDcorAYc28YgkbGGcnunSklldHyOPUx0h7KQ_-f48N3kJ07e8JLZ9QlstXpxikOkPDqE-/s640/DSC_0724.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDRkXHykNZfmkQRbJ03T-K14BNqSZCz1nQSp12YTYhTzo3IgYw8j6vi9tH9LT3p3eAJka4SzDpDcJxSSacLNMxNmq_SJ9AQzHSYnzUtn2_zdqoiFAZJHh3AS92lI5yJUDawI2HjeYSY0LP/s1600/DSC_0725.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDRkXHykNZfmkQRbJ03T-K14BNqSZCz1nQSp12YTYhTzo3IgYw8j6vi9tH9LT3p3eAJka4SzDpDcJxSSacLNMxNmq_SJ9AQzHSYnzUtn2_zdqoiFAZJHh3AS92lI5yJUDawI2HjeYSY0LP/s640/DSC_0725.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjy-BxCpAiHidNymitJQUwoD8w5OOVnKT411kxE6dDrzytxhqtvh2PyhB-t36BLTrp0TodJSowfjrnv14WZLhcSJVFkDDAqbLwCF-flNb4qBFuZoFn41f5I_ss9ufWAfnaQLlZA0u53fhE7/s1600/DSC_0733.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjy-BxCpAiHidNymitJQUwoD8w5OOVnKT411kxE6dDrzytxhqtvh2PyhB-t36BLTrp0TodJSowfjrnv14WZLhcSJVFkDDAqbLwCF-flNb4qBFuZoFn41f5I_ss9ufWAfnaQLlZA0u53fhE7/s640/DSC_0733.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXX0FaR8jzRdsCYwQF5nwkC-Ai36zgCbxS_V8rB2OeEX7HJUMD0BnKA1VhOkGeOuqsBIXj8o-67PG9feI4ayY0dRzccBI-0O6AtSNcP2iEhNMH4b1zd-UeNxIJhAXKkpf44yXxHM4WOrEi/s1600/DSC_0734.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjXX0FaR8jzRdsCYwQF5nwkC-Ai36zgCbxS_V8rB2OeEX7HJUMD0BnKA1VhOkGeOuqsBIXj8o-67PG9feI4ayY0dRzccBI-0O6AtSNcP2iEhNMH4b1zd-UeNxIJhAXKkpf44yXxHM4WOrEi/s640/DSC_0734.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5_K1ZDaktioM5k3nezXtQVeFr0voD3rh9mOwZ78iAhTjQVLUbh4zooa7wFJwphy2zXPfoL7kfzLfffw_fGklcp8bYz05eqctDJZ2iPVbCdaAX_bprmU0zmA7nAMkSe-0X2onLGNry6bDe/s1600/DSC_0738.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi5_K1ZDaktioM5k3nezXtQVeFr0voD3rh9mOwZ78iAhTjQVLUbh4zooa7wFJwphy2zXPfoL7kfzLfffw_fGklcp8bYz05eqctDJZ2iPVbCdaAX_bprmU0zmA7nAMkSe-0X2onLGNry6bDe/s320/DSC_0738.JPG&quot; width=&quot;428&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Embarcadero session about Delphi&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhepXLXEgO7myC2zef-RT1VmoMzJYTBwNkCNzjbsjGFerqUefVMQ1IN2sL6qTMPo6MCV1r9rZuRQ5msloKQwoovlwlmmCvOyxj5d3I3qLoE0kEDg0OUDWOTq4F97ru_4MDdhLWZMqpmhy1t/s1600/DSC_0740.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhepXLXEgO7myC2zef-RT1VmoMzJYTBwNkCNzjbsjGFerqUefVMQ1IN2sL6qTMPo6MCV1r9rZuRQ5msloKQwoovlwlmmCvOyxj5d3I3qLoE0kEDg0OUDWOTq4F97ru_4MDdhLWZMqpmhy1t/s640/DSC_0740.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Alex Peshkoff&#39;s presentation &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEialvv0Bw4uSxf9DVTyb9mlNdnwQj-ReMd5ckKEE23wvcA_V_YHScV56rB-4XLAZbf-tEgesovg7eYJ-YTPdHIgg0n7Gj3g4I0czULQCNmU0iOUm3WTn6yw9I3Rc74QRZE7y_Twhbdj5LVA/s1600/DSC_0742.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEialvv0Bw4uSxf9DVTyb9mlNdnwQj-ReMd5ckKEE23wvcA_V_YHScV56rB-4XLAZbf-tEgesovg7eYJ-YTPdHIgg0n7Gj3g4I0czULQCNmU0iOUm3WTn6yw9I3Rc74QRZE7y_Twhbdj5LVA/s640/DSC_0742.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAFr-Awe6YWB_wlF3tKvNkkQdMjMd0YJeAc_7fKa5gUWA3gxaMLAvLi1brphcwF-dWFU55ABmMz_a8x0AssIeR_t2W3RB8LSM9Kyvay-MeucUcUeaIwdPmvPPXENbAmCJa9EMA5IzUJeUG/s1600/DSC_0743.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjAFr-Awe6YWB_wlF3tKvNkkQdMjMd0YJeAc_7fKa5gUWA3gxaMLAvLi1brphcwF-dWFU55ABmMz_a8x0AssIeR_t2W3RB8LSM9Kyvay-MeucUcUeaIwdPmvPPXENbAmCJa9EMA5IzUJeUG/s640/DSC_0743.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Another Embarcadero presentation &lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdwZiL21SzPLThuQ-rIknWDYT6onAmtX3xgWb0bYq5n2GQog0VAR7nQ-5X8rzV3adinwVXXuLzcPn66cgVzMMFpH4nBZrCJYidcD9z8UhMxnVzku-OWNLE15SbRZMLH-APtL6A2HNdarAj/s1600/DSC_0744.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgdwZiL21SzPLThuQ-rIknWDYT6onAmtX3xgWb0bYq5n2GQog0VAR7nQ-5X8rzV3adinwVXXuLzcPn66cgVzMMFpH4nBZrCJYidcD9z8UhMxnVzku-OWNLE15SbRZMLH-APtL6A2HNdarAj/s640/DSC_0744.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifMe3N3OIeMw59Tt3UUvXyAyRwM7sCozdetVVWFJXDysqHBR0nUnZ_uBac3Lmeml9zbFJzbvr15LFKupwHgbiT4Bekap67Akqk60sNcqMkbZgf6uhz_q3jgv84VWrLvQK9b-ZnYGuFYQaO/s1600/DSC_0745.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifMe3N3OIeMw59Tt3UUvXyAyRwM7sCozdetVVWFJXDysqHBR0nUnZ_uBac3Lmeml9zbFJzbvr15LFKupwHgbiT4Bekap67Akqk60sNcqMkbZgf6uhz_q3jgv84VWrLvQK9b-ZnYGuFYQaO/s640/DSC_0745.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgezUs0vtmHajLd3l5NW9XHE2Kf91L46mT8Q7wdRrcUgmdjjFft5z0wmTljAQ_8OhJDKLZwoGIBGO0VP_Pz6hXQ3gDAoIWVoB5zmE5iRP6f774SuKvPbOc7WOLsrJDKeCI3LKM3VJIOZOWM/s1600/DSC_0747.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgezUs0vtmHajLd3l5NW9XHE2Kf91L46mT8Q7wdRrcUgmdjjFft5z0wmTljAQ_8OhJDKLZwoGIBGO0VP_Pz6hXQ3gDAoIWVoB5zmE5iRP6f774SuKvPbOc7WOLsrJDKeCI3LKM3VJIOZOWM/s640/DSC_0747.JPG&quot; width=&quot;640&quot; /&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1rWWJF25gL7miT7ps2VD-UyWUHePsebhlfn0AOB-4upGPTBSQxM2P0SXSexCUUAMJF_Gl_3j9quP5dIKGA0KGdhy1UFTJum5YzSOJVDA68IU1OXcE8qufMa1cFDgnEmIRrNngzvnJUt2f/s1600/DSC_0748.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1rWWJF25gL7miT7ps2VD-UyWUHePsebhlfn0AOB-4upGPTBSQxM2P0SXSexCUUAMJF_Gl_3j9quP5dIKGA0KGdhy1UFTJum5YzSOJVDA68IU1OXcE8qufMa1cFDgnEmIRrNngzvnJUt2f/s640/DSC_0748.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
Presentation about &lt;a href=&quot;http://www.lensart.ru/&quot;&gt;www.lensart.ru &lt;/a&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpJDb85e09unxzYnBToKL0my7OvAkbBm5jgYMV1eIJwSEVkKa0kMrL5xhDTl7qsi-_-EHL3MNIlKZqTlmHxw406f5LF5F3k2OkSV9VidGS4lte44pKb5s1IJZq5rnWUHbPTsdqz86bihM2/s1600/DSC_0770.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;640&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpJDb85e09unxzYnBToKL0my7OvAkbBm5jgYMV1eIJwSEVkKa0kMrL5xhDTl7qsi-_-EHL3MNIlKZqTlmHxw406f5LF5F3k2OkSV9VidGS4lte44pKb5s1IJZq5rnWUHbPTsdqz86bihM2/s640/DSC_0770.JPG&quot; width=&quot;428&quot; /&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhg7R8Q4IooJLVqd2bxxOGPnNxdtrwPV3VTbCJnrQyotUWeGra7mqCQ5UBqX5KUWptdAT9D1BK8HqJoTS7tfZZijlRjvdnCqeOcOTAegGXYfRFd1HyQV5Dv6PN3QaYC4zd5QXjffu0gzlUB/s1600/DSC_0772.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;428&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhg7R8Q4IooJLVqd2bxxOGPnNxdtrwPV3VTbCJnrQyotUWeGra7mqCQ5UBqX5KUWptdAT9D1BK8HqJoTS7tfZZijlRjvdnCqeOcOTAegGXYfRFd1HyQV5Dv6PN3QaYC4zd5QXjffu0gzlUB/s640/DSC_0772.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;Alex Peshkoff, Vlad Khorsun, Philippe Makowski, Alexey Kovyazin&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8XyIPkQc_dv-ZLviRLA4IDA_33iMCTXQgzWVLoS9x8tZYqFEebiSPLSW8QKVRIxe1I7XMUN_F3ryFwTQhuXjF3zbsDOMUvRJnTGBQnC9eEZZSK_IQFy-CsNYt17Odzn44Ms0z85Zkza2b/s1600/DSC_0704.JPG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;427&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8XyIPkQc_dv-ZLviRLA4IDA_33iMCTXQgzWVLoS9x8tZYqFEebiSPLSW8QKVRIxe1I7XMUN_F3ryFwTQhuXjF3zbsDOMUvRJnTGBQnC9eEZZSK_IQFy-CsNYt17Odzn44Ms0z85Zkza2b/s640/DSC_0704.JPG&quot; width=&quot;640&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2010/10/3d-russian-firebird-conference-photos.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzBbjiCBz_eugtXPA8YfSKuTV3a6Dmx7y_8k4GK1xlMAqgrBLQVz1x7unysHDle0R7zDaXq4Zcp9V-dNoAjbEADhbBGspVcaIoLf8GeaWU4iKer5IZ-mhjliKYkzmCo7_7TU1EKCECAsKz/s72-c/DSC_0662.JPG" height="72" width="72"/><thr:total>0</thr:total></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#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">release</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&#39;s 10th anniversary year, not just for the Firebird Project but for the whole open-source world, too.&lt;br /&gt;
&lt;br /&gt;
&quot;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&quot;, 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;
&quot;Many of our customers have Firebird databases with sizes from 200GB to 400GB and they keep growing&quot;, said Stewart Spink, CTO of Watermark Software. &quot;The performance improvements in Firebird 2.5 will ensure that their future demands will be satisfied completely.&quot;&lt;br /&gt;
&lt;br /&gt;
Alexander Shaposhnikov, CIO of medical distributor Profitmed predicts that Firebird 2.5 will support the growth of Profitmed&#39;s business. &quot;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.&quot;&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 &quot;SuperClassic&quot;, 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;
&quot;In particular, it will help those in the finance and health industries to meet the growing requirements of their businesses&quot;, he notes, &quot;especially in pushing the limits of performance.&quot;&lt;br /&gt;
&lt;br /&gt;
David Wilder, CTO of Bas-X, welcomed the Firebird 2.5 release for its improved useability and flexibility. &quot;It will enable our customers to turn over more transactions and run more concurrent users on the same hardware,&quot; 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.</description><link>http://firebirdsurgeon.blogspot.com/2010/10/firebird-25-introduces-new-audit.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">Oracle</category><category domain="http://www.blogger.com/atom/ns#">worst practices</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 &quot;How many tables do you &lt;i&gt;really &lt;/i&gt;need? - Four at most!&quot; :-))&lt;br /&gt;
&lt;br /&gt;
&lt;a title=&quot;View Oracle Database Worst Practices on Scribd&quot; href=&quot;http://www.scribd.com/doc/7422356/Oracle-Database-Worst-Practices&quot; style=&quot;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;&quot;&gt;Oracle Database Worst Practices&lt;/a&gt; &lt;object id=&quot;doc_404549603792436&quot; name=&quot;doc_404549603792436&quot; height=&quot;500&quot; width=&quot;100%&quot; type=&quot;application/x-shockwave-flash&quot; data=&quot;http://d1.scribdassets.com/ScribdViewer.swf&quot; style=&quot;outline:none;&quot; rel=&quot;media:presentation&quot; resource=&quot;http://d1.scribdassets.com/ScribdViewer.swf?document_id=7422356&amp;access_key=key-1jt9h377ovwkl2zsc21l&amp;page=1&amp;viewMode=list&quot; &gt; &lt;param name=&quot;movie&quot; value=&quot;http://d1.scribdassets.com/ScribdViewer.swf&quot;&gt;&lt;param name=&quot;wmode&quot; value=&quot;opaque&quot;&gt;&lt;param name=&quot;bgcolor&quot; value=&quot;#ffffff&quot;&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;param name=&quot;allowScriptAccess&quot; value=&quot;always&quot;&gt;&lt;param name=&quot;FlashVars&quot; value=&quot;document_id=7422356&amp;access_key=key-1jt9h377ovwkl2zsc21l&amp;page=1&amp;viewMode=list&quot;&gt;&lt;embed id=&quot;doc_404549603792436&quot; name=&quot;doc_404549603792436&quot; src=&quot;http://d1.scribdassets.com/ScribdViewer.swf?document_id=7422356&amp;access_key=key-1jt9h377ovwkl2zsc21l&amp;page=1&amp;viewMode=list&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; height=&quot;500&quot; width=&quot;100%&quot; wmode=&quot;opaque&quot; bgcolor=&quot;#ffffff&quot;&gt;&lt;/embed&gt; &lt;/object&gt;</description><link>http://firebirdsurgeon.blogspot.com/2010/09/oracle-worst-practices.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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=&quot;font-size: small;&quot;&gt;&lt;b&gt;&lt;span style=&quot;font-weight: normal;&quot;&gt;I&#39;ve read the post at &lt;a href=&quot;http://successfulsoftware.net/2010/08/24/10-things-non-technical-users-dont-understand-about-your-software/&quot;&gt;http://successfulsoftware.net&lt;/a&gt; about 10 things which &lt;/span&gt;&lt;/b&gt;&lt;span style=&quot;font-weight: normal;&quot;&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=&quot;font-size: small;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/h3&gt;&lt;h3 style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;8. The need for backups&lt;/h3&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&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=&quot;http://successfulsoftware.net/2008/02/04/your-harddrive-will-fail-its-just-a-question-of-when/&quot;&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=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;&quot;&gt;&lt;span style=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&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=&quot;font-family: Arial,Helvetica,sans-serif;&quot;&gt;&lt;/span&gt;&lt;/div&gt;</description><link>http://firebirdsurgeon.blogspot.com/2010/09/need-for-backups.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>1</thr:total></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#">backup</category><category domain="http://www.blogger.com/atom/ns#">fbdataguard</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">restore</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&#39;s not the magic&amp;nbsp; - just good knowledge of Firebird and its internals.</description><link>http://firebirdsurgeon.blogspot.com/2010/09/how-to-increase-firebird-backup-and.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>7</thr:total></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#">FIrebird</category><category domain="http://www.blogger.com/atom/ns#">interbase</category><title>InterBase 2009 installer - say hello to Windows 3.1 again</title><description>&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: left;&quot;&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=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1gxduBcLLRCQvtbRy5ZsMfWOPLMXS_XwI-r8bFNdAPYevFXnW1LRMcKqpzXTqHqWqVviDY5yh5-i41ETjVimCzB5uUNKEFrVX17JfekjsRzBXucAqfCMO4THCyzJ-13O_AM47SF8NZPUp/s1600/interbase_install.png&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;246&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1gxduBcLLRCQvtbRy5ZsMfWOPLMXS_XwI-r8bFNdAPYevFXnW1LRMcKqpzXTqHqWqVviDY5yh5-i41ETjVimCzB5uUNKEFrVX17JfekjsRzBXucAqfCMO4THCyzJ-13O_AM47SF8NZPUp/s320/interbase_install.png&quot; width=&quot;320&quot; /&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&#39;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=&quot;http://channel-e.embarcadero.com/index.php?option=com_jvideodirect&amp;amp;v=2BIc9syaWrknH&amp;amp;x=1&quot; target=&quot;_blank&quot;&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&#39;d like to suggest, please post your comments to &lt;/i&gt;  &lt;i&gt;&lt;a href=&quot;http://forums.embarcadero.com/&quot; target=&quot;_blank&quot;&gt;http://forums.embarcadero.com&lt;/a&gt; and/or log a case in Quality Central for InterBase (at &lt;a href=&quot;http://qc.embarcadero.com/&quot; target=&quot;_blank&quot;&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;</description><link>http://firebirdsurgeon.blogspot.com/2010/08/interbase-2009-installer-say-hello-to.html</link><author>noreply@blogger.com (IBSurgeon)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1gxduBcLLRCQvtbRy5ZsMfWOPLMXS_XwI-r8bFNdAPYevFXnW1LRMcKqpzXTqHqWqVviDY5yh5-i41ETjVimCzB5uUNKEFrVX17JfekjsRzBXucAqfCMO4THCyzJ-13O_AM47SF8NZPUp/s72-c/interbase_install.png" height="72" width="72"/><thr:total>1</thr:total></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=&quot;http://ibase.ru/conf2010/&quot;&gt;http://ibase.ru/conf2010/&lt;/a&gt;</description><link>http://firebirdsurgeon.blogspot.com/2010/08/3d-russian-firebird-conference.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></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#">fbdataguard</category><category domain="http://www.blogger.com/atom/ns#">FDD</category><category domain="http://www.blogger.com/atom/ns#">FIrebird</category><title>Free FBDataGuard  for Firebird Developer Day participants</title><description>At FDD&#39;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&#39;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.</description><link>http://firebirdsurgeon.blogspot.com/2010/07/free-fbdataguard-for-firebird-developer.html</link><author>noreply@blogger.com (IBSurgeon)</author><thr:total>0</thr:total></item></channel></rss>