Christopher Browne cbbrowne
Wed Jun 15 14:07:10 PDT 2005
"Tang, Jason" <jason.tang at teamuk.telstra.com> writes:
>> > Slon seems to be outputting the following and doesn't seem to be
> doing
>> > anything else. Whats it waiting for? I've done an insert no the
> master
>> > and nothing seems to be coming through and I've used the same
> starting
>> > point as the master.
>> >
>> > CONFIG main: slon version 1.0.5 starting up
>> > CONFIG main: local node id = 1
>> > CONFIG main: loading current cluster configuration
>> > CONFIG storeNode: no_id=2 no_comment='Node 2'
>> > CONFIG storePath: pa_server=2 pa_client=1
>> > pa_conninfo="dbname=prod_provision host=154.8.2.51 user=pgsql"
>> > pa_connretry=10
>> > CONFIG storeListen: li_origin=2 li_receiver=1 li_provider=2
>> > CONFIG storeSet: set_id=1 set_origin=1 set_comment=''
>> > CONFIG main: configuration complete - starting threads
>> > CONFIG enableNode: no_id=2
>> 
>> It seems to me that what you need to do is to progressively configure
>> things, and take a look to see that each step "takes."
>> 
>> 1.  Create the two nodes.
>> 
>> 2.  Start the 2 slons.  They'll start out very quiet, like the above.
>
> Yups I get this
>
>> 3.  STORE PATH for the communications paths.  That should allow the
>> nodes to become aware of one another.
>> 
>> Look at the contents of sl_path, sl_node; if there are 2 nodes, then
>> you should have 2 entries in each of those tables on both nodes after
>> doing the STORE PATH.  (Possibly you'll have one sl_path on each
>> node.)
>
> 2 entries in sl_node and one in sl_path

Once the slons get going, each node should have two entries in
sl_path.  There's the first "root" of problems.

The puzzle: Why did the paths not propagate?

Is it possible that you only submitted one STORE PATH statement?

You may want to look at the sl_path data and see if it seems right or
wrong.

Note that if you missed something, you can always add it on the fly.
You can submit a slonik script without shutting anything down and do
an extra "store path".

>> 4.  STORE LISTEN to indicate how the nodes will use the paths.

There should also ultimately be 2 sl_listen entries on each node.  It
might start as 1, before events start propagating...

Did you submit STORE LISTEN requests, as well?  Things won't work
until that is set up...

>> After doing this, the nodes should start a greater "flood" of
> activity.
>> 
>> Both should submit SYNC events every so often.
>> 
>> Look at sl_path, sl_node, sl_listen on each node.  There should be 2
>> rows in each table.
>> 
>> If not, then communications won't be working right, and your
>> efforts/questions should target fixing this.  Don't try to go on to
>> later steps if the nodes aren't communicating; you would just be
>> wasting your time on the wrong problem.
>
> I'm not getting _any_ SYNC events. Which aspect of the communication?
> I've tested that each node can psql to the database on the other
> machine. Or does the slon use a port separate to postgres?

slon uses a plain old PostgreSQL port to connect to the databases.

If you connect to one or the other database, while slons are running,
you should see connections in pg_stat_activity.  If you use a separate
"slony" superuser rather than the generic "postgres" or "pgsql" user,
you'll see it more clearly...
-- 
"cbbrowne","@","ca.afilias.info"
<http://dev6.int.libertyrms.com/>
Christopher Browne
(416) 673-4124 (land)


More information about the Slony1-general mailing list