Thanks Clint! This is a great overview, answers my question and confirms my suspicion of an inappropriate shutdown on my part.
-GS On Mon, Apr 19, 2010 at 7:41 PM, Clint Morgan <clint.mor...@troove.net>wrote: > Yes, you should be able to mix in the use of transactional tables. You > can access tables w/out the transactional semantics/overhead as > normal, even when running a TransactionalRegionServer. You also can > use the same tables w/out the TRS extension, however edits will not be > reflected in indexes. > > The error message you hit happens when a regionserver goes down hard, > and the master tries to split its WAL. The transactional contrib > extends the WAL by adding keys for transactional ops. In order for the > master to know about the key type, a bit of config is needed (from > package.html in o.a.h.h.client.transactional) > > Additionally, to properly recover from the write-ahead-log, the > transactional log > key class must be registered by setting > <i>hbase.regionserver.hlog.keyclass</i> > to <i>org.apache.hadoop.hbase.regionserver.transactional.THLogKey</i> > > The WAL aspect of the transactional layer is due for an overhaul now > that the base WALing has been reworked for hdfs w/append. > > cheers, > -clint > > On Fri, Apr 16, 2010 at 8:25 AM, George Stathis <gstat...@gmail.com> > wrote: > > Contrib transactional (org.apache.hadoop.hbase.client.tableindexed), > version > > 0.20.3 tag with this patch applied ( > > https://issues.apache.org/jira/browse/HBASE-2426). I've been running on > this > > patch for over a week now and have not seen this warning until today, > after > > I introduced the regular HTable. > > > > Well I just restarted the local pseudo-cluster and the warning did not > > re-appear. So now I'm wondering if the warning was a by-product of > > an inappropriate shutdown. Master and Zookeeper keep freezing if my > laptop > > goes into hibernation mode, so I usually have to kill the processes since > > the regular shut down commands don't work. So I'm thinking that might be > the > > issue, although the warming was pointing to a transactional vs. > > non-transactional log key discrepancy. > > > > In any case, I don't want to suck people into a wild goose chance here. > I'll > > keep an eye on it. It might be that the patch is causing it although I > doubt > > it; it did not touch any of the log key classes. > > > > I really just wanted to know whether transactional and non-transactional > > tables could co-exist since the former requires > > an org.apache.hadoop.hbase.ipc.IndexedRegionInterface implementation to > > work. I was not sure whether the two were compatible but it seems that > they > > are expected to be. Correct? If so, this answers my question. > > > > -GS > > > > On Fri, Apr 16, 2010 at 10:57 AM, Michael Segel > > <michael_se...@hotmail.com>wrote: > > > >> > >> Interesting. > >> We haven't had an issue. > >> Are you using the ../contrib/transactional indexing or the other > package? > >> > >> > From: gstat...@gmail.com > >> > Date: Fri, 16 Apr 2010 10:33:02 -0400 > >> > Subject: OK to mix transactional tables with regular HTables? > >> > To: hbase-user@hadoop.apache.org > >> > > >> > Hello all, > >> > > >> > Is it OK to mix transactional IndexTable and regular HTables in the > same > >> > cluster? I am testing with both types and, while things seem to work > ok > >> in > >> > the hbase shell, I just got this interesting warning when I restarted > my > >> > local instance (see stack trace below). My data still seems to be > there > >> > though. > >> > > >> > Thank you in advance for your input. > >> > > >> > -GS > >> > > >> > > >> > 2010-04-16 10:26:00,518 WARN > org.apache.hadoop.hbase.regionserver.HLog: > >> > Exception processing > >> > hdfs://localhost:9000/hbase/.logs/192.168.1.16 > >> ,49693,1271367158426/hlog.dat.1271367158502 > >> > -- continuing. Possible DATA LOSS! > >> > java.io.IOException: wrong key class: > >> > org.apache.hadoop.hbase.regionserver.HLogKey is not class > >> > org.apache.hadoop.hbase.regionserver.transactional.THLogKey > >> > at > org.apache.hadoop.io.SequenceFile$Reader.next(SequenceFile.java:1824) > >> > at > org.apache.hadoop.io.SequenceFile$Reader.next(SequenceFile.java:1876) > >> > at org.apache.hadoop.hbase.regionserver.HLog.splitLog(HLog.java:966) > >> > at org.apache.hadoop.hbase.regionserver.HLog.splitLog(HLog.java:872) > >> > at > >> > > >> > org.apache.hadoop.hbase.master.HMaster.splitLogAfterStartup(HMaster.java:616) > >> > at > >> > > >> > org.apache.hadoop.hbase.master.HMaster.verifyClusterState(HMaster.java:550) > >> > at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:413) > >> > >> _________________________________________________________________ > >> The New Busy think 9 to 5 is a cute idea. Combine multiple calendars > with > >> Hotmail. > >> > >> > http://www.windowslive.com/campaign/thenewbusy?tile=multicalendar&ocid=PID28326::T:WLMTAGL:ON:WL:en-US:WM_HMP:042010_5 > >> > > >