Hi guys,
I have been playing around with HBaseStorage (latest code from TRUNK) and I
have noticed one thing which could be defect.
Initialize method from HBaseStorage
public void initialize(Class<K> keyClass, Class<T> persistentClass,
Properties properties) throws IOException {
super.initialize(keyClass, persistentClass, properties);
this.conf = HBaseConfiguration.create(getConf());
admin = new HBaseAdmin(this.conf);
try {
mapping = readMapping(getConf().get(PARSE_MAPPING_FILE_KEY,
DEFAULT_MAPPING_FILE));
} catch (FileNotFoundException ex) {
try {
mapping = readMapping(getConf().get(PARSE_MAPPING_FILE_KEY,
DEPRECATED_MAPPING_FILE));
log.warn(DEPRECATED_MAPPING_FILE + " is deprecated, please rename
the file to "
+ DEFAULT_MAPPING_FILE);
} catch (FileNotFoundException ex1) {
throw ex; //throw the original exception
} catch (Exception ex1) {
log.warn(DEPRECATED_MAPPING_FILE + " is deprecated, please rename
the file to "
+ DEFAULT_MAPPING_FILE);
throw new RuntimeException(ex1);
}
} catch (Exception e) {
throw new RuntimeException(e);
}
if(autoCreateSchema) {
createSchema();
}
table = new HTable(mapping.getTableName());
}
is creating HTable without configuration parameter which is causing this
error:
java.net.ConnectException: Connection refused: no further information
at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method)
at sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:574)
at org.apache.zookeeper.ClientCnxn$SendThread.run(ClientCnxn.java:1119)
11/10/11 16:22:33 INFO zookeeper.ClientCnxn: Opening socket connection to
server localhost/0:0:0:0:0:0:0:1:2181
In my opinion HTable should be created using this code:
table = new HTable(conf, mapping.getTableName());
What do you think about this ?
Regards,
dinok