ruote log_2010-06-17

2010-06-17 06:49:28 utc lbt Engine running
2010-06-17 06:49:29 utc lbt Segmentation fault
2010-06-17 06:49:53 utc jmettraux hello
2010-06-17 06:50:02 utc lbt http://gist.github.com/441770
2010-06-17 06:50:04 utc lbt :)
2010-06-17 06:50:20 utc lbt good morning
2010-06-17 06:50:53 utc lbt what a way to start the day ... a nice hot cup of syssegv
2010-06-17 06:51:08 utc jmettraux do you have more information ?
2010-06-17 06:51:35 utc lbt http://gist.github.com/441773
2010-06-17 06:52:00 utc lbt I ran a simple strace but I thought I'd ask in case there was something you knew about
2010-06-17 06:52:22 utc jmettraux no clue
2010-06-17 06:53:08 utc lbt clock_gettime(CLOCK_REALTIME, {1276757928, 210634537}) = 0
2010-06-17 06:53:10 utc lbt futex(0x411860a4, FUTEX_WAIT_PRIVATE, 1117, {0, 9923463}+++ killed by SIGSEGV +++
2010-06-17 06:53:38 utc jmettraux I could just install rabbitmq, build an env similar to yours (which ruby patch level and which platform BTW ?) and try with http://gist.github.com/441773 and it could expose the issue ?
2010-06-17 06:54:12 utc lbt well, http://gitorious.org/meego-infrastructure-tools/boss
2010-06-17 06:54:39 utc jmettraux ouch
2010-06-17 06:54:45 utc lbt http://gitorious.org/meego-infrastructure-tools/boss/blobs/master/demo/README
2010-06-17 06:55:17 utc lbt I'm happy to dig a little deeper first
2010-06-17 06:55:25 utc jmettraux ok
2010-06-17 06:57:07 utc jmettraux what's your impression ?
2010-06-17 06:57:59 utc lbt of ?
2010-06-17 06:58:02 utc lbt this crash?
2010-06-17 06:58:13 utc jmettraux your gut feeling
2010-06-17 06:58:31 utc lbt ruby / gem setup
2010-06-17 06:59:44 utc lbt mmm.... same setup (nfs shared code) on a different machine that used to work also segfaults
2010-06-17 07:00:05 utc jmettraux what changed since "used to work" ?
2010-06-17 07:00:08 utc lbt and this is actually untouched userlevel code
2010-06-17 07:00:11 utc lbt Bundler
2010-06-17 07:00:27 utc jmettraux 0.9.26 ?
2010-06-17 07:00:52 utc lbt es
2010-06-17 07:00:53 utc lbt y
2010-06-17 07:01:24 utc lbt FYI I backed away from rvm when it started to want to compile ruby... :)
2010-06-17 07:01:35 utc jmettraux ah ok
2010-06-17 07:05:03 utc lbt FWIW here is the main process: http://gist.github.com/441784 line 157 is where it clone()s and http://gist.github.com/441785 is the clone pid
2010-06-17 07:07:15 utc jmettraux Is there a ruby file + line number pointed at ? (sorry my trace reading skills are low)
2010-06-17 07:07:51 utc lbt no... I'm not used to ruby debugging... :)
2010-06-17 07:11:44 utc jmettraux :(
2010-06-17 07:12:30 utc lbt http://gist.github.com/441789
2010-06-17 07:13:20 utc lbt OK... I'll leave it for now... just poking b4 I had to get the train ;)
2010-06-17 07:13:35 utc jmettraux /tmp is on NFS ?
2010-06-17 07:13:57 utc lbt no.... that's why I use it :)
2010-06-17 07:14:06 utc lbt it doesn't like NFS4
2010-06-17 07:14:12 utc jmettraux open("/tmp/work/expressions/be/0!!20100617-bitzuharube.json", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 7
2010-06-17 07:14:12 utc jmettraux ioctl(7, SNDCTL_TMR_TIMEBASE or TCGETS, 0xb75754b8) = -1 ENOTTY (Inappropriate ioctl for device)
2010-06-17 07:14:29 utc jmettraux does it mean it fails to open this file ?
2010-06-17 07:15:52 utc lbt ../be doesn't exist
2010-06-17 07:16:04 utc lbt only /tmp/work/expressions/bo
2010-06-17 07:17:03 utc jmettraux potentially quick experiment, does Ruote::HashStorage instead of Ruote::FsStorage work ?
2010-06-17 07:18:56 utc jmettraux 0!!20100617-bitzuharube.json is a filename for the root (first) expression of a process instance, it means it's actually launching this new process 20100617-bitzuharube
2010-06-17 07:19:47 utc lbt I use 2 scripts .. can they share a Hash ?
2010-06-17 07:19:57 utc jmettraux it's touch the file to lock it at first, and seems to crash at / around that point
2010-06-17 07:20:05 utc lbt *nod*
2010-06-17 07:20:11 utc jmettraux I'm sorry, I don't understand the question
2010-06-17 07:20:46 utc lbt I though HashStorage was in-memory for a single ruby process
2010-06-17 07:20:57 utc jmettraux yes it is
2010-06-17 07:21:06 utc lbt I start an engine and let it sleep
2010-06-17 07:21:16 utc jmettraux what do you mean by 2 scripts ? 2 workers ?
2010-06-17 07:21:22 utc lbt yes
2010-06-17 07:21:39 utc lbt http://gist.github.com/441770
2010-06-17 07:21:41 utc lbt engine ^^
2010-06-17 07:21:56 utc lbt start process >> http://gist.github.com/441773
2010-06-17 07:22:19 utc jmettraux should be fine
2010-06-17 07:22:52 utc jmettraux does the segfault occur when you run the "start process" script ?
2010-06-17 07:23:09 utc jmettraux (I should have asked that question sooner)
2010-06-17 07:23:31 utc lbt yes
2010-06-17 07:23:34 utc lbt instant
2010-06-17 07:23:46 utc jmettraux ly ?
2010-06-17 07:23:55 utc lbt yes
2010-06-17 07:23:57 utc lbt :)
2010-06-17 07:24:13 utc jmettraux and the segfault occurs in the "start process" script ?
2010-06-17 07:24:13 utc lbt hey.... leave it for now... I have to get a train
2010-06-17 07:24:16 utc jmettraux ok
2010-06-17 07:24:18 utc lbt no
2010-06-17 07:24:23 utc lbt segfault is in the engine
2010-06-17 07:24:29 utc jmettraux oh
2010-06-17 07:24:30 utc lbt so IPC happens
2010-06-17 07:24:42 utc jmettraux and it worked before the bundler upgrade ?
2010-06-17 07:24:56 utc jmettraux safe ride
2010-06-17 07:25:01 utc lbt yes... the scripts are sound....
2010-06-17 07:25:10 utc lbt l8r.... and thanks ;)
2010-06-17 07:25:15 utc jmettraux ciao !
2010-06-17 09:58:34 utc tosch_le hi!
2010-06-17 09:58:52 utc jmettraux tosch_le: hello !
2010-06-17 09:58:59 utc jmettraux thanks for helping lbt yesterday !
2010-06-17 09:59:26 utc tosch_le jmettraux: regarding your latest mail on the ml: wasn't there a bug in ruote-amqp which prevented the stateless configuration? http://groups.google.com/group/openwferu-users/browse_thread/thread/b629605d62ce192c
2010-06-17 09:59:40 utc jmettraux ouch
2010-06-17 09:59:52 utc jmettraux feel free to chime in on the ML
2010-06-17 09:59:58 utc tosch_le ok
2010-06-17 10:00:11 utc jmettraux I guess I will have to fix that
2010-06-17 10:00:32 utc tosch_le there seems to be some need for a fix *grin*
2010-06-17 10:01:27 utc jmettraux threetee was on it IIRC
2010-06-17 10:03:07 utc jmettraux and I still have /errors to do
2010-06-17 10:03:45 utc tosch_le /participants is on hold, too
2010-06-17 10:22:32 utc jmettraux trying to do something about ruote-amqp
2010-06-17 10:30:40 utc jmettraux ok, got a decent rabbitmq install
2010-06-17 10:30:52 utc jmettraux kschiess: hopp Schwizz !
2010-06-17 10:31:12 utc kschiess hi jmettraux: Yes another roadblock. Got the other one resolved pretty quickly with your help.
2010-06-17 10:31:21 utc kschiess ACTION is not much of a soccer fan
2010-06-17 10:31:28 utc kschiess but thanks for the support anyway
2010-06-17 10:31:36 utc jmettraux kschiess: so I wrote a method that blocks all the threads ???
2010-06-17 10:31:54 utc jmettraux ACTION wished he knew about the previous roadblocks
2010-06-17 10:31:57 utc kschiess Did you? (;) no, matz is to blame ;) )
2010-06-17 10:32:30 utc jmettraux ouf !
2010-06-17 10:32:39 utc jmettraux I was afraid
2010-06-17 10:32:41 utc kschiess Ok, the last one I resolved with something like this: http://pastie.org/1008244
2010-06-17 10:33:02 utc kschiess Now hitting on Postgres driver (pg gem) being implemented weirdly.
2010-06-17 10:33:17 utc kschiess Or rather: ActiveRecord in combination with same.
2010-06-17 10:33:26 utc jmettraux excellent
2010-06-17 10:33:28 utc kschiess But got that resolved just now as well.
2010-06-17 10:33:58 utc jmettraux you're fast
2010-06-17 10:33:59 utc kschiess The commented out portion obviously serves to take me back into the saner realms of non multithreaded ruby programming
2010-06-17 10:34:53 utc jmettraux you're free to have non thread dispatches (if you trust your participants)
2010-06-17 10:34:58 utc jmettraux sanity +1
2010-06-17 10:34:59 utc kschiess Just for the record: ActiveRecord needs to connect with allow_concurrency: true, even though that's deprecated. pg driver will then use async_exec, which isn't async at all, but DOESNT BLOCK ALL RUBY
2010-06-17 10:35:33 utc kschiess Actually, I like finding these problems now. Might go back to non threaded later anyway.
2010-06-17 10:35:42 utc jmettraux :)
2010-06-17 10:36:13 utc kschiess I guess you know about my work in distributing such work to processes, not threads (procrastinate on my github account)
2010-06-17 10:36:32 utc jmettraux yes
2010-06-17 10:36:40 utc kschiess So to sum this up: No you're not to blame. But this just is harder than needed.
2010-06-17 10:37:48 utc jmettraux sorry, my instinct told me to farm out dispatching to thread to keep the engine seemingly snappy
2010-06-17 10:38:52 utc kschiess I guess it would be better to make non-threaded operation default. This would make it easier for people to start with ruote.
2010-06-17 10:39:10 utc jmettraux you're the first one to complain ;)
2010-06-17 10:39:11 utc kschiess (And we'll have to keep working on the threaded operation, just to make this really cool).
2010-06-17 10:39:35 utc kschiess How many others are there that don't complain?
2010-06-17 10:39:36 utc kschiess ;)
2010-06-17 10:40:13 utc jmettraux people don't get as far as you
2010-06-17 10:40:40 utc jmettraux they stop after asking "how do I integrate this in rails ? please send me a complete example. kthxbai"
2010-06-17 10:42:02 utc kschiess grin. You know, that's what I do for a living ;)
2010-06-17 10:42:17 utc jmettraux lol
2010-06-17 10:42:38 utc kschiess I am using ruote to drive long running processes in system integration, migrating stuff over to other machines and then sending mail, this kind of thing.
2010-06-17 10:42:52 utc kschiess Maybe I can provide some diagrams later on - maybe even blog about it.
2010-06-17 10:43:13 utc jmettraux that would be great
2010-06-17 13:25:36 utc tosch_le jmettraux: woah, you're fast (as usual)! thx for the fix
2010-06-17 13:25:57 utc jmettraux :( If I were fast, I'd have /errors delivered ;-(
2010-06-17 13:26:19 utc jmettraux are you using ruote-amqp as well ? (or planning to ?)
2010-06-17 13:26:37 utc tosch_le no. but i'm happy when the users are
2010-06-17 13:27:24 utc tosch_le and don't worry, after all, you get paid for other things than developing rk, i suppose.
2010-06-17 13:27:55 utc tosch_le (and you've already done a lot for the os community)
2010-06-17 13:27:58 utc tosch_le imho
2010-06-17 13:28:41 utc jmettraux never enough... to pay back all the ways open source is simplifying my life
2010-06-17 13:29:34 utc tosch_le :-)
2010-06-17 13:29:40 utc tosch_le well said
2010-06-17 13:58:30 utc jmettraux have a good evening ! Thanks for your help !
2010-06-17 14:40:12 utc threetee jmettraux: threetee was on it IIRC
2010-06-17 14:40:35 utc threetee that was in regards to stateful/stateless implementation of RuoteAMQP remote participants, I believe
2010-06-17 14:40:47 utc threetee it turned out to be not a bug, but human error on my part
2010-06-17 14:41:05 utc threetee I posted the resolution to this discussion: http://groups.google.com/group/openwferu-users/browse_thread/thread/5c620ef874f4de19#
2010-06-17 14:53:05 utc tosch_le threetee: it really was a bug, you just found (a perfectly valid) workaround imho
2010-06-17 14:53:43 utc threetee ah, good to know
2010-06-17 14:54:27 utc tosch_le with john's changes, you can use "participant :foo, RuoteAMQP::Participant, {:default_queue => 'work1'}"
2010-06-17 14:54:49 utc tosch_le and can drop the queue params in the workflow definition
2010-06-17 15:03:29 utc threetee very nice, I'll have to integrate that
2010-06-17 15:03:52 utc threetee that was my initial preference, to set the default queue there
2010-06-17 15:04:10 utc tosch_le jmettraux ftw ;-D
2010-06-17 15:04:19 utc threetee I actually ran into what I think may be another bug the other day: had problems using a rabbitmq vhost other than /
2010-06-17 15:04:28 utc threetee need to make sure I can replicate, then I'll post
2010-06-17 15:04:42 utc tosch_le fine (not the bug, but the post)
2010-06-17 20:14:09 utc lbt ACTION found and ran -rtracer on the segfault... 111Mb trace...