Anyone know what could have changed ?
On restart I got the error below, the INFO level messages are ones I added to the CFRR…
INFO [main] 2011-08-31 12:05:29,935 ColumnFamilyRecordReader.java (line 157) InetAddress.getAllByName() /172.16.1.4
INFO [main] 2011-08-31 12:05:29,935 ColumnFamilyRecordReader.java (line 167) split.getLocations() 0.0.0.0
INFO [main] 2011-08-31 12:05:29,935 ColumnFamilyRecordReader.java (line 172) InetAddress.getByName() /0.0.0.0
ERROR [main] 2011-08-31 12:05:29,936 SessionState.java (line 343) Failed with exception java.io.IOException:java.io.IOException: java.lang.RuntimeException: java.lang.UnsupportedOperationException: no local connection available
java.io.IOException: java.io.IOException: java.lang.RuntimeException: java.lang.UnsupportedOperationException: no local connection available
at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:341)
at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:133)
at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:1114)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:187)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:241)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:456)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
Caused by: java.io.IOException: java.lang.RuntimeException: java.lang.UnsupportedOperationException: no local connection available
at org.apache.hadoop.hive.cassandra.input.HiveCassandraStandardColumnInputFormat.getRecordReader(HiveCassandraStandardColumnInputFormat.java:109)
at org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:306)
at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:320)
... 10 more
Caused by: java.lang.RuntimeException: java.lang.UnsupportedOperationException: no local connection available
at org.apache.cassandra.hadoop.ColumnFamilyRecordReader.initialize(ColumnFamilyRecordReader.java:137)
at org.apache.hadoop.hive.cassandra.input.HiveCassandraStandardColumnInputFormat.getRecordReader(HiveCassandraStandardColumnInputFormat.java:105)
... 12 more
Caused by: java.lang.UnsupportedOperationException: no local connection available
at org.apache.cassandra.hadoop.ColumnFamilyRecordReader.getLocation(ColumnFamilyRecordReader.java:184)
at org.apache.cassandra.hadoop.ColumnFamilyRecordReader.initialize(ColumnFamilyRecordReader.java:118)
... 13 more
It looked like a mis match between the IP address in the splits and the current IP address. Odd, but I tried changing the listen_address, rpc_address and seed to use the 172 address.
Then I started getting errors that other things were trying to connect to localhost. So I changed localhost to 172… in
hadoop/conf/masters
hadoop/conf/slaves
hadoop/webapps/conf/core-site.xml
hadoop/webapps/conf/masters
hadoop/webapps/conf/slaves
Then I started getting errors on cassandra startup that the task tracker could not connect to 127.0.0.1. So I did this in the CLI
[default@brisk_system] list jobtracker;
Using default limit of 100
-------------------
RowKey: currentJobTracker
=> (column=current, value=127.0.0.1, timestamp=1314398419720)
1 Row Returned.
[default@brisk_system] del jobtracker['currentJobTracker'];
Then I restarted and got these continually logged
CassandraJobConf.java (line 102) Chose seed 172.16.1.4 as jobtracker
And I notice it's not written back to the db
[default@brisk_system] list jobtracker;
Using default limit of 100
-------------------
RowKey: currentJobTracker
1 Row Returned.
When I start Hive and try to use an existing DB I get this error….
WARN [main] 2011-08-31 13:08:10,866 CassandraProxyClient.java (line 347) Connection failed to Cassandra node: localhost:9160 unable to connect to server
WARN [main] 2011-08-31 13:08:10,866 CassandraProxyClient.java (line 354) No cassandra ring information found, no other nodes to connect to
ERROR [main] 2011-08-31 13:08:11,919 SessionState.java (line 343) FAILED: Error in metadata: org.apache.cassandra.hadoop.hive.metastore.CassandraHiveMetaStoreException: There was a problem with the Cassandra Hive MetaStore: Could not connect to Cassandra. Reason: Error connecting to node localhost
org.apache.hadoop.hive.ql.metadata.HiveException: org.apache.cassandra.hadoop.hive.metastore.CassandraHiveMetaStoreException: There was a problem with the Cassandra Hive MetaStore: Could not connect to Cassandra. Reason: Error connecting to node localhost
at org.apache.hadoop.hive.ql.metadata.Hive.dropDatabase(Hive.java:255)
at org.apache.hadoop.hive.ql.exec.DDLTask.dropDatabase(DDLTask.java:2959)
at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:193)
at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:130)
at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:57)
at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1063)
at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:900)
at org.apache.hadoop.hive.ql.Driver.run(Driver.java:748)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:164)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:241)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:456)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
Caused by: org.apache.cassandra.hadoop.hive.metastore.CassandraHiveMetaStoreException: There was a problem with the Cassandra Hive MetaStore: Could not connect to Cassandra. Reason: Error connecting to node localhost
at org.apache.cassandra.hadoop.hive.metastore.CassandraClientHolder.<init>(CassandraClientHolder.java:60)
at org.apache.cassandra.hadoop.hive.metastore.CassandraHiveMetaStore.setConf(CassandraHiveMetaStore.java:69)
at org.apache.hadoop.util.ReflectionUtils.setConf(ReflectionUtils.java:62)
at org.apache.hadoop.util.ReflectionUtils.newInstance(ReflectionUtils.java:117)
at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.getMS(HiveMetaStore.java:316)
at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.executeWithRetry(HiveMetaStore.java:268)
at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.createDefaultDB(HiveMetaStore.java:413)
at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.init(HiveMetaStore.java:194)
at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.<init>(HiveMetaStore.java:159)
at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.<init>(HiveMetaStoreClient.java:108)
at org.apache.hadoop.hive.ql.metadata.Hive.createMetaStoreClient(Hive.java:1855)
at org.apache.hadoop.hive.ql.metadata.Hive.getMSC(Hive.java:1865)
at org.apache.hadoop.hive.ql.metadata.Hive.dropDatabase(Hive.java:251)
... 15 more
Caused by: java.io.IOException: Error connecting to node localhost
at org.apache.cassandra.hadoop.CassandraProxyClient.initialize(CassandraProxyClient.java:208)
at org.apache.cassandra.hadoop.CassandraProxyClient.<init>(CassandraProxyClient.java:180)
at org.apache.cassandra.hadoop.CassandraProxyClient.newProxyConnection(CassandraProxyClient.java:119)
at org.apache.cassandra.hadoop.hive.metastore.CassandraClientHolder.<init>(CassandraClientHolder.java:52)
... 27 more
Looks like the tables are still thinking about the localhost.
-----------------
Aaron Morton
Freelance Cassandra Developer
@aaronmorton
http://www.thelastpickle.com
I needed to install a newer version of cassandra on brisk, and bumped
in this issue. In the end of the day I applied a patch (the Aaron to
CASSANDRA-2981) in the 0.8.1 version. (I didn't try to solve the
issue, I was worried about collateral effects)
2011/9/8 Patricio Echagüe <patr...@datastax.com>: