You are a good man Clint. On Thu, Jun 4, 2009 at 2:38 PM, Clint Morgan <[email protected]>wrote:
> Ok, I tracked down the issue: > > HLog:803 > queue.push(new HLogEntry(val, key)); > > The same val and key references are used in the iterator, so they keep > changing their contents as we .next() through the loop. > > Thus, when we are done, all the HLogEntries in logEntries will have the > same > HLogEdits and HLogKeys! I don't think this would have ever worked unless > there is only one region in the log being split. > > I guess the solution is to deep copy those val and key contents... > > -clint > > On Thu, Jun 4, 2009 at 10:38 AM, stack <[email protected]> wrote: > > > If you can figure whats up, that'd be great Clint. > > St.Ack > > > > On Thu, Jun 4, 2009 at 10:15 AM, Clint Morgan <[email protected] > > >wrote: > > > > > I did not properly close the log, just did a kill -9 on the > regionserver. > > > But I was using local filesystem so I thought the WAL appends would get > > > through. It appears some did... > > > > > > I'm not worried about the META. > > > > > > The debug log does sound like it sees my changes in the WAL (to the > > BaseLog > > > table, and its index), but it does not apply them appropriately... > > > > > > > > > On Thu, Jun 4, 2009 at 10:04 AM, stack <[email protected]> wrote: > > > > > > > Clint, as J-D suggests, you sure the edit made into a properly closed > > log > > > > first (I'm guessing you did)? If not, you can make it happen by > tuning > > > > down > > > > the time between log flushes -- its new config > > > > hbase.regionserver.logroll.period. > > > > St.Ack > > > > > > > > On Thu, Jun 4, 2009 at 9:35 AM, Jean-Daniel Cryans < > > [email protected] > > > > >wrote: > > > > > > > > > Clint, > > > > > > > > > > Don't dig too deep, META edits will always be missed until we can > > > > > flush every edits. > > > > > > > > > > J-D > > > > > > > > > > On Thu, Jun 4, 2009 at 12:31 PM, Clint Morgan < > [email protected]> > > > > > wrote: > > > > > > I the meta edits did not get applied correctly. The only changes > > were > > > > > > region->server assignments, and after replay it still had the old > > > > > > assignments. > > > > > > > > > > > > I had made one explicit change to another table before the hard > > > > restart, > > > > > and > > > > > > that change did not get recovered either. > > > > > > > > > > > > I'll dig deeper today... > > > > > > -clint > > > > > > > > > > > > On Wed, Jun 3, 2009 at 7:22 PM, stack <[email protected]> wrote: > > > > > > > > > > > >> On Wed, Jun 3, 2009 at 5:53 PM, Clint Morgan < > > [email protected]> > > > > > wrote: > > > > > >> > > > > > >> > Which seems weird because the hlog path points to a table's > > > > directory > > > > > >> which > > > > > >> > is a different table than the given region. Does this seem > > right? > > > > > >> > > > > > > >> > > > > > > >> No. It seems badly wrong. I took a quick look at HLog#splitLog > > and > > > > how > > > > > >> its > > > > > >> making up name of the file to write to. I don't see anything > > > obvious. > > > > > Its > > > > > >> using the HLogKey it got out of the commit log. This in turn > > looks > > > > like > > > > > it > > > > > >> has right table name going in -- it gets it from region whose > > commit > > > > is > > > > > >> being logged. > > > > > >> > > > > > >> I see in below that it made queues for -ROOT- and .META. Did > > these > > > > > edits > > > > > >> get split into the right location? > > > > > >> > > > > > >> St.Ack > > > > > >> > > > > > >> > > > > > >> > > > > > >> > A larger portion of the log is below. > > > > > >> > > > > > > >> > [03/06/09 16:35:34] 530059 [ HMaster] INFO > > > > > >> > hadoop.hbase.regionserver.HLog - Splitting 1 log(s) in > > > > > >> > > > > file:/opt/troove-data/hadoop/hbase/log_10.0.1.196_1244071611670_7802 > > > > > >> > [03/06/09 16:35:34] 530060 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Splitting hlog 1 of 1: > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/log_10.0.1.196_1244071611670_7802/hlog.dat.1244071612170, > > > > > >> > length=45056 > > > > > >> > [03/06/09 16:35:35] 530106 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for -ROOT-,,0 > > > > > >> > [03/06/09 16:35:35] 530110 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for .META.,,1 > > > > > >> > [03/06/09 16:35:35] 530120 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for > > > > > >> > TransactionStatus,,1244059490418 > > > > > >> > [03/06/09 16:35:35] 530121 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for > > > > > >> > net_troove_coin_project_Project,,1244059485284 > > > > > >> > [03/06/09 16:35:35] 530122 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for > > > > > >> > net_troove_security_ApplicationUser,,1244059486102 > > > > > >> > [03/06/09 16:35:35] 530124 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for > > > > > >> > net_troove_coin_timeexpense_BaseLog,,1244059487257 > > > > > >> > [03/06/09 16:35:35] 530124 [ HMaster] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Adding queue for > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING,,1244059487520 > > > > > >> > [03/06/09 16:35:35] 530133 [pool-1-thread-1] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 2 to process > > > > > >> > [03/06/09 16:35:35] 530137 [pool-1-thread-3] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 7 to process > > > > > >> > [03/06/09 16:35:35] 530137 [pool-1-thread-2] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 220 to process > > > > > >> > [03/06/09 16:35:35] 530144 [pool-1-thread-4] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 1 to process > > > > > >> > [03/06/09 16:35:35] 530149 [pool-1-thread-5] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 18 to process > > > > > >> > [03/06/09 16:35:35] 530157 [pool-1-thread-6] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 10 to process > > > > > >> > [03/06/09 16:35:35] 530209 [pool-1-thread-7] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Thread got 10 to process > > > > > >> > [03/06/09 16:35:35] 530325 [pool-1-thread-3] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/228384672/oldlogfile.log > > > > > >> > and region TransactionStatus,,1244059490418 > > > > > >> > [03/06/09 16:35:35] 530326 [pool-1-thread-3] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Applied 7 total edits to > > > > > >> > TransactionStatus,,1244059490418 in 187ms > > > > > >> > [03/06/09 16:35:35] 530328 [pool-1-thread-1] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/70236052/oldlogfile.log > > > > > >> > and region -ROOT-,,0 > > > > > >> > [03/06/09 16:35:35] 530328 [pool-1-thread-5] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/767391690/oldlogfile.log > > > > > >> > and region net_troove_coin_timeexpense_BaseLog,,1244059487257 > > > > > >> > [03/06/09 16:35:35] 530329 [pool-1-thread-5] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Applied 18 total edits to > > > > > >> > net_troove_coin_timeexpense_BaseLog,,1244059487257 in 173ms > > > > > >> > [03/06/09 16:35:35] 530329 [pool-1-thread-6] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/364454454/oldlogfile.log > > > > > >> > and region > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING,,1244059487520 > > > > > >> > [03/06/09 16:35:35] 530329 [pool-1-thread-6] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Applied 10 total edits to > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING,,1244059487520 > > > > > >> > in 154ms > > > > > >> > [03/06/09 16:35:35] 530330 [pool-1-thread-2] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/1028785192/oldlogfile.log > > > > > >> > and region .META.,,1 > > > > > >> > [03/06/09 16:35:35] 530328 [pool-1-thread-4] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/124273138/oldlogfile.log > > > > > >> > and region net_troove_coin_project_Project,,1244059485284 > > > > > >> > [03/06/09 16:35:35] 530331 [pool-1-thread-4] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Applied 1 total edits to > > > > > >> > net_troove_coin_project_Project,,1244059485284 in 187ms > > > > > >> > [03/06/09 16:35:35] 530330 [pool-1-thread-7] DEBUG > > > > > >> > hadoop.hbase.regionserver.HLog - Creating new hlog file > writer > > > for > > > > > path > > > > > >> > > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > file:/opt/troove-data/hadoop/hbase/net_troove_coin_timeexpense_BaseLog-Base_Employee_ASCENDING/395668855/oldlogfile.log > > > > > >> > and region net_troove_security_ApplicationUser,,1244059486102 > > > > > >> > > > > > > >> > > > > > > > > > > > > > > > > > > > > >
