The web in a box - a next generation web framework for the Perl programming language

IRC log for #mojo, 2016-02-16

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:26 sri deadpool is awesome
00:26 genio haven't seen it yet.  I can't get the wife to go
00:28 vicash tell her Ryan Reynolds is wearing latex
00:29 genio haha.  I've already tried that
00:30 sri they even got colossus totally right, that really surprised me
00:45 asarch joined #mojo
00:50 bowtie joined #mojo
01:00 jontaylor joined #mojo
02:05 Adurah joined #mojo
02:15 nfg left #mojo
02:46 sri btw. this is the minion benchmark i use currently https://gist.github.com/anonymous/5e228d27b88a94d915ea
02:46 sri if anyone wants to help
03:00 sri ->stats suffers the most from a growing queue
03:01 sri 10k = 141/s, 100k = 19/s, 1m = 2/s
03:04 noganex_ joined #mojo
03:28 sri and now i'm using this ;p https://gist.github.com/anonymous/814334fb3bf41a0616af
03:28 mcsnolte joined #mojo
04:36 stryx` joined #mojo
05:21 inokenty-w joined #mojo
05:47 sri an index on the state column actually inproves repair and stats performance a lot
05:47 sri gonna gring it back i guess
05:47 sri s/g/b/
06:15 cpan_mojo Mojo-Weixin-1.0.3 by SJDY https://metacpan.org/release/SJDY/Mojo-Weixin-1.0.3
06:16 kes joined #mojo
06:26 sri i'm actually going to try an experiment with minion 5
06:28 sri all old migrations get merged into version 7
06:28 sri so you can only upgrade to 5.0 from 4.06
06:31 melo joined #mojo
06:39 Grinnz cpan clients aren't going to do that
06:39 sri what do you mean?
06:44 melo1 joined #mojo
06:45 Grinnz people aren't only going to have version 4.06 when they update the version
06:46 sri that's ok, it is kind of a breaking change
06:47 sri it's starting to get a little hard to follow the changes https://github.com/kraih/minion/blob/master/lib/Minion/Backend/Pg.pm#L664
06:49 sri which is simply in the nature of migrations
06:49 sri so, i'm wondering what the best process might be to merge old ones
06:50 sri in my own apps i can merge often, as soon as all production boxes have been updated
06:51 sri but with public code i'm not sure how to do it
06:51 sri best i can come up with is a Changes note requiring a certain previous version for upgrades in a major release (where you're supposed to expect breaking changes)
06:56 sri i guess alternatively i could abandon Minion::Backend::Pg and use a different name in the future
06:57 sri Minion::Backend::Pg2 :)
06:57 Adurah Minion::Backend::Pg13
06:58 sri 13?
06:58 sri oh
06:58 Adurah Guess I have to look up the German film classification system, heh.
06:58 sri yea, i get it now
07:06 batman :)
07:06 batman sri: how about Pg95 as in 9.5?
07:09 sri and then i change it with every postgres release? :)
07:09 batman yeah
07:10 batman not sure how often postgres change versions, but i would not be too surprised if there's some new and cool feature you want from the next version :)
07:11 batman but... you can also document that it requires minimum 9.5, so you don't have to change version unless you want
07:13 sri i'll have to think about it
07:14 sri next topic
07:14 sri https://github.com/kraih/minion/commit/60d95ec9bb48df20960c34ce05061ee7eb51a9af
07:14 sri any thoughts on that?
07:19 sri performance cost seems tiny
07:24 sri downside of a Minion::Backend::Pg95 would be that there is no upgrade path at all
07:25 sri you'd have to start with a fresh database
07:38 csson joined #mojo
07:44 osfabibisi joined #mojo
07:50 TomW0rk joined #mojo
07:54 Lee_ joined #mojo
07:55 pink_mist joined #mojo
07:55 Mikey joined #mojo
07:55 stryx` joined #mojo
07:56 avenj joined #mojo
07:56 allison joined #mojo
07:56 esh joined #mojo
07:56 isomorphismes joined #mojo
07:56 mdom joined #mojo
07:56 Grinnz_ joined #mojo
07:56 Ralesk joined #mojo
07:56 cfedde joined #mojo
07:57 coolo joined #mojo
07:58 rakshasa joined #mojo
07:59 ashimema joined #mojo
08:00 sri joined #mojo
08:00 nicomen joined #mojo
08:00 bc547 joined #mojo
08:05 sugar__ joined #mojo
08:13 Vandal joined #mojo
08:18 berov joined #mojo
08:19 trone joined #mojo
08:20 AndrewIsh joined #mojo
08:41 melo joined #mojo
09:07 jontaylor joined #mojo
09:55 jontaylor joined #mojo
09:58 stryx` joined #mojo
11:38 jnbek joined #mojo
11:44 dvinci joined #mojo
11:52 melo joined #mojo
12:58 vanHoesel joined #mojo
13:09 trone joined #mojo
13:21 vytas joined #mojo
13:29 vicash sri: i thought about the migrations problem when I was writing Minion::Backend::Pg91 and move all the alter table changes into create table for instance. but i didn't do it since it might break existing code. one way is to have two migration files and check if Minion has been installed earlier, and if not then use the newer SQL migrations else use the older ones
13:31 punter joined #mojo
13:32 perlpilot joined #mojo
13:40 ramortegui joined #mojo
13:57 stryx` joined #mojo
14:02 neilhwatson joined #mojo
14:22 kaare joined #mojo
14:27 asarch joined #mojo
14:36 zivester joined #mojo
14:43 gryphon joined #mojo
14:48 jnbek joined #mojo
15:38 ribasushi joined #mojo
15:47 mishanti1 Multiple migration paths are perhaps possible? @work we have migration on our databases and as we make schema changes we write new migration files. So we might have 0->1, 1->2, 2->3 etc, plus corresponding migrations to go down again (is case of ouchie).
15:47 mishanti1 Then from time to time you want to have truncated migrations, for example 0->20, that takes the end result of all the n->n+1 migrations but have is specified in one migration-file.
15:47 mishanti1 When doing migration the system checks which migration path would be correct. Eg if the db is at 6, then it could use 6->7, 7->8, 8->9, 9->10, then 10->20, whereas if the db was at 0 (new instance) it would just pick the 0-20 migration.
15:47 mishanti1 Hope I didn't botch the explaination. :)
15:48 mishanti1 ^-- Sri: if that was somewhat related to your issue.
15:59 jberger https://googleonlinesecurity.blogspot.com/2016/02/cve-2015-7547-glibc-getaddrinfo-stack.html
15:59 jberger unrelatedly: http://metacpan.org/release/JBERGER/Mock-MonkeyPatch-0.01
16:03 lluad joined #mojo
16:09 sugar__ joined #mojo
16:14 PryMar56 joined #mojo
16:15 jontaylor joined #mojo
16:16 mullagain joined #mojo
16:27 zivester joined #mojo
16:36 orev joined #mojo
16:53 bradjm joined #mojo
17:17 Grinnz_ just stumbled across http://os-autoinst.github.io/openQA/ which Fedora infrastructure is using, it's Perl and uses Mojo and AssetPack for the web interface
17:18 Grinnz_ https://openqa.fedoraproject.org/
17:21 jberger cool
17:21 jberger https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/WebAPI.pm
17:33 neilhwatson joined #mojo
17:59 mcsnolte joined #mojo
18:16 sri there is some sketchy stuff in the code https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/WebAPI/Plugin/Helpers.pm#L221
18:18 cpan_mojo Mango-1.25 by ODC https://metacpan.org/release/ODC/Mango-1.25
18:25 jberger sri: wow that's odd
18:25 jberger I guess if they then subscribe on the singleton then they are just using it a some kind of dispatch bus
18:26 jberger but they can just do that on a state instance
18:26 jberger (as you well know)
18:50 * sri wonders if delayed_jobs should be part of the stats
18:50 sri to make it fast it requires an index on the delayed column, which is not useful for anything else
18:55 sri omg, i found an index that brings the dequeue query from 8ms down to 0.08ms
18:59 sri "create index on minion_jobs (state, priority desc, created)"
19:00 sri something as simple as that, two orders of magnitude
19:00 Grinnz_ indexes :)
19:01 sri yea, i'm really not that good at optimizing indexes yet :(
19:01 Grinnz_ if only it didn't add up to slow down inserts, then we could just index every combination
19:01 sri "create index on minion_jobs (priority desc, created)"
19:01 sri that one existed before for the order by
19:02 sri i don't understand yet how the query planner can use compound index for different steps, like filtering on conditions and ordering
19:02 sri *+es
19:12 mdom_ joined #mojo
19:14 vicash left #mojo
19:16 patrickz joined #mojo
19:20 vicash joined #mojo
19:49 mdom joined #mojo
19:49 asarch joined #mojo
20:22 al joined #mojo
20:26 vanHoesel joined #mojo
20:32 dvinciguerra__ joined #mojo
20:37 al left #mojo
20:40 punter joined #mojo
20:52 sugar joined #mojo
20:55 macaque joined #mojo
21:09 macaque Hello, I'm new to the mojolicious framework (and my perl could probably stand some work too), but I'm trying to make a simple application and have run into an error message that I can't figure out. The error message is from Controller.pm and is complaining about a string being passed where an array ref is expected, and that string is the application secret key. Would anyone have any insight? Here is the error mojolicious provides:
21:09 macaque http://pastebin.com/4CPJuXyF
21:11 sri http://mojolicious.org/perldoc/Mojolicious#secrets
21:11 Grinnz_ make sure you're setting it to an arrayref, not a string
21:11 melo joined #mojo
21:13 pink_mist instead of ->secrets('foo'); do ->secrets(['foo'])
21:15 macaque that worked, thanks very much!
21:20 melo1 joined #mojo
21:24 sri latest minion benchmark https://gist.github.com/anonymous/0e0399a70f68a1202a37
21:28 sri and the difference between 4.06 and 5.0 https://gist.github.com/anonymous/c3f2da3ff267f198ad38
21:29 sri skip locked is also more measurable with the new index
21:33 sri i guess this is a rather boring topic for most ;p
21:35 sri although, i'm getting the impression that nobody really knows how to optimize indexes
21:36 sri everybody just tries a bunch of indexes to see what sticks
21:39 pink_mist that's what I tend to do, yeah
21:42 lluad For simple cases choosing a good index is pretty easy. But it's usually the non-simple cases that are interesting.
21:44 Grinnz_ it gets especially fun in mysql, where the query planner is even less predictable
21:44 vanHoesel joined #mojo
21:45 lluad I've been burned by both Oracle and MySQL when trying to outwit the query pessimizer.
21:55 vanHoesel joined #mojo
22:04 vanHoesel joined #mojo
22:19 sri :)
22:36 bradjm joined #mojo
22:37 * sri wonders if it makes sense to add the benchmark to the repo
23:09 bradjm joined #mojo
23:39 bjoernfan joined #mojo
23:47 plicease joined #mojo

| Channels | #mojo index | Today | | Search | Google Search | Plain-Text | summary