Somehow I find that I agree with all of your points.
On Thu, Feb 12, 2009 at 7:16 AM, Matt Burton <[email protected]> wrote: > > 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 -~----------~----~----~----~------~----~------~--~---
