On 22/07/11 10:26, Eric Charles wrote:
2. I am very close to finishing the HBase implementation. There is
just HBaseMessageMapper() left to implement (about tow days work) and
it should be ready for real life tests.

I will give feedback on current implementation this weekend.

Hi Ioan,

First feedback's:

- Build and test run fine.

- Test take time, this is due to minicluster start/stopn, but I see luster is already launched with a @BeforeClass. maybe some tests could be grouped in a TestSuite, the TestSuite being responsible to launch the minicluster. this would need some

- HBaseSubscription: don't throw NullPointerException, but IllegalArgumentException

- HBaseSubscription: There's a TODO move all HBase related operations into it's own class. Do you mean you will move SUBSCRIPTION_CF, MARKER and toPut to another class? Indeed, now, you create the Put in HBaseSubscription and Delete in HBaseSubscriptionMapper.

- Everywhere: when you open a HTable, you need to close() it in a finally block.

- HBaseMailboxManager: I would get rid of useStreaming.

- HBaseMailbox: UUID already ensure you some kind of unique id. This is a classical way to create a unique id in nosql.

- I was confused with HBaseUtils.mailboxRowKey(HBaseMailbox). You are using it to transform the UUID and create the needed Put, Delete..., and when you recreate a HBaseMailbox, you use UUIDFromRowKey. I suppose you gain place using the Most and Least Significant Bits. Is this the goal ? If yes, you can document it in javadoc and even have a special class UUIDRowKeyConverter to make this conversion instead of having it in HBaseUtils. I would even split the public final constants in a separate interfaces and have the util methods in their own classes.

- You don't use the XML configuration previously parsed with jaxme? How are you going to inject the HBaseMailboxSessionMapperFactory with its Configuration conf. This is classically done in James via Spring. You can try with mailbox-spring to be sure we've got a way to do it.

When you will get futher in MessageManager, you will have to pay attention to spring wiring and mailbox integration tests, so still much work (the suggested 'pencils down' date being 16/8).

Good work!

--
Eric Charles
http://about.echarles.net

---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org
For additional commands, e-mail: server-dev-h...@james.apache.org

Reply via email to