[
https://issues.apache.org/jira/browse/LUCENE-1473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12652882#action_12652882
]
Doug Cutting commented on LUCENE-1473:
--------------------------------------
> But, what's now being asked for (expected) with this issue is "long-term
> persistence", which is really a very different beast and a much taller order.
That's the crux, alright. Does Lucene want to start adding cross-version
guarantees about the durability of its objects when serialized by Java
serialization. This is a hard problem. Systems like Thrift and
ProtocolBuffers offer support for this, but Java Serialiation itself doesn't
really provide much assistance. One can roll one's own serialization
compatibility story manually, as proposed by this patch, but that adds a burden
to the project. We'd need, for example, test cases that keep serialized
instances from past versions, so that we can be sure that patches do not break
this.
The use case provided may not use RMI, but it is similar: it involves
transmitting Lucene objects over the wire between different versions of Lucene.
Since Java APIs, like Lucene, do not generally provide cross-version
compatibility, it would be safer to architect such a system so that it controls
the serialization of transmitted instances itself and can thus guarantee their
compatibility as the system is updated. Thus it would develop its own
representations for queries independent of Lucene's Query, and map this to
Lucene's Query. Is that not workable in this case?
> Implement Externalizable in main top level searcher classes
> -----------------------------------------------------------
>
> Key: LUCENE-1473
> URL: https://issues.apache.org/jira/browse/LUCENE-1473
> 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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]