00:03:14  * bnoordhuisquit (Ping timeout: 264 seconds)
01:05:53  * iamdustanjoined
01:09:26  * bnoordhuisjoined
01:10:26  * c4miloquit (Remote host closed the connection)
01:10:52  * c4milojoined
01:14:51  * bnoordhuisquit (Ping timeout: 276 seconds)
01:15:26  * c4miloquit (Ping timeout: 245 seconds)
01:43:17  * abraxasjoined
02:19:35  * seventhquit (Ping timeout: 245 seconds)
03:26:17  * carifjoined
03:57:07  * M28joined
04:51:20  * hardbitjoined
04:57:16  * c4milojoined
06:17:00  * carifquit (Read error: Operation timed out)
06:31:57  * C-Manjoined
06:49:48  * c4miloquit (Remote host closed the connection)
07:07:33  * bnoordhuisjoined
07:20:58  * hardbitquit (Quit: hardbit)
07:42:30  * bnoordhuisquit (Ping timeout: 245 seconds)
07:47:11  * muellijoined
08:22:40  * abraxas__joined
08:22:40  * abraxasquit (Ping timeout: 264 seconds)
08:23:04  * spolujoined
08:38:33  * temp01joined
08:43:17  * xan_quit (Ping timeout: 248 seconds)
08:44:20  * xan_joined
08:48:46  * bnoordhuisjoined
08:53:45  * bnoordhuisquit (Ping timeout: 276 seconds)
09:00:32  * C-Manquit (Read error: Connection reset by peer)
09:00:49  * C-Manjoined
09:14:06  <muelli>hm. GDB is *very* slow when debugging V8. Especially when it comes to Objects' maps. What do people do? Just suffer the long time waiting? Or can I do some optimisations anywhere?
09:21:19  * phI||Ipquit (Ping timeout: 260 seconds)
09:22:30  * phI||Ipjoined
09:47:36  * bnoordhuisjoined
09:58:13  * spoluquit (Remote host closed the connection)
10:19:13  * guorjoined
10:19:18  * abraxas__quit (Remote host closed the connection)
10:19:51  * abraxasjoined
10:24:11  * abraxasquit (Ping timeout: 245 seconds)
11:39:49  * bnoordhuisquit (Ping timeout: 248 seconds)
12:36:49  * bnoordhuisjoined
13:05:09  * carifjoined
13:06:36  * carifquit (Read error: Connection reset by peer)
13:07:36  * jmar777joined
13:51:55  * carifjoined
14:08:19  * chrisdickinsonquit (Ping timeout: 260 seconds)
14:08:54  * alphquit (Ping timeout: 264 seconds)
14:13:32  * chrisdickinsonjoined
14:19:53  * alphjoined
14:23:24  * stalledquit (Ping timeout: 260 seconds)
14:33:16  * stalledjoined
14:44:35  * bnoordhuisquit (Ping timeout: 245 seconds)
14:51:38  * bnoordhuisjoined
15:21:10  * RT|Chatzillaquit (Quit: ChatZilla 0.9.86.1 [Firefox 2.0.0.22pre/2009081014])
15:24:35  * guorquit (Ping timeout: 245 seconds)
15:46:49  * c4milojoined
16:21:48  * M28quit (Read error: Connection reset by peer)
16:21:53  * M28_joined
16:22:56  * temp01quit (Read error: No route to host)
16:25:56  * Lethalmanquit (Remote host closed the connection)
16:28:12  * fb55joined
16:33:26  * temp01joined
16:43:15  * fb55quit (Remote host closed the connection)
16:44:35  * fb55joined
17:00:51  * fb55quit (Ping timeout: 245 seconds)
17:02:52  * fb55joined
17:03:44  * trigenjoined
17:18:43  * muelliquit (Ping timeout: 260 seconds)
17:32:21  * onethfourjoined
17:32:25  <onethfour>what is the debian equivalent to # yum install v8 v8-devel
17:32:32  * carifquit (Quit: Ex-Chat)
17:32:39  <onethfour>in other words how do i install v8-devel package on debian?
17:59:42  * Lethalmanjoined
18:18:04  <aboudreault>onethfour, you should have a libv8-dev package
18:19:16  <aboudreault>but it is relatively old. I'm using my custom installation.
18:20:31  <onethfour>...
18:22:51  <bnoordhuis>onethfour: why the dots?
18:24:09  <onethfour>hopefully its not too old
18:24:12  <onethfour>old != bad
18:24:34  <aboudreault>it's 3.8. maybe it is not that bad.
18:25:39  <bnoordhuis>that's not old, that's ancient. that's the version node v0.6 ships with, iirc
18:26:11  <aboudreault>well, node 0.6 is old :)
18:26:40  <aboudreault>but you are right, ancient is perfect too. should be very stable.
18:26:44  <aboudreault>How can go something like global->Set(...) with a persistent object?
18:27:21  <bnoordhuis>aboudreault: Local<T>::New(isolate, persistent)->Set(...)
18:27:38  <bnoordhuis>that is, you need to rematerialize a Local handle from the persistent object first
18:31:49  <aboudreault>looks like my code works. but I would expect a memory leak. (see the commented delete directive)
18:31:50  <aboudreault>http://pastebin.ca/2449090
18:32:05  <aboudreault>This is what I'm trying to validate.
18:33:08  <bnoordhuis>aboudreault: yes, looks like it leaks
18:33:34  <aboudreault>its doesn't. Checking with valgrind..
18:33:57  <aboudreault>But before I started to use a MakeWeak, I do see the memory leaks
18:34:39  <bnoordhuis>is your weak callback actually getting called?
18:34:52  <bnoordhuis>and is it called as many times as you are creating objects
18:40:29  <aboudreault>I see that my function that created many times is called. But the weakCallBack is never called. I can simulate leaks just by adding a Point *p2 = new Point(2,3); (unused)
18:45:44  <bnoordhuis>aboudreault: right, there you go. if your weak callback is never called, then there is something keeping the object alive
18:46:56  <aboudreault>That's ok... but doesn't explain why I don't see leaks at the end of the process
18:47:23  <bnoordhuis>how are you running valgrind?
18:47:32  <bnoordhuis>with what arguments, i mean
18:47:34  <aboudreault>valgrind --leak-check=full
18:47:50  <aboudreault>v8 3.19
18:48:24  <bnoordhuis>add --show-reachable=yes and try again
18:50:52  <aboudreault>same result.
18:51:14  <aboudreault>I see this though: ==21692== possibly lost: 1,488 bytes in 6 blocks
18:51:37  <aboudreault>with or without the delete instruction.
18:51:42  <bnoordhuis>and it's printing a number of backtraces, i suspect?
18:51:55  <aboudreault>1488 is exactly the size of the X created point.
18:52:03  <aboudreault>yes, a lot.
18:52:21  <aboudreault>still reachable: 357,358 bytes in 502 blocks
18:52:39  <bnoordhuis>is your create function somewhere in those backtraces?
18:53:40  <bnoordhuis>btw, the 'possibly lost' thing means that valgrind thinks the memory leaked but it sees references to the memory elsewhere
18:53:52  <bnoordhuis>on the v8 heap, that is
18:54:04  <bnoordhuis>valgrind isn't very effective with v8, really
18:54:29  <aboudreault>didn't know that.
18:55:50  <aboudreault>I have a lot of backtrace, not sure if I'm doing something wrong or not.
18:56:41  <bnoordhuis>well, a lot of it is probably v8
18:56:50  <bnoordhuis>are you calling v8::V8::Dispose on exit?
18:56:58  <aboudreault>http://pastebin.ca/2449104
18:58:07  <aboudreault>yes, at the end of my process, I call context.Dispose() (which is a Persistent<Context>)
18:58:33  <aboudreault>and in all my execution, I reuse that persistent context with: Local<Context> context = Local<Context>::New(v8context->isolate, v8context->context);
18:59:01  <bnoordhuis>okay, good. but are you also calling v8::V8::Dispose?
18:59:19  <aboudreault>no
18:59:33  <bnoordhuis>that should fix some of the chatter
18:59:47  <aboudreault>didn't know I have to. I've checked a lot of examples on google though.
19:00:11  <bnoordhuis>it's not mandatory but it makes valgrind output less noisy
19:02:46  <aboudreault>ha! so much better!
19:03:05  <aboudreault>and now I do see my memory leaks at the line: Point *p = new Point(2,3);
19:03:17  <aboudreault>have to check why my WeakCallBack is not called now.
19:04:51  <bnoordhuis>is your program short-lived?
19:11:32  <aboudreault>not sure what this mean, sorry.
19:12:37  <bnoordhuis>for how long does your program run? seconds, minutes?
19:12:52  <aboudreault>ah, 2 seconds
19:13:07  * fb55quit (Remote host closed the connection)
19:13:57  <bnoordhuis>right. then the garbage collector probably never kicks in. at least, not a major cycle that reclaims weak objects
19:17:37  <onethfour>I'm trying to install plv8 extension for postgresql, but i'm getting this error after CREATE EXTENSION "plv8" ERROR: could not open extension control file "/usr/share/postgresql/9.3/extension/plv8.control": No such file or directory
19:19:05  <aboudreault>not sure how to interpret that. if my soft leak in CGI mode... it will currently also leak in FastCGI, since I'm creating and freeing a new context everything
19:19:50  <aboudreault>so the GC is never called.
19:23:44  <bnoordhuis>i'm in turn not sure how to interpret that :)
19:24:06  <bnoordhuis>weak objects only get their weak callbacks invoked when the garbage collector reclaims them
19:24:30  <bnoordhuis>that only happens with major gc cycles (caveat emptor: only partially true)
19:24:58  <bnoordhuis>so if there never is such a gc cycle, you'll see a leak with valgrind
19:25:00  <aboudreault>reading this now: http://stackoverflow.com/questions/15375432/v8-why-does-weakreferencecallback-not-get-called
19:25:09  <bnoordhuis>there's nothing you can do about it really, it's just how v8 works
19:25:59  <bnoordhuis>that IdleNotification() trick is not guaranteed to work btw
19:26:51  <aboudreault>yeah, it doesn't in my case.
19:29:55  * fb55joined
19:30:03  <aboudreault>so my best bet would be to change my code to create only one persistent context for the executable, so the GC would be called sometime? The goal being to not get leaks in FCGI.
19:30:29  <aboudreault>let's do the test if my current code in fcgi leaks. will do 100 000 requests
19:34:02  <bnoordhuis>as long as the gc runs every once in a while in fcgi mode, you're good. you can trace that with --trace-gc --trace-external-memory
19:34:59  <bnoordhuis>you probably want to call AdjustAmountOfExternalAllocatedMemory() to give the gc a better picture of the amount of memory in use
19:41:10  <aboudreault>ok.
19:41:30  <onethfour>can someone please help me i'm trying to install plv8 but i'm getting https://gist.github.com/6542788
19:42:25  <aboudreault>onethfour, make: d8: Command not found
19:42:56  <onethfour>yes i read that also, what does it mean?
19:43:28  <aboudreault>you should also check the v8 version requirement of the plv8 exension
19:44:38  <aboudreault>thank you bnoordhuis for your valuable advices. really appreciated. I'll continue my work that way.
19:51:15  <bnoordhuis>no problem, happy to help
20:19:34  <onethfour>i thought uuid-ossp is supposed to be automatically installed but i'm getting a ERROR: could not open extension control file "/usr/share/postgresql/9.3/extension/uuid-ossp.control": No such file or directory
20:20:38  <bnoordhuis>onethfour: you'll probably have more luck asking about that in a postgres channel
20:21:52  <onethfour>apt-get install postgresql-contrib-9.3 <-- this fixed it, thanks
20:59:29  * jmar777quit (Read error: Connection reset by peer)
20:59:59  * jmar777joined
21:04:47  * jmar777quit (Remote host closed the connection)
21:50:45  * C-Manquit (Quit: Connection reset by beer)
21:53:28  * Karinuquit (Ping timeout: 256 seconds)
22:09:22  * carifjoined
22:09:57  * Karinujoined
22:10:13  * carifquit (Client Quit)
22:22:08  * fb55_joined
22:22:26  * fb55quit (Ping timeout: 240 seconds)
22:30:14  * temp01quit (Ping timeout: 264 seconds)
22:30:16  * carifjoined
22:31:24  * RT|Chatzillajoined
22:32:33  * carifquit (Read error: Connection reset by peer)
22:33:56  * temp01joined
22:47:11  * Lethalmanquit (Quit: Leaving)
23:08:30  * bnoordhuisquit (Ping timeout: 264 seconds)
23:48:56  * Jarvix_joined
23:51:49  * Jarvix__quit (Ping timeout: 240 seconds)