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