Review: Needs Fixing

I have tried some basic queries and there is a huge performance improvement. 
This is great. 
However, I detected a memory leak and have one question.

- memory leak in translator.cpp:4823

==20325== 88 (32 direct, 56 indirect) bytes in 1 blocks are definitely lost in 
loss record 4 of 4
==20325==    at 0x4C2B1C7: operator new(unsigned long) (in 
/usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==20325==    by 0x55B8897: 
zorba::TranslatorImpl::begin_visit(zorba::AnnotationListParsenode const&) 
(translator.cpp:4823)
==20325==    by 0x556447D: 
zorba::AnnotationListParsenode::accept(zorba::parsenode_visitor&) const 
(parsenodes.cpp:903)
==20325==    by 0x55B18A8: 
zorba::TranslatorImpl::preprocessVFOList(zorba::VFO_DeclList const&) 
(translator.cpp:3904)
==20325==    by 0x55A9951: zorba::TranslatorImpl::begin_visit(zorba::Prolog 
const&) (translator.cpp:2889)
==20325==    by 0x5562201: zorba::Prolog::accept(zorba::parsenode_visitor&) 
const (parsenodes.cpp:262)
==20325==    by 0x5561E7A: 
zorba::LibraryModule::accept(zorba::parsenode_visitor&) const 
(parsenodes.cpp:174)
==20325==    by 0x559CCD8: zorba::translate_aux(zorba::TranslatorImpl*, 
zorba::parsenode const&, zorba::static_context*, unsigned long, 
zorba::ModulesInfo*, 
std::map<zorba::rstring<zorba::rstring_classes::rep<zorba::atomic_int, 
std::char_traits<char>, std::allocator<char> > >, 
zorba::rstring<zorba::rstring_classes::rep<zorba::atomic_int, 
std::char_traits<char>, std::allocator<char> > >, 
std::less<zorba::rstring<zorba::rstring_classes::rep<zorba::atomic_int, 
std::char_traits<char>, std::allocator<char> > > >, 
std::allocator<std::pair<zorba::rstring<zorba::rstring_classes::rep<zorba::atomic_int,
 std::char_traits<char>, std::allocator<char> > > const, 
zorba::rstring<zorba::rstring_classes::rep<zorba::atomic_int, 
std::char_traits<char>, std::allocator<char> > > > > > const&, bool, 
zorba::StaticContextConsts::xquery_version_t) (translator.cpp:16343)
==20325==    by 0x55AF5C4: zorba::TranslatorImpl::end_visit(zorba::ModuleImport 
const&, void*) (translator.cpp:3589)
==20325==    by 0x55635D3: 
zorba::ModuleImport::accept(zorba::parsenode_visitor&) const 
(parsenodes.cpp:667)
==20325==    by 0x55A99BB: zorba::TranslatorImpl::begin_visit(zorba::Prolog 
const&) (translator.cpp:2899)

- In the following query, no dataguide seems to be pushed into the parser. Why?

import module namespace f = "http://expath.org/ns/file";;

for $obj in parse-json(f:read-text(fn:resolve-uri("citylots-small.json")))
group by $s := $obj.STREET
return {
  street : $s,
  count : count($obj)
}
-- 
https://code.launchpad.net/~zorba-coders/zorba/use-dataguide/+merge/176385
Your team Zorba Coders is subscribed to branch lp:zorba.

-- 
Mailing list: https://launchpad.net/~zorba-coders
Post to     : zorba-coders@lists.launchpad.net
Unsubscribe : https://launchpad.net/~zorba-coders
More help   : https://help.launchpad.net/ListHelp

Reply via email to