Hi Vishnu,
Your FLWOR expression won’t return distinct names, since you are applying the function to each individual name. You should write: distinct-values( for $a in //* return $a ) Or better: distinct-values(collection()//*/local-name()) But this still might not perform well, or still max out on list or tree caches. This approach is creating a complete list of all element names first, and starts applying distinct-values only thereafter. You might consider taking multiple steps, like per doc first, and then clustering per 100 files, and only then all clusters. You could also just take 100 random samples, and use that. That doesn’t guarantee a 100% complete list, but it remains performant even if your database grows 10 or 100 fold. Kind regards, Geert *Van:* general-boun...@developer.marklogic.com [mailto: general-boun...@developer.marklogic.com] *Namens *VISH RAJPUT *Verzonden:* maandag 26 maart 2012 8:29 *Aan:* general@developer.marklogic.com *Onderwerp:* [MarkLogic Dev General] Fwd: [1.0-ml] XDMP-EXPNTREECACHEFULL The size of the all files is 90 MB approx. ---------- Forwarded message ---------- From: *VISH RAJPUT* <svishnu.sin...@gmail.com> Date: Mon, Mar 26, 2012 at 11:56 AM Subject: [1.0-ml] XDMP-EXPNTREECACHEFULL To: general@developer.marklogic.com Hi, I have 2000 files in Marklogic database within a single forest and i want to find out the unique element name from this database for the whole 2000 files. For this i wrote the below query:- for $a in //* return distinct-values($a/local-name())) but by this i got an error "*[1.0-ml] XDMP-EXPNTREECACHEFULL" * what should i do? Regards, Vishnu Singh
_______________________________________________ General mailing list General@developer.marklogic.com http://developer.marklogic.com/mailman/listinfo/general