You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael McCandless (JIRA)" <ji...@apache.org> on 2010/05/18 19:22:41 UTC
[jira] Updated: (LUCENE-2380) Add FieldCache.getTermBytes, to load
term data as byte[]
[ https://issues.apache.org/jira/browse/LUCENE-2380?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Michael McCandless updated LUCENE-2380:
---------------------------------------
Attachment: LUCENE-2380.patch
Very rough first cut patch attached.
I removed getStrings and replaced it with getTerms (returns a BytesRef oriented getter API for looking up the String from a doc).
And I removed getStringsIndex and replaced it with getTermsIndex.
All lucene tests pass with this hard cutover, but I still need to measure perf hit: I'm using packed ints currently to hold the offsets, and 1 or 2 byte vInt prefix (Yonik's idea) to encode the term's length.
I started to cutover Solr as well, and got some things cutover, but decided I should stop and check if these changes make sense :) So the Solr side of the patch does not yet compile. I specifically stopped when I got to StringIndexDocValues (abstract base class for lots of others) -- I'd like to do a hard cutover of this class to use BytesRef, but does anyone see a problem w/ that? I'm at little nervous about how far "down" I'll end up having to push the BytesRef... It is marked as "Internal class, subject to change" :) I also dropped lots of nocommits along the way on the Solr side... so if someone could have a look and make suggestions that'd help :)
> Add FieldCache.getTermBytes, to load term data as byte[]
> --------------------------------------------------------
>
> Key: LUCENE-2380
> URL: https://issues.apache.org/jira/browse/LUCENE-2380
> Project: Lucene - Java
> Issue Type: Improvement
> Components: Search
> Reporter: Michael McCandless
> Assignee: Michael McCandless
> Fix For: 4.0
>
> Attachments: LUCENE-2380.patch
>
>
> With flex, a term is now an opaque byte[] (typically, utf8 encoded unicode string, but not necessarily), so we need to push this up the search stack.
> FieldCache now has getStrings and getStringIndex; we need corresponding methods to load terms as native byte[], since in general they may not be representable as String. This should be quite a bit more RAM efficient too, for US ascii content since each character would then use 1 byte not 2.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org