[hibernate-issues] [Hibernate-JIRA] Commented: (HSEARCH-851) Make Avro an optional dependency but add dependency list in documentation for JMS and JGroups backends

Emmanuel Bernard (JIRA) noreply at atlassian.com
Fri Aug 19 12:53:03 EDT 2011


    [ http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-851?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=43284#comment-43284 ] 

Emmanuel Bernard commented on HSEARCH-851:
------------------------------------------

There are unforeseen consequences to making Avro an optional dependency.
By doing that, I must make the SerializerProvider build process lazy or tolerant at Runtime if Avro is not here. 
The problem with this approach is that if a user forgets to add Avro as a dependency, his system will fail the first time a message ought to be (de)serialized *at runtime* as opposed to fail at configuration time.

I was thinking of asking the backend if it needs a SerializationProvider and behave accordingly but it's not enough. On the receiving end, ie JMS or JGroups master, we do retrieve the index manager from the message (based on the index name) and then find the appropriate SerializationProvider. In this case the underlying backend does not need a SerializationProvider. It forces us to introduce an explicit flag to be set y the user to know whether or not the SerializationProvider is required

    hibernate.search.indexname.serializer required

I find that quite error prone and am inclined to think that leaving Avro a required dependency is the less of two evils.

What do you think?
do you have an alternative approach that would work around the problem?

> Make Avro an optional dependency but add dependency list in documentation for JMS and JGroups backends
> ------------------------------------------------------------------------------------------------------
>
>                 Key: HSEARCH-851
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HSEARCH-851
>             Project: Hibernate Search
>          Issue Type: Improvement
>          Components: build, documentation
>            Reporter: Emmanuel Bernard
>            Assignee: Emmanuel Bernard
>             Fix For: 4.0
>
>


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list