Geth rakudo/nom: 79553d0fc3 | (Zoffix Znet)++ | src/core/Rational.pm
Finalize fix for Rational.ceiling/.floor

The original fix[^1] is good; the <4/2> Rat gets created during addition of two Rats and it's not reduced there for performance reasons.
So keep the reduction in .ceiling and toss it from .floor as it's not needed there.
  [1] github.com/rakudo/rakudo/commit/63...1a58490101
01:08
roast: 50e33352e9 | (Zoffix Znet)++ | 2 files
Test .ceiling works for whole Rationals without 1 in denominator

Rakudo fix: github.com/rakudo/rakudo/commit/79553d0fc3
01:10
travis-ci Rakudo build passed. Zoffix Znet 'Finalize fix for Rational.ceiling/.floor 03:20
travis-ci.org/rakudo/rakudo/builds/200549770 github.com/rakudo/rakudo/compare/6...553d0fc3a0
IOninja so quiet... 14:32
dogbert17 hmm, there's still something wrong when spectesting under harness6 15:01
timotimo, jnthn: see anything suspicious here? gist.github.com/dogbert17/ffdabdb6...06d596434f 15:05
IOninja ZOFVM: Files=1224, Tests=132886, 131 wallclock secs (22.17 usr 3.28 sys + 2638.71 cusr 267.61 csys = 2931.77 CPU) 15:15
Geth rakudo/nom: 266f345718 | (Zoffix Znet)++ | t/spectest.data
Mark some slow tests as... slow

So they get spread out through the run
15:16
jnthn dogbert17: Hmm, that's an interesting one... 15:17
dogbert17 annoyingly I don't seem to be able to do an MVM_dump_backtrace since gdb is acting up.. 15:20
hopefully there's a least a sliver of clue there :) 15:21
jnthn It's odd because it blows up freeing some memory, but that memory apparently contaiend a valid pointer which we freed successfully
Or the line number is off-by-one
MVM_free(cur_chars->chars);
MVM_free(cur_chars);
515 is the second of those two 15:22
dogbert17 don't forget that I'm running the 'fixed' orchestrate.c
jnthn Yeah, but don't think that'd cause anything to be off in decodestream.c. :) 15:23
dogbert17 doh
:)
for me line 515 is MVM_free(cur_chars);
jnthn Yeah, we too :) 15:24
So hmm
dogbert17 problem is that I can run the spectest several times before this happens 15:25
jnthn I guess no luck with ASAN?
dogbert17 haven't tried that on this but I could give it a go
if ASAN triggers while running a spectest will I see the output or does the test harness hide it somehow? 15:26
ok ASAN it is then...to be continued 15:27
jnthn If it's spat out by a test itself, it'd be eaten I guess, but if it's the harness itself that blows up it'll halt 15:28
And I think it's the harness that's the trouble, so should do the right thing
dogbert17 this might take a while ... 15:29
also, moarvm was probably compiled without --no-optimize :( 15:31
jnthn At least ASAN is only a little slowdown :) 15:33
Compared to valgrind ;)
dogbert17 yes, valgrinding this would be a nightmare 15:36
I wonder if this intermittent problem is the one that lizmat has been complaining about 15:37
jnthn Quite possibly
I had bad frees but in P6bigint 15:38
timotimo hm, running both the harness and the tests with asan ... 15:39
dogbert17 it's at least running :)
jnthn :) 15:40
dogbert17 hmm, I have a vague menory that there's at least one test file which hangs when ASAN i enabled, wish I could remember which one it is 15:42
(brilliant) spelling, and here I thought that my cataract operation would make things better, grr 15:43
timotimo so, we had the problem where maxrss was growing way out of proportion, but that was fixed with your PR, right? 15:47
dogbert17 yes I hope so :) 15:48
timotimo OK
if not, it might have been interesting to try getting vmhealth reports regularly
but not important any more :)
dogbert17 maybe we should trick IOninja into trying this, doesn't he have access to a monster box with hundreds of cores 15:49
[Tux] This is Rakudo version 2017.01-204-g266f34571 built on MoarVM version 2017.01-49-g7ff91dbb
csv-ip5xs 2.856 15:50
test 12.359
test-t 5.033 - 5.048
csv-parser 13.097
timotimo i mean regularly within one run 15:51
dogbert17 the problem was actually an overflow in a percentage calculation 15:52
timotimo yup 15:55
dogbert17 so there are at least two bugs left wrt harness6, the one ASAN is trying to find and the file descriptor one when running with TEST_JOBS=1 15:58
IOninja buggable: speed 16:04
buggable IOninja, ▃▂▁▂▃▂▂▃▃▂▅▂▂▂▁▂▂▂▁▂▂▂▄▂▃▃▂▂▂▂▂▂▂▃▂▃▃█▂▃▂▂▁▁▂▁▂▁▂▂ data for 2017-01-11–2017-02-11; range: 4.808s–6.505s
IOninja I was hopping removing the IO::Handle.lines close check for each pull-one would improve speed :( 16:05
hoping too
s: $*PROGRAM.IO, 'lines', \() 16:07
SourceBaby IOninja, Sauce is at github.com/rakudo/rakudo/blob/266f...th.pm#L511
IOninja s: $*PROGRAM.IO.open, 'lines', \()
SourceBaby IOninja, Sauce is at github.com/rakudo/rakudo/blob/266f...ol.pm#L190
IOninja wa
s: $*PROGRAM.IO.open, 'lines', \(:close) 16:08
SourceBaby IOninja, Sauce is at github.com/rakudo/rakudo/blob/266f...ol.pm#L190
IOninja s: $*PROGRAM.IO.open, 'Str', \()
SourceBaby IOninja, Sauce is at github.com/rakudo/rakudo/blob/266f...ure.pm#L73
IOninja ah 16:11
s: say $*PROGRAM.IO.open 16:12
SourceBaby IOninja, Something's wrong: ␤ERR: Failed to open file /home/zoffix/services/sourceable/perl6/-e: no such file or directory␤ in block <unit> at -e line 6␤␤Actually thrown at:␤ in block <unit> at -e line 6␤␤
timotimo hehe.
[Coke] wonders if we need a --pod-only that skips any phasers that would normally run code. 19:35
IOninja wonders if that's still unsafe, 'cause you can stuff code into table's params IIRC 19:40
though you may need a BEGIN block to run 'em... I think
timotimo i think we only run DOC when pod is turned on 19:41
potentially BEGIN
samcv m: #| here is a thing␤my $var; say $var.WHY 20:29
camelia rakudo-moar 266f34: OUTPUT«(Any)␤»
samcv m: #| here is a thing␤my $var; sub thingy { ... }; say &thingy.WHY
camelia rakudo-moar 266f34: OUTPUT«here is a thing␤»
samcv why does the first one not work
moritz dunno if .WHY is implemented for variiables 20:30
japhb m: my $var; #= This is the var␤say $var.WHY; say $var.VAR.WHY; 21:11
camelia rakudo-moar 266f34: OUTPUT«(Any)␤(Any)␤»
japhb Dang
samcv moritz, it's in synopsis at least 21:36
timotimo isn't it just the other way around? 22:48
m: #= here is a thing␤my $var; say $var.WHY
camelia rakudo-moar 266f34: OUTPUT«(Any)␤»
timotimo m: #= here is a thing␤my $var; say $var.VAR.WHY
camelia rakudo-moar 266f34: OUTPUT«(Any)␤»
timotimo m: #| here is a thing␤my $var; say $var.VAR.WHY
camelia rakudo-moar 266f34: OUTPUT«(Any)␤»
timotimo *shrug*
samcv timotimo, both are allowed i think
m: #= this thing is great!␤sub great-thing { };␤ say &great-thing.WHY 22:49
camelia rakudo-moar 266f34: OUTPUT«Nil␤»
samcv m: #= this thing is great!␤sub great-thing { };␤ say &great-thing.WHAT
camelia rakudo-moar 266f34: OUTPUT«(Sub)␤»
samcv hmm
m: my $var; #= here is a thing␤ say $var.WHY 22:50
camelia rakudo-moar 266f34: OUTPUT«(Any)␤»
samcv m: my $var; $var.WHY = 'this is a thing'
camelia rakudo-moar 266f34: OUTPUT«Cannot modify an immutable Any␤ in block <unit> at <tmp> line 1␤␤»
timotimo both are allowed, but one means "annotate the thing before the comment" and the other "annotate the thing after the comment" 22:52
samcv yeah that's it