Hi,
Yer if I hadn't been in such a hurry to get to the pub on friday I would have
noticed on the other controller it was complaining that the configs didn't
match. I got the update out of CVS and that fixed the problem and then I fixed
the configs so they matched and hey presto everything worked! My initial tests
are showing that Sequoia with Appia is about 2-3 times quicker than with
Jgroups for distributed writes! It goes a long way to letting me achieve the
performance metrics I need. So to all the Appia/Hedera/Sequoia team members I
say thanks for your efforts! At the risk of acting half my age I say "Appia is
da Bomb"!
Cheers
Dave
-----Original Message-----
From: Nuno Carvalho [mailto:[EMAIL PROTECTED]
Sent: Fri 24/03/2006 9:58 PM
To: Hedera general mailing list
Cc: [EMAIL PROTECTED]; [EMAIL PROTECTED]
Subject: Re: [Hedera] Appia and Sequoia
Hi,
I took a look at the sequoia code and to see why is there do Sequoia
calls quitChannel() inside joinGroup() and I noticed that this happen
when the configuration of the controllers are not compatible.
In the Sequoia code, there is a call to channel.close() and then a
channel.quit(). My implementation of hedera really closed the channel
on channel.close() and sequoia called this before leaving the group
(to leave the group, there is a need to exchange some messages). So,
that is why you got that exception. (Channel is closed).
I changed the implementation of this method, so if you update hedera
from the CVS, you should see some changes. I hope this helps.
I added the Appia mailing lists to CC because this discussion could
be useful to other people. Maybe its better to post future messages
related to Appia also on the Appia mailing list, since not all Appia
developers from the university of Lisbon are on the Hedera mailing list.
I hope this helps and thanks for your feedback,
Nuno
On Mar 24, 2006, at 8:11 AM, Cawthorn, Dave wrote:
> Hi,
>
> Thanks Nuno for the tips! I tried what you said and the behaviour
> changed slightly this time I saw two debug messages from the
> adapter but nothing on the reciever side. After trawling through
> packet capture logs I saw the message was being sent but ethereal
> was saying the checksum was invalid even though I saw an ack packet
> coming back from the receiver. There were no other messages after
> that apart from the token passing.
>
> I decided to try things out on linux to see if things were
> different there. Initially I couldn't even get each controller to
> see each other so I tried setting up a gossip server and now they
> see each other and send messages but it crashes with the following
> error trace log...
>
> :55:34,738 INFO controller.core.Controller Sequoia controller (2.6.1)
> 15:55:34,822 DEBUG controller.core.Controller /usr/local/
> sequoia-2.6.1-appia/config/controller/controller-raidb1.xml
> 15:55:34,898 INFO controller.core.Controller Loading configuration
> file: /usr/local/sequoia-2.6.1-appia/config/controller/controller-
> raidb1.xml
> 15:55:35,104 INFO controller.core.Controller JMX is enabled
> 15:55:35,149 INFO controller.core.Controller Starting JMX server
> on host: 192.168.100.51
> 15:55:35,307 DEBUG controller.core.Controller JMX server started
> 15:55:35,312 DEBUG controller.core.Controller Loading virtual
> database configuration /usr/local/sequoia-2.6.1-appia/config/
> virtualdatabase/postgres-raidb1.xml
> 15:55:35,364 DEBUG controller.core.Controller Adding
> VirtualDatabase CCS_jBPM
> 15:55:35,876 INFO controller.backup.BackupManager Registering
> backuper Postgres to handle format PostgreSQL Binary Dump
> 15:55:36,040 INFO backend.DatabaseBackend.b3 Adding connection
> manager for virtual user "postgres"
> 15:55:36,123 INFO backend.DatabaseBackend.b4 Adding connection
> manager for virtual user "postgres"
> 15:55:36,634 INFO controller.RequestManager.CCS_jBPM Request
> manager will parse requests with the following granularity: TABLE
> 15:55:36,639 INFO controller.virtualdatabase.CCS_jBPM Using Hedera
> properties file: /hedera_appia.properties
> AppiaThread: Starting Appia...
> 15:55:40,869 INFO controller.virtualdatabase.CCS_jBPM Group
> CCS_jBPM connected to Member(address=vs02.vieosystems.com/
> 192.168.100.51:51036, uid=vs02.vieosystems.com/192.168.100.51:51036)
> 15:55:40,870 INFO controller.virtualdatabase.CCS_jBPM Group now
> contains 2 controllers.
> 15:55:40,870 INFO controller.virtualdatabase.CCS_jBPM Checking
> virtual database configuration with remote controllers.
> 15:55:40,983 DEBUG continuent.hedera.adapters Sending message 0 to
> 1 members.
> 15:55:40,983 DEBUG continuent.hedera.adapters Sending message 0 to
> 1 members.
> 15:55:41,344 DEBUG continuent.hedera.adapters Received reply from
> Member(address=vs01.vieosystems.com/192.168.100.50:44597,
> uid=vs01.vieosystems.com/192.168.100.50:44597) to message 0
> 15:55:41,344 DEBUG continuent.hedera.adapters Received reply from
> Member(address=vs01.vieosystems.com/192.168.100.50:44597,
> uid=vs01.vieosystems.com/192.168.100.50:44597) to message 0
> org.continuent.appia.core.AppiaEventException:
> appia:AppiaEventException:Channel is Closed
> at org.continuent.appia.core.Channel.insertEvent(Unknown
> Source)
> at org.continuent.appia.core.Event.asyncGo(Unknown Source)
> at org.continuent.hedera.appia.AppiaGMS.disconnect
> (AppiaGMS.java:231)
> at
> org.continuent.hedera.gms.AppiaGroupMembershipService.quit
> (AppiaGroupMembershipService.java:98)
> at
> org.continuent.hedera.channel.AbstractReliableGroupChannel.quit
> (AbstractReliableGroupChannel.java:77)
> at
> org.continuent.sequoia.controller.virtualdatabase.DistributedVirtualDa
> tabase.quitChannel(DistributedVirtualDatabase.java:676)
> at
> org.continuent.sequoia.controller.virtualdatabase.DistributedVirtualDa
> tabase.joinGroup(DistributedVirtualDatabase.java:470)
> at
> org.continuent.sequoia.controller.xml.DatabasesParser.endElement
> (DatabasesParser.java:726)
> at org.apache.crimson.parser.Parser2.maybeElement
> (Parser2.java:1528)
> at org.apache.crimson.parser.Parser2.content(Parser2.java:
> 1779)
> at org.apache.crimson.parser.Parser2.maybeElement
> (Parser2.java:1507)
> at org.apache.crimson.parser.Parser2.parseInternal
> (Parser2.java:500)
> at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
> at org.apache.crimson.parser.XMLReaderImpl.parse
> (XMLReaderImpl.java:442)
> at
> org.continuent.sequoia.controller.xml.DatabasesParser.readXML
> (DatabasesParser.java:330)
> at
> org.continuent.sequoia.controller.xml.DatabasesParser.readXML
> (DatabasesParser.java:379)
> at
> org.continuent.sequoia.controller.core.Controller.addVirtualDatabases(
> Controller.java:172)
> at
> org.continuent.sequoia.controller.core.Controller.loadXmlConfiguration
> (Controller.java:507)
> at
> org.continuent.sequoia.controller.core.ControllerConfiguration.setUpVi
> rtualDatabase(ControllerConfiguration.java:419)
> at
> org.continuent.sequoia.controller.xml.ControllerParser.configureVirtua
> lDatabase(ControllerParser.java:683)
> at
> org.continuent.sequoia.controller.xml.ControllerParser.startElement
> (ControllerParser.java:363)
> at org.apache.crimson.parser.Parser2.maybeElement
> (Parser2.java:1488)
> at org.apache.crimson.parser.Parser2.content(Parser2.java:
> 1779)
> at org.apache.crimson.parser.Parser2.maybeElement
> (Parser2.java:1507)
> at org.apache.crimson.parser.Parser2.content(Parser2.java:
> 1779)
> at org.apache.crimson.parser.Parser2.maybeElement
> (Parser2.java:1507)
> at org.apache.crimson.parser.Parser2.parseInternal
> (Parser2.java:500)
> at org.apache.crimson.parser.Parser2.parse(Parser2.java:305)
> at org.apache.crimson.parser.XMLReaderImpl.parse
> (XMLReaderImpl.java:442)
> at
> org.continuent.sequoia.controller.xml.ControllerParser.readXML
> (ControllerParser.java:168)
> at
> org.continuent.sequoia.controller.xml.ControllerParser.readXML
> (ControllerParser.java:218)
> at
> org.continuent.sequoia.controller.xml.ControllerParser.readXML
> (ControllerParser.java:247)
> at
> org.continuent.sequoia.controller.core.ControllerConfiguration.setUpBy
> Xml(ControllerConfiguration.java:252)
> at
> org.continuent.sequoia.controller.core.ControllerConfiguration.setup
> (ControllerConfiguration.java:300)
> at
> org.continuent.sequoia.controller.core.ControllerConfiguration.getCont
> roller(ControllerConfiguration.java:326)
> at org.continuent.sequoia.controller.core.Controller.main
> (Controller.java:683)
> 15:55:42,353 DEBUG continuent.hedera.adapters PullPushAdapter:
> Error while reading from channel
> org.continuent.hedera.channel.ChannelException:
> org.continuent.hedera.appia.interfaces.ClosedChannelException:
> Channel is closed
> at
> org.continuent.hedera.channel.AppiaReliableGroupChannel.receive
> (AppiaReliableGroupChannel.java:172)
> at org.continuent.hedera.adapters.PullPushAdapter.run
> (PullPushAdapter.java:164)
> at java.lang.Thread.run(Thread.java:595)
> Caused by:
> org.continuent.hedera.appia.interfaces.ClosedChannelException:
> Channel is closed
> at org.continuent.hedera.appia.AppiaGMS.receive
> (AppiaGMS.java:164)
> at
> org.continuent.hedera.channel.AppiaReliableGroupChannel.receive
> (AppiaReliableGroupChannel.java:170)
> ... 2 more
> 15:55:42,353 DEBUG continuent.hedera.adapters PullPushAdapter:
> Error while reading from channel
> org.continuent.hedera.channel.ChannelException:
> org.continuent.hedera.appia.interfaces.ClosedChannelException:
> Channel is closed
> at
> org.continuent.hedera.channel.AppiaReliableGroupChannel.receive
> (AppiaReliableGroupChannel.java:172)
> at org.continuent.hedera.adapters.PullPushAdapter.run
> (PullPushAdapter.java:164)
> at java.lang.Thread.run(Thread.java:595)
> Caused by:
> org.continuent.hedera.appia.interfaces.ClosedChannelException:
> Channel is closed
> at org.continuent.hedera.appia.AppiaGMS.receive
> (AppiaGMS.java:164)
> at
> org.continuent.hedera.channel.AppiaReliableGroupChannel.receive
> (AppiaReliableGroupChannel.java:170)
> ... 2 more
>
> Anyone got any ideas? Should I post this on to the Appia group?
>
> Cheers
> Dave
>
>
> -----Original Message-----
> From: Nuno Carvalho [mailto:[EMAIL PROTECTED]
> Sent: Thu 23/03/2006 6:50 PM
> To: Hedera general mailing list
> Cc:
> Subject: Re: [Hedera] Appia and Sequoia
>
>
>
> Hi,
>
> The first time that I tried to put Appia on Sequoia I did
exactly the
> same thing and it didn't work as well.
> Because Sequoia is a bit complex, I did not try to understand
why,
> but tried to understand how these shell scripts are built,
because
> maybe these jar files are needed somewhere else (the Sequoia
people
> can answer this better than me).
>
> So, then I did the following:
> -added hedera jar file (with the Appia implementation) and the
Appia
> jar file to the lib directory of Sequoia;
> - added hedera jar file (with the Appia implementation) and the
Appia
> jar file in the bin/scripts.xml file, as classpath entries.
> - added hedera_appia.properties and appia.xml to the config
directory
> of sequoia
> - changed the value of hederaPropertiesFile in xml/sequoia.dtd
file
> to "/hedera_appia.properties"
> - recompiled Sequoia
>
> I think I'm not forgetting anything. After this, it worked.
>
> The token messages are normal and with that we can see that (at
> least, at the Appia level) there is a group with 2 members,
otherwise
> they would not exchange the token :)
>
> I didn't test this under windows and I do not have a windows
machine
> at the moment to test it, but if your problems persist, I can
get a
> windows machine and test the binding on it.
>
> Hope this helps.
> Cheers,
> Nuno
>
> On Mar 23, 2006, at 9:50 AM, Cawthorn, Dave wrote:
>
> > Hi All,
> >
> > I may be trying to jump the gun a bit but I am trying to get
> > sequoia 2.6.1 to work with appia because jgroups is too slow
once
> > you have the total_token protocol running.
> >
> > So far I have managed to get 1controller to start but when i
start
> > a second controller it sees the other controller but hangs at
the
> > point where it checks that the virtual database configuration
is
> > compatible with the other controller. I see a debug message
from
> > the hedera adapter saying "sending message 0 to 1 members" but
> > nothing after that and I don't see any adapter debug messages
on
> > the first controller.
> >
> > To get to this point I checked hedera out of cvs (2 days ago)
as
> > well as downloaded the source for appia (today)
> > Built hedera-1.4.2.jar and built appia-3.0.jar
> > Added these jar files to the classpath in the bat file that
starts
> > sequoia. (removed old hedera and jgroup related jars)
> > Overwrote hedera_jgroups.properties with the values I found in
> > hedera_appia.properties
> > put appia.xml in the sequoia config directory.
> >
> > When I do a packet capture using ethereal It looks like the
> > totaltoken.tokenevent is bouncing between the controllers
because
> > there are about a thousand messages per second with the
> following data
> > 0000 00 06 1b c0 8a 2e 00 16 76 07 2f 29 08 00 45
> > 00 ........v./)..E.
> > 0010 00 95 aa 6e 40 00 80 06 06 92 c0 a8 64 09 c0
> > a8 [EMAIL PROTECTED]
> > 0020 64 08 0c 93 08 d1 b3 91 8e 49 15 ae f9 91 50 18
> > d........I....P.
> > 0030 f9 3c f9 cc 00 00 00 00 00 69 00 00 00 34 6f
> > 72 .<.......i...4or
> > 0040 67 2e 63 6f 6e 74 69 6e 75 65 6e 74 2e 61 70 70
> > g.continuent.app
> > 0050 69 61 2e 70 72 6f 74 6f 63 6f 6c 73 2e 74 6f 74
> > ia.protocols.tot
> > 0060 61 6c 74 6f 6b 65 6e 2e 54 6f 6b 65 6e 45 76 65
> > altoken.TokenEve
> > 0070 6e 74 00 00 00 11 54 43 50 20 54 4f 4b 45 4e 20
nt....TCP
> > TOKEN
> > 0080 43 68 61 6e 6e 65 6c 9b 3e 65 e1 2b d7 22 22 00
Channel.>e.
> > +."".
> > 0090 00 00 00 00 01 00 00 00 89 36 00 00 00 00 00 01
.........
> > 6......
> > 00a0 12 6c 01 .l.
> >
> > This is on a windows platform but my target is linux.
> >
> > any ideas on what the problem is?
> >
> > Cheers
> > Dave
> > _______________________________________________
> > Hedera mailing list
> > [email protected]
> > https://forge.continuent.org/mailman/listinfo/hedera
>
>
> _______________________________________________
> Hedera mailing list
> [email protected]
> https://forge.continuent.org/mailman/listinfo/hedera
>
>
> <winmail.dat>
> _______________________________________________
> Hedera mailing list
> [email protected]
> https://forge.continuent.org/mailman/listinfo/hedera
_______________________________________________
Hedera mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/hedera
_______________________________________________
Hedera mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/hedera