Do I create another separate application that does mnesia schema/table initilization and have that mnesia initializing application start first on nd1 or nd2? <br><br>If so, then the following steps would be:<br><br>1) start the mnesia initilization application on nd1 or nd2.<br>
2) Then, I use the builder to create separate .rel and other files, and load app1 on ndA without regards to the condition of mnesia shema/tables?<br><br>3) Repeat the step 2, but with app1 with ndB.<br><br>Am I right so far with this kind of thinking? Or is it better to have supervisor starting mnesia initialization first on either nd1 or nd2 and then app1 on ndA and app1 on ndB.  No simple answer, this is getting complicated.<br>
<br>Anyone have a sample make file that uses builder to create .app .rel .boot .script files?<br>There seem to be link to the make in the old email archive: <a href="http://www.erlang.org/pipermail/erlang-questions/2004-May/012295.html">http://www.erlang.org/pipermail/erlang-questions/2004-May/012295.html</a>. But the link for the make file doesn't seem to work. <br>
<br>I ran the builder, very handy tool indeed.  But, I didn't understand the BUILDER_OPTIONS file.  Is there sample BUILDER_OPTIONS template file?<br><br>russ<br><br><div class="gmail_quote">On Jan 29, 2008 5:23 AM, Ulf Wiger (TN/EAB) <<a href="mailto:ulf.wiger@ericsson.com">ulf.wiger@ericsson.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><br>My preference is to have an explicit 'install' phase,<br>where the schema and tables are created.<br>
<br>The 'builder'(*) tool offers a simple way to do this,<br>in that it creates a start script with the start<br>commands removed for all apps except kernel and<br>stdlib (it then slaps a .load extension on it).<br>
This way, you can get all the paths and environment<br>variables set correctly, and then create the schema<br>and tables safely.<br><br>The main point is that the applications should be able<br>to expect that the tables have been created in advance,<br>
and not engage in complex decision-making logic to<br>try to figure out why they're not there.<br><br>BR,<br>Ulf W<br><br>(*) This was a tool that I built long ago to test the<br>idea of incrementally building boot scripts for each<br>
application, as the system grew. It's in jungerl.<br><br><br><br>db skrev:<br><div><div></div><div class="Wj3C7c">> Hello,<br>><br>> My scenario is as follows:<br>><br>> mnesia is distributed and table fragmented(on nd1, nd2).  Now, when<br>
> application started on ndA 1st and on ndB 2nd.  App on ndA,ndB will<br>> access same mnesia schema/tables. I create the schema and table when<br>> application is started ndA.  Now, I start same application on ndB and<br>
> have it not create the schema/tables.<br>><br>> App on ndA, ndB are not distributed but two of the same app running on<br>> both nodes (ndA, ndB).<br>><br>> e.g similar to two web app instances, on two different machine,<br>
> connecting to mysql cluster.<br>><br>> if app on ndA or ndB crash and then restared, how do I make the<br>> Application so that it does not try to recreate the schema/tables. Is<br>> there a way to check if schema/tables are there, so you don't do any<br>
> schema/table recreation?<br>><br>> In erlang otp design, you start the 1st app on ndA which creates the<br>> schema and table, now you take this same code and run it on ndB.  Now<br>> app on ndB will try to create the schema/table.  How to stop this nonsense?<br>
><br>> I don't want to cluster app on ndA and ndB together.  app on each node<br>> reads a slightly different config file, but access the same schema/tables.<br>><br>> thanks,<br>> russ<br>><br>><br>
</div></div>> ------------------------------------------------------------------------<br>><br>> _______________________________________________<br>> erlang-questions mailing list<br>> <a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
> <a href="http://www.erlang.org/mailman/listinfo/erlang-questions" target="_blank">http://www.erlang.org/mailman/listinfo/erlang-questions</a><br></blockquote></div><br><br clear="all"><br>-- <br>rk