Also, could you try rolling back to your original configuration and check that everything goes back to normal?
2010/3/5 Dan Washusen <d...@reactive.org>: > Then something is not right... Could you post up a region server log in > pastebin? > > 2010/3/5 Ted Yu <yuzhih...@gmail.com> > >> I searched all existing hbase logs but didn't see 'Filled indices for >> region' >> >> 2010/3/4 Dan Washusen <d...@reactive.org> >> >> > Hi Ted, >> > Did you verify that all the regions came back online after re-enabling >> the >> > table? Depending on the size of the table it may time some time... >> > >> > You should see something like the following logged in the region server >> > logs >> > for each region: >> > >> > > Filled indices for region: 'ruletable,,1267641828807' with 55555555 >> > entries >> > > in 00:05:99 >> > >> > >> > Cheers, >> > Dan >> > >> > 2010/3/5 Ted Yu <yuzhih...@gmail.com> >> > >> > > 2010/3/3 Ted Yu <yuzhih...@gmail.com> >> > > >> > > > Hi, >> > > > I wrote a utility to add index to my table. >> > > > After running it, I couldn't see the rows in that table I saw before. >> > > > >> > > > hbase(main):007:0> count 'ruletable' >> > > > NativeException: >> > > org.apache.hadoop.hbase.client.NoServerForRegionException: >> > > > No server address listed in .META. for region >> ruletable,,1267641828807 >> > > > >> > > > My code follows, how do I determine the correct IdxQualifierType ? >> > > > >> > > > >> > > > HBaseAdmin admin = new HBaseAdmin(conf); >> > > > admin.disableTable(tableName); >> > > > System.out.println(tableName + " disabled"); >> > > > >> > > > for (int i = 1; i < otherArgs.length; i+=2) >> > > > { >> > > > String colFam = otherArgs[i]; >> > > > byte[] familyName = Bytes.toBytes(colFam); >> > > > byte[] qualifier = Bytes.toBytes(otherArgs[i+1]); >> > > > >> > > > IdxColumnDescriptor idxColumnDescriptor = new >> > > > IdxColumnDescriptor(familyName); >> > > > IdxIndexDescriptor indexDescriptor = new >> > > > IdxIndexDescriptor(qualifier, IdxQualifierType.CHAR_ARRAY); >> > > > idxColumnDescriptor.addIndexDescriptor(indexDescriptor); >> > > > >> > > > admin.modifyColumn(tableName, colFam, idxColumnDescriptor); >> > > > System.out.println(colFam + ":" + otherArgs[i+1] + " >> indexed"); >> > > > } >> > > > admin.enableTable(tableName); >> > > > >> > > > >> > > > >> > > > 2010/2/26 Ram Kulbak <ram.kul...@gmail.com> >> > > > >> > > >> You will need to use an IdxColumnDescriptor: >> > > >> >> > > >> Here's a code example for creating a table with a byte array index: >> > > >> >> > > >> HTableDescriptor tableDescriptor = new >> > HTableDescriptor(TABLE_NAME); >> > > >> IdxColumnDescriptor idxColumnFamilyDescriptor = new >> > > >> IdxColumnDescriptor(FAMILY_NAME); >> > > >> try { >> > > >> idxColumnFamilyDescriptor.addIndexDescriptor( >> > > >> new IdxIndexDescriptor(QUALIFIER_NAME, >> > > IdxQualifierType.BYTE_ARRAY) >> > > >> ); >> > > >> } catch (IOException e) { >> > > >> throw new IllegalStateException(e); >> > > >> } >> > > >> tableDescriptor.addFamily(idxColumnFamilyDescriptor); >> > > >> >> > > >> >> > > >> You can add several index descriptors to the same column family and >> > > >> you can put indexes on more than one column families. You should use >> > > >> IdxScan with an org.apache.hadoop.hbase.client.idx.exp.Expression >> set >> > > >> to match your query criteria. The expression may cross columns from >> > > >> the same or different families using ANDs and ORs. >> > > >> >> > > >> Note that several index types are supported. Current types include >> all >> > > >> basic types and BigDecimals. Char arrays are also supported. Types >> > > >> allow for correct range checking (for example you can quickly >> evaluate >> > > >> a scan getting all rows for which a given column has values between >> 42 >> > > >> and 314). You should make sure that columns which are indexed with a >> > > >> given qualifier type are actually populated with bytes matching >> their >> > > >> type, e.g. it you use IdxQualifierType.LONG make sure that you >> > > >> actually put values which are 8-long byte arrays which were produced >> > > >> in a method similar to Bytes.toBytes(long). >> > > >> >> > > >> Yoram >> > > >> >> > > >> 2010/2/27 Ted Yu <yuzhih...@gmail.com>: >> > > >> > Ram: >> > > >> > How do I specify index in HColumnDescriptor that is passed to >> > > >> modifyColumn() >> > > >> > ? >> > > >> > >> > > >> > Thanks >> > > >> > >> > > >> > 2010/2/26 Ram Kulbak <ram.kul...@gmail.com> >> > > >> >> >> > > >> >> Hi Shen, >> > > >> >> >> > > >> >> The first thing you need to verify is that you can switch to the >> > > >> >> IdxRegion implementation without problems. I've just checked that >> > the >> > > >> >> following steps work on the PerformanceEvaluation tables. I would >> > > >> >> suggest you backup your hbase production instance before >> attempting >> > > >> >> this (or create and try it out on a sandbox instance) >> > > >> >> >> > > >> >> * Stop hbase >> > > >> >> * Edit conf/hbase-env.sh file and add IHBASE to your classpath. >> > > >> >> Here's an example which assumes you don't need to add anything >> else >> > > to >> > > >> >> your classpath, make sure the HBASE_HOME is defined or simply >> > > >> >> substiute it with the full path of hbase installation directory: >> > > >> >> export HBASE_CLASSPATH=(`find $HBASE_HOME/contrib/indexed -name >> > > >> >> '*jar' | tr -s "\n" ":"`) >> > > >> >> >> > > >> >> * Edit conf/hbase-site.xml and set IdxRegion to be the region >> > > >> >> implementation: >> > > >> >> >> > > >> >> <property> >> > > >> >> <name>hbase.hregion.impl</name> >> > > >> >> <value>org.apache.hadoop.hbase.regionserver.IdxRegion</value> >> > > >> >> </property> >> > > >> >> >> > > >> >> * Propagate the configuration to all slaves >> > > >> >> * Start HBASE >> > > >> >> >> > > >> >> >> > > >> >> Next, modify the table you want to index using code similar to >> > this: >> > > >> >> >> > > >> >> HBaseConfiguration conf = new HBaseConfiguration(); >> > > >> >> >> > > >> >> HBaseAdmin admin = new HBaseAdmin(conf); >> > > >> >> admin.disableTable(TABLE_NAME); >> > > >> >> admin.modifyColumn(TABLE_NAME, FAMILY_NAME1, >> > > >> IDX_COLUMN_DESCRIPTOR1); >> > > >> >> ... >> > > >> >> admin.modifyColumn(TABLE_NAME, FAMILY_NAMEN, >> > > >> IDX_COLUMN_DESCRIPTORN); >> > > >> >> admin.enableTable(TABLE_NAME); >> > > >> >> >> > > >> >> Wait for the table to get indexed. This may take a few minutes. >> > Check >> > > >> >> the master web page and verify your index definitions appear >> > > correctly >> > > >> >> in the table description. >> > > >> >> >> > > >> >> This is it. Please let me know how it goes. >> > > >> >> >> > > >> >> Yoram >> > > >> >> >> > > >> >> >> > > >> >> >> > > >> >> >> > > >> >> 2010/2/26 ChingShen <chingshenc...@gmail.com>: >> > > >> >> > Thanks, But I think I need the indexed HBase rather than >> > > >> transactional >> > > >> >> > HBase. >> > > >> >> > >> > > >> >> > Shen >> > > >> >> > >> > > >> >> > 2010/2/26 <y_823...@tsmc.com> >> > > >> >> > >> > > >> >> >> You can try my code to create a index in the existing table. >> > > >> >> >> >> > > >> >> >> public void AddIdx2ExistingTable(String tablename,String >> > > >> >> >> columnfamily,String idx_column) throws IOException { >> > > >> >> >> IndexedTableAdmin admin = null; >> > > >> >> >> admin = new IndexedTableAdmin(config); >> > > >> >> >> admin.addIndex(Bytes.toBytes(tablename), new >> > > >> >> >> IndexSpecification(idx_column, >> > > >> >> >> Bytes.toBytes(columnfamily+":"+idx_column))); >> > > >> >> >> } >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> Fleming Chiu(邱宏明) >> > > >> >> >> 707-6128 >> > > >> >> >> y_823...@tsmc.com >> > > >> >> >> 週一無肉日吃素救地球(Meat Free Monday Taiwan) >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> ChingShen >> > > >> >> >> <chingshenc...@gm To: >> > hbase-user >> > > < >> > > >> >> >> hbase-user@hadoop.apache.org> >> > > >> >> >> ail.com> cc: (bcc: >> > > >> >> >> Y_823910/TSMC) >> > > >> >> >> Subject: >> [Indexed >> > > >> HBase] >> > > >> >> >> Can >> > > >> >> >> I add index in an existing table? >> > > >> >> >> 2010/02/26 10:18 >> > > >> >> >> AM >> > > >> >> >> Please respond to >> > > >> >> >> hbase-user >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> Hi, >> > > >> >> >> >> > > >> >> >> I got http://issues.apache.org/jira/browse/HBASE-2037 that >> can >> > > >> create a >> > > >> >> >> new >> > > >> >> >> table with index, but can I add index in an existing table? >> > > >> >> >> Any code examples? >> > > >> >> >> >> > > >> >> >> Thanks. >> > > >> >> >> >> > > >> >> >> Shen >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> > > >> > >> --------------------------------------------------------------------------- >> > > >> >> >> TSMC >> > > >> PROPERTY >> > > >> >> >> This email communication (and any attachments) is proprietary >> > > >> >> >> information >> > > >> >> >> for the sole use of its >> > > >> >> >> intended recipient. Any unauthorized review, use or >> > distribution >> > > by >> > > >> >> >> anyone >> > > >> >> >> other than the intended >> > > >> >> >> recipient is strictly prohibited. If you are not the >> intended >> > > >> >> >> recipient, >> > > >> >> >> please notify the sender by >> > > >> >> >> replying to this email, and then delete this email and any >> > copies >> > > >> of >> > > >> >> >> it >> > > >> >> >> immediately. Thank you. >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> > > >> > >> --------------------------------------------------------------------------- >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> >> >> > > >> >> > >> > > >> >> > >> > > >> >> > -- >> > > >> >> > ***************************************************** >> > > >> >> > Ching-Shen Chen >> > > >> >> > Advanced Technology Center, >> > > >> >> > Information & Communications Research Lab. >> > > >> >> > E-mail: chenchings...@itri.org.tw >> > > >> >> > Tel:+886-3-5915542 >> > > >> >> > ***************************************************** >> > > >> >> > >> > > >> > >> > > >> > >> > > >> >> > > > >> > > > >> > > >> > >> >