These are chat archives for ManageIQ/manageiq/performance

4th
Nov 2016
Halász Dávid
@skateman
Nov 04 2016 05:45
@Fryguy @chrisarcand if VNC consoles were working from Thin, ActionCable should too as they're using the same faye-websocket backend:
https://github.com/faye/faye-websocket-ruby
Keenan Brock
@kbrock
Nov 04 2016 13:25
Anyone ever wish our custom attributes (in a join table) were in an hstore instead?
Keenan Brock
@kbrock
Nov 04 2016 20:47
@Fryguy so I changed cap&u timer: miq_queue put (not put_or_update) monkeypatched to remove the begin/commit transactions, and changed miq_task to create (not fetch first). Think it went from 12 seconds down to 3
not a valid use case. but does say how much overhead we are throwing on tasks from our queue/task implementation
may be worth monkey patching miq_queue - we could reduce a lot of overhead in our app
it may be a micro-optimization. but... you know?
Jason Frey
@Fryguy
Nov 04 2016 20:48
I have no idea what that means :)
I don't understand the repercussions

may be worth monkey patching miq_queue

we own miq_queue...why monkey patch?

it is Tom's complaint about begin/commits
I would like to fix put_or_update to be a single statement vs 2
er
hmm
I would like to fix put_unless_exists
put_or_update should just :fire:
and if we are updating, we should reorder our jobs that goes once into the queue, so it doesn't happen
Jason Frey
@Fryguy
Nov 04 2016 20:51

it is Tom's complaint about begin/commits

that's not the BEGIN/COMMIT he's talking about...he's talking about the empty BEGIN/COMMIT statements

Keenan Brock
@kbrock
Nov 04 2016 20:51
aah
Jason Frey
@Fryguy
Nov 04 2016 20:51
Like -> Vm.first.save!
Keenan Brock
@kbrock
Nov 04 2016 20:52
yea
ok
Jason Frey
@Fryguy
Nov 04 2016 20:52
I have open issue on Rails for that, but nobody has time or resources
Keenan Brock
@kbrock
Nov 04 2016 20:52
well, for my c&u - it has 7k extra begin/end and only a single thing in there
Jason Frey
@Fryguy
Nov 04 2016 20:52
it's a big win performance-wise
Keenan Brock
@kbrock
Nov 04 2016 20:52
did you see the stack overflow?
it links to rails issues
matthew said it was very hard to fix
lol - I thought "sending data to the db was free" :trollface:
Jason Frey
@Fryguy
Nov 04 2016 20:53
well, the empty BEGIN/COMMIT pair is conceptually easy to fix
BEGIN/COMMIT not being sent for a single command is hard
Keenan Brock
@kbrock
Nov 04 2016 20:54
the open stack article was fun - and it worked
Jason Frey
@Fryguy
Nov 04 2016 20:54
Here's my issue: rails/rails#17937
Keenan Brock
@kbrock
Nov 04 2016 20:55
lol - hot potato from rafael
Jason Frey
@Fryguy
Nov 04 2016 20:55
the workaround in that stackoverflow article is really interesting though
Keenan Brock
@kbrock
Nov 04 2016 21:35
yea, it has my brain working overtime
I mean, I don't like the hack. but... it really opens my eyes for ideas
@Fryguy ^