lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael McCandless (JIRA)" <>
Subject [jira] Commented: (LUCENE-1473) Implement Externalizable in main top level searcher classes
Date Tue, 02 Dec 2008 22:56:44 GMT


Michael McCandless commented on LUCENE-1473:

bq. The serialVersionUID needs to be written if the class is going to evolve.

Can we use a byte, not long, for serialVersionUID?  And maybe change its name to SERIAL_VERSION?
 (I think serialVersionUID is completely unused once you implement Externalizable?).

This brings up another question: what's our back compat policy here?  For how many releases
after you've serialized a Term can you still read it back?  This is getting complicated...
I'm wondering if we shouldn't even go here (ie, make any promise that something serialized
in release X will be deserializable on release Y).

I also think serialization is better done "at the top" where you can do a better job encoding
things.  EG this is the purpose of the TermsDict (to serialize many Terms, in sorted order).

Jason, what's the big picture use case here; what are you serializing?

> Implement Externalizable in main top level searcher classes
> -----------------------------------------------------------
>                 Key: LUCENE-1473
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Search
>    Affects Versions: 2.4
>            Reporter: Jason Rutherglen
>            Priority: Minor
>         Attachments: LUCENE-1473.patch
> To maintain serialization compatibility between Lucene versions, major classes can implement
Externalizable.  This will make Serialization faster due to no reflection required and maintain
backwards compatibility.  

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:
For additional commands, e-mail:

View raw message