LinkedDataFragments / Client.js

[DEPRECATED] A JavaScript client for Triple Pattern Fragments interfaces.
http://linkeddatafragments.org/
Other
92 stars 35 forks source link

Node complains about EventEmitter leak #25

Closed cbuil closed 4 years ago

cbuil commented 7 years ago

Hi, node is complaining about a possible memory leak. The query executes OK though. I have configured a cache server and I used the 10M watdiv dataset with the following the query:

SELECT * WHERE { ?v0 http://db.uwaterloo.ca/~galuc/wsdbm/hasGenre http://db.uwaterloo.ca/~galuc/wsdbm/SubGenre42 . ?v0 http://xmlns.com/foaf/homepage ?v1 . ?v0 http://www.w3.org/1999/02/22-rdf-syntax-ns#type ?v2 . ?v0 http://schema.org/description ?v3 . ?v0 http://schema.org/expires ?v4 . ?v1 http://schema.org/url ?v5 . }

Best

Carlos

node --max_old_space_size=4096 -- ./bin/ldf-client http://10.10.15.29:88/LDF-Server-0.0.1/watdiv ../../Client.js/watdiv_queries/0/query_10023.rq [(node:27621) Warning: Possible EventEmitter memory leak detected. 11 timeout listeners added. Use emitter.setMaxListeners() to increase limit (node:27621) Warning: Possible EventEmitter memory leak detected. 11 timeout listeners added. Use emitter.setMaxListeners() to increase limit (node:27621) Warning: Possible EventEmitter memory leak detected. 11 timeout listeners added. Use emitter.setMaxListeners() to increase limit (node:27621) Warning: Possible EventEmitter memory leak detected. 11 timeout listeners added. Use emitter.setMaxListeners() to increase limit (node:27621) Warning: Possible EventEmitter memory leak detected. 11 timeout listeners added. Use emitter.setMaxListeners() to increase limit

{"?v0":"http://db.uwaterloo.ca/~galuc/wsdbm/Product18110","?v4":"\"2018-03-10\"","?v3":"\"gingersnap tube's inclosure's rubbing reincarnated Baryshnikov reel's tiff's erstwhile cockscombs butch's criterions cavorted newcomer inflected felt monochromatic implode discourtesies chants blockbusters neckline burden\"","?v2":"http://db.uwaterloo.ca/~galuc/wsdbm/ProductCategory10","?v1":"http://db.uwaterloo.ca/~galuc/wsdbm/Website4966","?v5":"\"grandads milch Rita subtitled marital confrontation's bounden waterway's klutzes unoffensive thither straightened\""},

RubenVerborgh commented 7 years ago

It's a harmless warning message: the number of listeners has to do with the number of connected triple patterns. However, I'll ensure the confusing warning disappears.

RubenVerborgh commented 7 years ago

I don't get the error with my WatDiv 10M dataset. Could you share yours?

larsgsvensson commented 7 years ago

I get that, too, with a federated query over some fairly large datasets (157 MTriples, 236 MTriples and DBPedia as a TPF Server on top of the DBPedia SPARQL endpoint). The ldf-client also throws a FATAL ERROR with the message JavaScript heap out of memory as described in #28. I tried to increase the heap space with max_old_space_size=4096 as described in #24 but that didn't help

RubenVerborgh commented 7 years ago

@larsgsvensson Could you add details for the query you are aiming to evaluate? I suspect that it is a query for which the client creates a suboptimal plan, resulting in cartesian products and hence a memory blow-up.

larsgsvensson commented 7 years ago

Sorry @RubenVerborgh, I had got the CLI syntax wrong (passing the max_old_space_size argument to the wrong process). Now it works fine.

Thanks!

rubensworks commented 4 years ago

This project has now been deprecated in favor of Comunica, where this should not be a problem anymore. If it is, feel free to open a new issue there.