Bug 179 - Implicit WAIT FOR EVENT
: Implicit WAIT FOR EVENT
Status: RESOLVED FIXED
Product: Slony-I
slonik
: devel
: All All
: high enhancement
Assigned To: Steve Singer
: http://lists.slony.info/pipermail/slo...
:
: 171 178
  Show dependency treegraph
 
Reported: 2010-12-07 12:14 PST by Christopher Browne
Modified: 2011-05-04 08:48 PDT (History)
1 user (show)

See Also:


Attachments
auto_wait_for patch (95.43 KB, patch)
2011-04-25 12:35 PDT, Steve Singer
Details | Diff


Note

You need to log in before you can comment on or make changes to this bug.


Description Christopher Browne 2010-12-07 12:14:44 PST
Should track (per Yehuda) some status information so that if it's waiting for a
sustained period of time, this isn't a mystery to the user or to people
monitoring things.

Slonik commands that require inter-node coordination should check to see if all
relevant slon processes are running.  Notable exceptions include STORE NODE,
STORE PATH

Slonik should warn or error out if the slon isn't running

Controlling Implicit WAIT FOR EVENT

To support both legacy slonik scripts and new ones, the following features are
suggested:

slonik should have a command line option that deactivates "auto-wait"

It may be desirable for uses to control wait behavior inside scripts, hence we
should add two slonik commands:
* activate auto wait
* deactivate auto wait
Comment 1 Christopher Browne 2011-03-09 12:27:33 PST
Subscribe set has the ENABLE_SUBSCRIPTION event generated by slon; this likely
needs to do some "guarding"
Comment 2 Christopher Browne 2011-03-09 12:28:35 PST
A branch exists for this...
https://github.com/ssinger/slony1-engine/tree/auto_wait_for
Comment 3 Steve Singer 2011-04-25 12:35:07 PDT
Created an attachment (id=90) [details]
auto_wait_for patch

This is a proposed patch implementing the auto/implicit wait for described by
this bug.
Comment 4 Christopher Browne 2011-04-27 14:51:15 PDT
I have walked through the code and documentation, and have a number of patches
to propose that generally clean things up, wordsmith, and make sure things are
commented.

https://github.com/cbbrowne/slony1-engine/commits/auto_wait_for

I don't have any semantic changes to suggest.

I'm starting up various of the tests; will report back on what I find.
Comment 5 Christopher Browne 2011-04-28 08:10:55 PDT
Regression tests mostly worked fine, with some exceptions found in the DDL
test:


-> % cat testResult.test.txt
12,0,test1
9,0,testdatestyles
19,3,testddl
18,0,testdeadlockddl
13,0,testinherit
9,0,testinherit
28,0,testmergeset
15,0,testmultipaths
18,0,testmultiplemoves
16,0,testomitcopy
22,0,testschemanames
18,0,testseqnames
20,0,testtabnames
16,0,testutf8

I'll poke into those 3 failures to see if they are germane.
Comment 6 Christopher Browne 2011-04-28 08:37:43 PDT
OK, running the same test against "master" gives me the same results, for the
DDL test, so I think I'll open up an issue against the regression test, but
point at this being "in pretty good shape."

By the way, I rather liked the addition of the function slonik_SubmitEvent(),
as that looks like a nice added abstraction.
Comment 7 Steve Singer 2011-04-28 09:01:02 PDT
(In reply to comment #6)
> OK, running the same test against "master" gives me the same results, for the
> DDL test, so I think I'll open up an issue against the regression test, but
> point at this being "in pretty good shape."
> 
> By the way, I rather liked the addition of the function slonik_SubmitEvent(),
> as that looks like a nice added abstraction.

I think http://www.slony.info/bugzilla/show_bug.cgi?id=137 describes the issue
you see in testddl.