Excellent - I'll check it out. I've been off in the WCF fun house
lately, wrote a simple WCF-based messaging system (service bus, sagas,
pub/sub, etc...) in the spirit of RSB to enable the team to embrace
messaging as a core concept using the tools they know and that are
"approved" as bringing in RSB directly was promptly shot down by our
architecture overlords. It's a sad state of affairs, I know, but my
hope is that we can "graduate", if you will, to RSB / NSB / etc...
when these boneheads are out of the picture and we are charged with
building the real system after this "architectural elaboration" RUP
B.S. is over. The team is really getting into the messaging concept
though, which is great. If you remember from the conversation we had a
while back, I've got a tough hill to climb, but I'm making
progress...it's tough when you bring up the notion of messaging,
pub/sub, etc... and the architects say that we would have to use
WebMethods for stuff like that, which the enterprise has purchased
recently. <shudder> Or "we should look at making that operation
asynchronous so we're not blocking on a potentially long response time
from XYZ 3rd party" and they come back with "every call should be
synchronous - you're going to want to know that the system did what
you expected it to - besides, that's easier to develop, too" Smile and
nod, thank you architecture astronauts, I'll go now and build a real
system - you can go back to watching your WebMethods webinar. They're
more interested in things like being the guinea pigs for Microsoft's
new Geneva framework and using WS-Trust and federated security for our
authentication story. When it takes an entire wall-sized whiteboard
and a room full of developers over an hour to diagram how someone
authenticates to the system with a username and password, something
HAS to be wrong with this picture...ugh... The whiteboard looks like
diagram of a football play gone terribly, terribly wrong...

Sorry - enough of my bitching :) I'll definitely check out the latest
changes - can't wait.

Thanks,
Matt

On Wed, Feb 11, 2009 at 11:03 AM, Ayende Rahien <[email protected]> wrote:
> BTW, I reproduced this and fixed it.
>
> On Wed, Feb 4, 2009 at 7:39 PM, Matt Burton <[email protected]> wrote:
>>
>> I tried and failed to reproduce the issue a couple of days ago but had
>> to move on to other things - sorry didn't remember to send and update
>> on my status. As I said before it is an intermittent problem -
>> something happens to cause a malformatted message to get added to the
>> subscription queue and during host startup when it's reading the
>> subscriptions it blows up when encountering this message. The
>> "shutdown bus" messages are sent to the endpoint queue, not the
>> subscription queue. As soon as I have free time I'll try it again -
>> whenever I'm able to reproduce it I'll be sure to send the actual
>> message to the list along with (hopefully) the circumstances under
>> which it occurred.
>>
>> On Wed, Feb 4, 2009 at 9:27 AM, Ayende Rahien <[email protected]> wrote:
>> > But this is never reaching into the actual app!
>> >
>> > On Wed, Feb 4, 2009 at 7:25 PM, Mike Nichols <[email protected]>
>> > wrote:
>> >>
>> >> Matt-
>> >> I think this is due to the bus shutdown message : "Shutdown bus" which
>> >> isn't formatted in xml.
>> >>
>> >> On Feb 2, 7:58 pm, Ayende Rahien <[email protected]> wrote:
>> >> > applied
>> >> >
>> >> > On Mon, Feb 2, 2009 at 2:02 PM, Matt Burton <[email protected]>
>> >> > wrote:
>> >> > > Yep - that's what I wound up doing. Figured out what was going
>> >> > > wrong -
>> >> > > see the attached patch - the shorthand versions of the command line
>> >> > > arguments aren't getting parsed correctly ("asm", "cfg", etc...) -
>> >> > > when the ExecutingOptions instance is converted to a string it uses
>> >> > > the short versions. I changed the ToString implementation to use
>> >> > > the
>> >> > > long versions, which do get parsed correctly, and then that's the
>> >> > > string that gets written to the registry for the ImagePath. Good to
>> >> > > go. My service still wouldn't start at that point but luckily the
>> >> > > event log told me what was going on - service didn't have
>> >> > > permissions
>> >> > > for the queue - d'oh! :) I'm sure you would rather that the root
>> >> > > issue
>> >> > > with parsing the arguments is solved but unfortunately I need to
>> >> > > move
>> >> > > on at this point. If you want I could try to dig into that late
>> >> > > tonight.
>> >> >
>> >> > > While I've got you I've noticed an intermittent issue wherein I'll
>> >> > > have a problem starting a service, but my subscriptions were stored
>> >> > > before the process bombs. When I fix the issue and restart the
>> >> > > service
>> >> > > I get a deserialization error sometimes when it reads the
>> >> > > subscription
>> >> > > queue complaining about missing the root element in the document.
>> >> > > The
>> >> > > remedy is to purge the subscription queue and start over but it
>> >> > > would
>> >> > > be nice to know what's happening in the interim. Any ideas?
>> >> >
>> >> > > On Mon, Feb 2, 2009 at 1:19 PM, Ayende Rahien <[email protected]>
>> >> > > wrote:
>> >> > > > Put a System.Diagnostics.Debugger.Launch() in it.
>> >> >
>> >> > > > On Mon, Feb 2, 2009 at 11:16 PM, Matt Burton
>> >> > > > <[email protected]>
>> >> > > wrote:
>> >> >
>> >> > > >> Ah - gotcha. Okay - I'll take a look - getting the ever helpful
>> >> > > >> "Service cannot be started. The service process could not
>> >> > > >> connect
>> >> > > >> to
>> >> > > >> the service controller" message in the event log...
>> >> >
>> >> > > >> On Mon, Feb 2, 2009 at 1:12 PM, Ayende Rahien
>> >> > > >> <[email protected]>
>> >> > > wrote:
>> >> > > >> > That is an old version of the host.
>> >> > > >> > On Mon, Feb 2, 2009 at 11:08 PM, Matt Burton
>> >> > > >> > <[email protected]>
>> >> > > >> > wrote:
>> >> >
>> >> > > >> >> Alright - I'll give it a go and see if I can figure out
>> >> > > >> >> what's
>> >> > > >> >> going
>> >> > > >> >> on. I know you said you were using RSB for the NHProf site -
>> >> > > >> >> how
>> >> > > >> >> are
>> >> > > >> >> you hosting the services for that? I'm looking to integrate
>> >> > > >> >> this
>> >> > > >> >> into
>> >> > > >> >> our current codebase and I'm keen on getting the host to work
>> >> > > >> >> so
>> >> > > >> >> I
>> >> > > >> >> don't have to go reinventing the wheel - but if there's a
>> >> > > >> >> simpler way
>> >> > > >> >> I can use in the interim I'm all ears...
>> >> >
>> >> > > >> >> On Mon, Feb 2, 2009 at 1:05 PM, Ayende Rahien
>> >> > > >> >> <[email protected]>
>> >> > > >> >> wrote:
>> >> > > >> >> > Not tested yet.
>> >> >
>> >> > > >> >> > On Mon, Feb 2, 2009 at 11:00 PM, Matt Burton <
>> >> > > [email protected]>
>> >> > > >> >> > wrote:
>> >> >
>> >> > > >> >> >> Excellent - thanks! Are you able to host and run services
>> >> > > >> >> >> now?
>> >> >
>> >> > > >> >> >> On Mon, Feb 2, 2009 at 3:27 AM, Ayende Rahien
>> >> > > >> >> >> <[email protected]>
>> >> > > >> >> >> wrote:
>> >> > > >> >> >> > applied
>> >> >
>> >> > > >> >> >> > On Fri, Jan 30, 2009 at 6:27 AM, Matt Burton
>> >> > > >> >> >> > <[email protected]>
>> >> > > >> >> >> > wrote:
>> >> >
>> >> > > >> >> >> >> Sure thing - there you go. This gets around the install
>> >> > > problem,
>> >> > > >> >> >> >> but
>> >> > > >> >> >> >> like I said, the service won't start - haven't been
>> >> > > >> >> >> >> able
>> >> > > >> >> >> >> to dig
>> >> > > >> >> >> >> into
>> >> > > >> >> >> >> that to diagnose yet...
>> >> >
>> >> > > >> >> >> >> Thanks,
>> >> > > >> >> >> >> Matt
>> >> >
>> >> > > >> >> >> >> On Thu, Jan 29, 2009 at 6:44 PM, Ayende Rahien
>> >> > > >> >> >> >> <[email protected]>
>> >> > > >> >> >> >> wrote:
>> >> > > >> >> >> >> > Can you create a patch? It is hard for me to see what
>> >> > > >> >> >> >> > was
>> >> > > >> >> >> >> > changed.
>> >> >
>> >> > > >> >> >> >> > On Thu, Jan 29, 2009 at 6:23 PM, Matt Burton
>> >> > > >> >> >> >> > <[email protected]>
>> >> > > >> >> >> >> > wrote:
>> >> >
>> >> > > >> >> >> >> >> No matter what combination I try I wind up with the
>> >> > > following
>> >> > > >> >> >> >> >> error
>> >> > > >> >> >> >> >> when attempting to install a service using the
>> >> > > >> >> >> >> >> host...
>> >> >
>> >> > > C:\dev\rsb-spike\Services\bin\Debug>Rhino.ServiceBus.Host.exe
>> >> > > >> >> >> >> >> /action:Install /asm:"Services.dll"
>> >> > > >> >> >> >> >> /name:"ApplicationServices"
>> >> > > >> >> >> >> >> Installing service ApplicationServices...
>> >> > > >> >> >> >> >> Creating EventLog source ApplicationServices in log
>> >> > > >> >> >> >> >> Application...
>> >> > > >> >> >> >> >> System.InvalidOperationException: Cannot get service
>> >> > > >> >> >> >> >> file
>> >> > > >> >> >> >> >> name.
>> >> > > >> >> >> >> >>   at
>> >> > > >> >> >> >> >>
>> >> > > >> >> >> >> >>
>> >> > > >> >> >> >> >> System.ServiceProcess.ServiceInstaller.Install(IDictionary
>> >> > > >> >> >> >> >> stateSaver)
>> >> > > >> >> >> >> >>   at
>> >> > > >> >> >> >> >>
>> >> > > >> >> >> >> >>
>> >> > > >> >> >> >> >> System.Configuration.Install.Installer.Install(IDictionary
>> >> > > >> >> >> >> >> stateSaver)
>> >> > > >> >> >> >> >>   at
>> >> >
>> >> > >
>> >> > > Rhino.ServiceBus.Host.Actions.InstallAction.Execute(ExecutingOptions
>> >> > > >> >> >> >> >> options) in C:\dev\open-source\rhino-tools.ti
>> >> >
>> >> > >
>> >> > >
>> >> > > p\trunk\rhino-service.bus\Rhino.ServiceBus.Host\Actions\InstallAction.cs:line
>> >> > > >> >> >> >> >> 18
>> >> > > >> >> >> >> >>   at Rhino.ServiceBus.Host.Program.Main(String[]
>> >> > > >> >> >> >> >> args)
>> >> > > >> >> >> >> >> in
>> >> >
>> >> > > C:\dev\open-source\rhino-tools.tip\trunk\rhino-service.bus\Rh
>> >> > > >> >> >> >> >> ino.ServiceBus.Host\Program.cs:line 31
>> >> >
>> >> > > >> >> >> >> >> I hacked on it for a bit and was able to get the
>> >> > > >> >> >> >> >> service to
>> >> > > >> >> >> >> >> install
>> >> > > >> >> >> >> >> by
>> >> > > >> >> >> >> >> changing the InstallAction implementation to the
>> >> > > >> >> >> >> >> following:
>> >> >
>> >> > > >> >> >> >> >> public void Execute(ExecutingOptions options)
>> >> > > >> >> >> >> >> {
>> >> >
>> >> > > >> >> >> >> >>    var installer = new ProjectInstaller
>> >> > > >> >> >> >> >>    {
>> >> > > >> >> >> >> >>        DisplayName = options.Name,
>> >> > > >> >> >> >> >>        Description = options.Name,
>> >> > > >> >> >> >> >>        Context = new InstallContext()
>> >> > > >> >> >> >> >>    };
>> >> > > >> >> >> >> >>    installer.Context.Parameters.Add("assemblypath",
>> >> > > >> >> >> >> >> this.GetType().Assembly.Location);
>> >> > > >> >> >> >> >>    installer.Install(new Hashtable());
>> >> > > >> >> >> >> >>    using (var system =
>> >> > > >> >> >> >> >> Registry.LocalMachine.OpenSubKey("System"))
>> >> > > >> >> >> >> >>    using (var currentControlSet =
>> >> > > >> >> >> >> >> system.OpenSubKey("CurrentControlSet"))
>> >> > > >> >> >> >> >>    using (var services =
>> >> > > >> >> >> >> >> currentControlSet.OpenSubKey("Services"))
>> >> > > >> >> >> >> >>    using (var service =
>> >> > > >> >> >> >> >> services.OpenSubKey(installer.ServiceName,
>> >> > > >> >> >> >> >> true))
>> >> > > >> >> >> >> >>    {
>> >> > > >> >> >> >> >>        var path =
>> >> > > >> >> >> >> >> (string)service.GetValue("ImagePath");
>> >> >
>> >> > > >> >> >> >> >>        options.Action = Action.Server;
>> >> >
>> >> > > >> >> >> >> >>        service.SetValue("ImagePath", path +
>> >> > > >> >> >> >> >> options);
>> >> > > >> >> >> >> >>    }
>> >> > > >> >> >> >> >> }
>> >> >
>> >> > > >> >> >> >> >> Notice the addition of the "assemblypath" context
>> >> > > >> >> >> >> >> and
>> >> > > >> >> >> >> >> then
>> >> > > >> >> >> >> >> changing
>> >> > > >> >> >> >> >> the Action to Server. I can now install and
>> >> > > >> >> >> >> >> uninstall
>> >> > > >> >> >> >> >> but
>> >> > > the
>> >> > > >> >> >> >> >> service
>> >> > > >> >> >> >> >> won't start - I'm getting the following message in
>> >> > > >> >> >> >> >> the
>> >> > > >> >> >> >> >> event
>> >> > > >> >> >> >> >> viewer:
>> >> >
>> >> > > >> >> >> >> >> "Service cannot be started. The service process
>> >> > > >> >> >> >> >> could
>> >> > > >> >> >> >> >> not
>> >> > > >> >> >> >> >> connect
>> >> > > >> >> >> >> >> to
>> >> > > >> >> >> >> >> the service controller"
>> >> >
>> >> > > >> >> >> >> >> Any thoughts?
>> >> >
>> >> > > >> >> >> >> >> Thanks,
>> >> > > >> >> >> >> >> Matt
>> >>
>> >
>> >
>> > >
>> >
>>
>>
>
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rhino-tools-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to