<div>Thanks Bernd, </div>
<div>&nbsp;</div>
<div>I am working around this issues as you have suggested. </div>
<div>&nbsp;</div>
<div>- Shailesh</div>
<div><br><br>&nbsp;</div>
<div class="gmail_quote">On Nov 17, 2007 5:31 PM, Bernd Dorn &lt;<a href="mailto:bernd.dorn@lovelysystems.com">bernd.dorn@lovelysystems.com</a>&gt; wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">
<div style="WORD-WRAP: break-word">
<div class="Ih2E3d"><br>
<div>
<div>On 16.11.2007, at 13:56, Shailesh Kumar wrote:</div><br>
<blockquote type="cite"><span style="WORD-SPACING: 0px; FONT: 12px Helvetica; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate">
<div>&nbsp;</div>
<div>As of now, I am thinking of a following solution. For the current upgrade, I will have some code which will automatically evolve the existing installation during startup</div>
<div>(i.e. DatabaseOpenedEvent) and actually assign a generation number in the root[generations_key][&#39;product_name&#39;] key.</div>
<div>&nbsp;</div>
<div>In the later upgrades, I will replace this with the regular schema manager.</div>
<div>&nbsp;</div>
<div>Comments from the zope 3 experts would be very useful.</div></span></blockquote><br></div></div>
<div>well this is a real flaw with generations ...</div>
<div><br></div>
<div>in our projects we always add an initial .generations package to avoid such cases, you &nbsp;can do this too, but it needs an intermediate version but no &quot;dummy&quot; schema manager.</div>
<div><br></div>
<div>in generations/__init__.py you add</div>
<div><br></div>
<div>
<div>from zope.app.generations.generations import SchemaManager</div>
<div><br></div>
<div>pkg = &#39;myapp&#39;</div>
<div><br></div>
<div>schemaManager = SchemaManager(</div>
<div>&nbsp;&nbsp; &nbsp;minimum_generation=0,</div>
<div>&nbsp;&nbsp; &nbsp;generation=0,</div>
<div>&nbsp;&nbsp; &nbsp;package_name=pkg)</div><br></div>
<div>and register the manager.</div>
<div><br></div>
<div>make a realease, this will set the generation to 0</div>
<div><br></div>
<div>then add your first &quot;evolve1.py&quot; to generations, the manager stays the same &nbsp;- you only have to increase the generation number</div>
<div><br></div>
<div>regards, bernd</div>
<div><br></div>
<div><span style="WORD-SPACING: 0px; FONT: 12px Helvetica; TEXT-TRANSFORM: none; COLOR: rgb(0,0,0); TEXT-INDENT: 0px; WHITE-SPACE: normal; LETTER-SPACING: normal; BORDER-COLLAPSE: separate">
<div>
<div style="MARGIN: 0px"><br></div></div>
<div><br></div></span><br></div><br></div></blockquote></div><br>