[ 
https://issues.apache.org/jira/browse/GORA-167?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13628755#comment-13628755
 ] 

Roland von Herget commented on GORA-167:
----------------------------------------

Hi Lewis,

great :) This is in some way related to GORA-215, maybe I'll find time to do 
these things the same way, after this one is fixed.

So, here my comments:
- documentation of checkKeyspace() is a bit unclear to me:
  * "Unless explicitly turned off, Hadoop by default specifies two resources, 
loaded in-order from the classpath: "?!
  * "Applications may add additional resources, which are loaded subsequent to 
these resources in the order they are added"
  * And you're missing a few "</p>"
- I get test failures on my box:
{code}
Test set: org.apache.gora.cassandra.store.TestCassandraStore
-------------------------------------------------------------------------------
Tests run: 28, Failures: 0, Errors: 13, Skipped: 0, Time elapsed: 65.264 sec 
<<< FAILURE!
testTruncateSchema(org.apache.gora.cassandra.store.TestCassandraStore)  Time 
elapsed: 2.729 sec  <<< ERROR!
java.lang.NullPointerException: Null not allowed, number 1
        at me.prettyprint.cassandra.utils.Assert.noneNull(Assert.java:25)
        at 
me.prettyprint.cassandra.model.AbstractBasicQuery.<init>(AbstractBasicQuery.java:26)
        at 
me.prettyprint.cassandra.model.AbstractQuery.<init>(AbstractQuery.java:15)
        at 
me.prettyprint.cassandra.model.AbstractSliceQuery.<init>(AbstractSliceQuery.java:24)
        at 
me.prettyprint.cassandra.model.thrift.ThriftRangeSlicesQuery.<init>(ThriftRangeSlicesQuery.java:41)
        at 
me.prettyprint.hector.api.factory.HFactory.createRangeSlicesQuery(HFactory.java:447)
        at 
org.apache.gora.cassandra.store.CassandraClient.execute(CassandraClient.java:374)
        at 
org.apache.gora.cassandra.store.CassandraStore.addSubColumns(CassandraStore.java:158)
        at 
org.apache.gora.cassandra.store.CassandraStore.execute(CassandraStore.java:146)
        at org.apache.gora.query.impl.QueryBase.execute(QueryBase.java:71)
        at 
org.apache.gora.store.DataStoreTestUtil.assertNumResults(DataStoreTestUtil.java:495)
        at 
org.apache.gora.store.DataStoreTestUtil.assertEmptyResults(DataStoreTestUtil.java:490)
        at 
org.apache.gora.store.DataStoreTestUtil.testTruncateSchema(DataStoreTestUtil.java:114)
        at 
org.apache.gora.store.DataStoreTestBase.testTruncateSchema(DataStoreTestBase.java:152)
        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)
[...]
testPutNested(org.apache.gora.cassandra.store.TestCassandraStore)  Time 
elapsed: 2.239 sec  <<< ERROR!
java.lang.NullPointerException
        at 
org.apache.gora.cassandra.store.CassandraClient.addColumn(CassandraClient.java:216)
        at 
org.apache.gora.cassandra.store.CassandraStore.addOrUpdateField(CassandraStore.java:352)
        at 
org.apache.gora.cassandra.store.CassandraStore.flush(CassandraStore.java:228)
        at 
org.apache.gora.store.DataStoreTestBase.testPutNested(DataStoreTestBase.java:195)
        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.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:45)
        at 
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
        at 
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:42)
        at 
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
        at 
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
        at 
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:30)
[...]
{code}
(I'm on trunk - rev1466780 - patch applied with a few offsets, plain trunk has 
no errors during testing)

                
> Make Cassandra keyspace consistency configurable within gora.properties
> -----------------------------------------------------------------------
>
>                 Key: GORA-167
>                 URL: https://issues.apache.org/jira/browse/GORA-167
>             Project: Apache Gora
>          Issue Type: Improvement
>          Components: gora-cassandra
>    Affects Versions: 0.2.1
>            Reporter: Lewis John McGibbney
>            Assignee: Lewis John McGibbney
>            Priority: Minor
>             Fix For: 0.3
>
>         Attachments: GORA-167.patch
>
>
> Current in CassandraClient#checkKeyspace() consistency is hard coded such 
> that consistency level is .ONE which permits consistency to wait until one 
> replica has responded. This could be improved to enable users to specify 
> other consistency profiles e.g. 
>         ANY: Wait until some replica has responded.
>         ONE: Wait until one replica has responded.
>         TWO: Wait until two replicas have responded.
>         THREE: Wait until three replicas have responded.
>         LOCAL_QUORUM: Wait for quorum on the datacenter the connection was 
> stablished.
>         EACH_QUORUM: Wait for quorum on each datacenter.
>         QUORUM: Wait for a quorum of replicas (no matter which datacenter).
>         ALL: Blocks for all the replicas before returning to the client.
> Configuration should be made available through gora.properties

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to