[ https://issues.apache.org/jira/browse/BOOKKEEPER-78?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ivan Kelly updated BOOKKEEPER-78: --------------------------------- Fix Version/s: (was: 4.2.0) > filterable metadata fields in Hedwig's message definition > --------------------------------------------------------- > > Key: BOOKKEEPER-78 > URL: https://issues.apache.org/jira/browse/BOOKKEEPER-78 > Project: Bookkeeper > Issue Type: New Feature > Components: hedwig-client, hedwig-server > Reporter: Matthieu Morel > Attachments: BOOKKEEPER-78.patch, BOOKKEEPER-78.patch_v2 > > > In order to efficiently implement filtering of Hedwig messages, Hedwig should > be able to rely on metadata information. (i.e. without needing to deserialize > the content of the message) > Filtering could use a subset of SQL (like in the JMS spec), leading to > queries such as : > "header1 like 'a' AND header2 IS NOT NULL" > For that purpose, I propose to add customizable metadata to the definition of > Hedwig messages, as header fields. > Metadata must be customizable because it may be arbitrary. We should provide > "map-like" containers according to the type of the metadata field. Metadata > fields would be accessed by name. > There are predefined headers for JMS that could be added as metadata fields > such as : destination (~topic), delivery mode (persistent or not), > expiration, priority, timestamp, correlation id (link to other message), > reply to, type and redelivered. I think only a subset of these should be > predefined headers, if any. > Adding metadata fields to Hedwig messages implies modifying the message > definition, which does not break backward compatibility when those fields are > added as optional in the protocol buffer definition. > -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira