<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 12 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
        {mso-style-priority:99;
        mso-style-link:"Plain Text Char";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:10.5pt;
        font-family:Consolas;}
span.PlainTextChar
        {mso-style-name:"Plain Text Char";
        mso-style-priority:99;
        mso-style-link:"Plain Text";
        font-family:Consolas;}
span.EmailStyle19
        {mso-style-type:personal-compose;
        font-family:"Calibri","sans-serif";}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page Section1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.Section1
        {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang=EN-AU link=blue vlink=purple>
<div class=Section1>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>Hello
all Ingres architects and interested participants,<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>I
was wondering about the feasiblilty of an enhancement to rollforwarddb to allow
the incremental operation run whilst other sessions are connected, similar to online
checkpoint, waiting for open transactions to complete.<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>To
fill you in.. Over the years, I have developed set of tools which maintain a
replica database and synchronising from production every xx minutes using
journal log shipping. The target database is read-only used for disaster
recovery, journal analysis and occasional reports. At one site, I am
using the replica to support web services.<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'> <o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>If
you are new to the concept, this makes very good reading:<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText style='margin-left:36.0pt'><span style='font-size:10.0pt;
font-family:"Calibri","sans-serif"'><a
href="https://www.actian.com/company/blog/ingres-actian-x-disaster-recovery/">https://www.actian.com/company/blog/ingres-actian-x-disaster-recovery/</a><o:p></o:p></span></p>
<p class=MsoPlainText style='margin-left:36.0pt'><span style='font-size:10.0pt;
font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>Compared
to other replication options, I have found the journal “log
shipping” method to be light weight and negligible impact on the
production server. Maintenance requirements are infrequent and problems
are rare. And, best of all it works out of the box without additional
software.<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>My
script terminates connections before running incremental rollforwarddb on the
target server. This is a requirement of rollforwarddb. Periodically
it runs a full refresh from the latest checkpoint.<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>I’d
like to know if it is worth putting in an enhancement request to relax the
restriction, allowing the synchronise to run whilst sessions are connected.
I imagine various cache flushes (dm421, dm422, rd10) would be required.
If there is a session in progress, there needs to be DB level lock,
similar to CKP lock, to prevent a new transaction from starting.
If the target database is in high demand, I plan to ensure the
duration of incremental rolls are minimal.<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'><o:p> </o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>Paul
White<o:p></o:p></span></p>
<p class=MsoPlainText><span style='font-size:10.0pt;font-family:"Calibri","sans-serif"'>&<o:p></o:p></span></p>
</div>
</body>
</html>