[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on the issue:

https://github.com/apache/gora/pull/111
  
I have sent the PR on the aerospike client update. Thanks a lot @djkevincr 
for merging to the master. Thanks a lot to the great the support given. :)


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user lewismc commented on the issue:

https://github.com/apache/gora/pull/111
  
Can you guys possibly upgrade aerospike-client to most recent?

http://search.maven.org/#artifactdetails|com.aerospike|aerospike-client|4.0.6|jar


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on the issue:

https://github.com/apache/gora/pull/111
  
@nishadi This is really awesome work :) I am really happy to merge your 
work to the master. As we discussed please create tickets for any remaining 
work. Once again we are really thankful for your awesome contributions. 
Thanks all for reviewing the PR. @lewismc @kamaci @renato2099 


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on the issue:

https://github.com/apache/gora/pull/111
  
Locally tested Aerospike datastore tests with activating maven profile -  
mvn clean install -P aerospike-with-test

Results :

Tests run: 33, Failures: 0, Errors: 0, Skipped: 8




> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread lewis john mcgibbney (JIRA)

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

lewis john mcgibbney commented on GORA-502:
---

+1 merge

On Thu, Jul 27, 2017 at 2:12 PM ASF GitHub Bot (JIRA) 

-- 
http://home.apache.org/~lewismc/
@hectorMcSpector
http://www.linkedin.com/in/lmcgibbney


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r129876180
  
--- Diff: gora-aerospike/pom.xml ---
@@ -71,6 +71,14 @@
 
 
   
+org.apache.maven.plugins
+maven-surefire-plugin
+2.4.2
+
+  true
--- End diff --

@lewismc Shall I proceed merging the PR to master? Are you done with 
reviewing/happy with the changes?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-07-27 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r129768438
  
--- Diff: gora-aerospike/pom.xml ---
@@ -0,0 +1,174 @@
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+  4.0.0
+
+  
+org.apache.gora
+gora
+0.8-SNAPSHOT
+../
+  
+  gora-aerospike
+  bundle
+
+  Apache Gora :: Aerospike
+  http://gora.apache.org
+  The Apache Gora open source framework provides an in-memory 
data model and
+persistence for big data. Gora supports persisting to column stores, 
key value stores,
+document stores and RDBMSs, and analyzing the data with extensive 
Apache Hadoop MapReduce
+support.
+  2010
+  
+The Apache Software Foundation
+http://www.apache.org/
+  
+  
+JIRA
+https://issues.apache.org/jira/browse/GORA
+  
+  
+Jenkins
+https://builds.apache.org/job/Gora-trunk/
+  
+
+  
+*
+
org.apache.gora.aerospike*;version="${project.version}";-noimport:=true
+  
+
+  
+
+  aerospike-with-test
+  
+
+  
+org.apache.maven.plugins
+maven-surefire-plugin
+2.4.2
+
+  false
+
+  
+
+  
+
+  
+
+  
+target
+target/classes
+${project.artifactId}-${project.version}
+target/test-classes
+src/test/java
+src/main/java
+
+  
+${project.basedir}/src/test/conf
+
+  **/*
+
+  
+
+
+  
+org.apache.maven.plugins
+maven-surefire-plugin
+2.4.2
+
+  true
+
+  
+  
+org.codehaus.mojo
+build-helper-maven-plugin
+${build-helper-maven-plugin.version}
+
+  
+generate-sources
+
+  add-source
+
+
+  
+src/examples/java
+  
+
+  
+
+  
+
+  
+
+  
+
+
+  org.apache.gora
+  gora-core
+
+
+
+  org.apache.gora
+  gora-core
+  test-jar
+  test
+
+
+
+
+  com.aerospike
+  aerospike-client
+  ${aerospike.version}
+
+
+
+  org.apache.avro
+  avro
+
+
+
+
+  org.apache.hadoop
+  hadoop-client
+
+
+
+  org.jdom
+  jdom
+  compile
+
+
+
+
+  org.slf4j
+  slf4j-log4j12
+
+
+
+
+  org.testcontainers
+  testcontainers
+  1.1.0
+  test
--- End diff --

Please define the version separately in parent pom.


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-29 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on the issue:

https://github.com/apache/gora/pull/111
  
@kamaci thank you for reviewing. Added changes as suggested


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-29 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124719586
  
--- Diff: 
gora-aerospike/src/test/java/org/apache/gora/aerospike/GoraAerospikeTestDriver.java
 ---
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.gora.aerospike;
+
+import org.apache.gora.GoraTestDriver;
+import org.apache.gora.aerospike.store.AerospikeStore;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.store.DataStore;
+import org.apache.gora.store.DataStoreFactory;
+import org.apache.gora.util.GoraException;
+import org.testcontainers.containers.GenericContainer;
+
+import java.util.Properties;
+
+/**
+ * Helper class for third part tests using gora-aerospike backend.
+ * @see GoraTestDriver
+ */
+public class GoraAerospikeTestDriver extends GoraTestDriver {
+
+  private GenericContainer aerospikeContainer;
+  private Properties properties = DataStoreFactory.createProps();
+
+  public GoraAerospikeTestDriver(GenericContainer aerospikeContainer) {
+super(AerospikeStore.class);
+this.aerospikeContainer = aerospikeContainer;
+  }
+
+  @Override
+  public void setUpClass() throws Exception {
+
+// Wait for the aerospike server to be started in the container
+Thread.sleep(5000);
+
+properties.setProperty("server.ip", "localhost");
+properties.setProperty("server.port", 
aerospikeContainer.getMappedPort(3000).toString());
+  }
+
+  @Override
+  public void tearDownClass() throws Exception {
+  }
+
+  /**
+   * Instantiate a new {@link DataStore}. Uses 'null' schema.
+   *
+   * @param keyClass The key class.
+   * @param persistentClass The value class.
+   * @return A new store instance.
+   * @throws GoraException
--- End diff --

Added the exception description



> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-29 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124718683
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/package-info.java ---
@@ -0,0 +1,20 @@
+/**
--- End diff --

Updated the doc comment


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-29 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124718526
  
--- Diff: 
gora-aerospike/src/test/java/org/apache/gora/aerospike/GoraAerospikeTestDriver.java
 ---
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.gora.aerospike;
+
+import org.apache.gora.GoraTestDriver;
+import org.apache.gora.aerospike.store.AerospikeStore;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.store.DataStore;
+import org.apache.gora.store.DataStoreFactory;
+import org.apache.gora.util.GoraException;
+import org.testcontainers.containers.GenericContainer;
+
+import java.util.Properties;
+
+/**
+ * Helper class for third part tests using gora-aerospike backend.
+ * @see GoraTestDriver
+ */
+public class GoraAerospikeTestDriver extends GoraTestDriver {
+
+  private GenericContainer aerospikeContainer;
+  private Properties properties = DataStoreFactory.createProps();
+
+  public GoraAerospikeTestDriver(GenericContainer aerospikeContainer) {
+super(AerospikeStore.class);
+this.aerospikeContainer = aerospikeContainer;
+  }
+
+  @Override
+  public void setUpClass() throws Exception {
+
+// Wait for the aerospike server to be started in the container
+Thread.sleep(5000);
--- End diff --

I will check for a method to find out whether the server has been started 
in the docker container, so that we can use this framework in waiting for the 
status of the server


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-28 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124704093
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeMappingBuilder.java
 ---
@@ -0,0 +1,303 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import com.aerospike.client.policy.GenerationPolicy;
+import com.aerospike.client.policy.Policy;
+import com.aerospike.client.policy.RecordExistsAction;
+import com.aerospike.client.policy.WritePolicy;
+import org.jdom.Document;
+import org.jdom.Element;
+import org.jdom.input.SAXBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.jdom.JDOMException;
+
+import javax.naming.ConfigurationException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.HashMap;
+
+public class AerospikeMappingBuilder {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeMappingBuilder.class);
+
+  private AerospikeMapping aerospikeMapping;
+
+  public AerospikeMappingBuilder() {
+this.aerospikeMapping = new AerospikeMapping();
+  }
+
+  public AerospikeMapping getAerospikeMapping() {
+return this.aerospikeMapping;
+  }
+
+  /**
+   * Reads the gora aerospike mapping file
+   *
+   * @param mappingFile mapping file path
+   * @param keyClasskey class
+   * @param persistentClass persistent class
+   */
+  public void readMappingFile(String mappingFile, Class keyClass, 
Class persistentClass) {
+
+try {
+  SAXBuilder saxBuilder = new SAXBuilder();
+  InputStream inputStream = 
getClass().getClassLoader().getResourceAsStream(mappingFile);
+  if (inputStream == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+  Document document = saxBuilder.build(inputStream);
+  if (document == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+
+  Element root = document.getRootElement();
+
+  List policyElements = root.getChildren("policy");
+
+  for (Element policyElement : policyElements) {
+
+String policy = policyElement.getAttributeValue("name");
+if (policy != null) {
+  if (policy.equals("write")) {
--- End diff --

There is no ENUM for policy names at this level (write policies or read 
policies). But when defining values for each policy, there are ENUMs which I 
have used in below sections while assigning the policy values. 

> [](url)


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike 

[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124168409
  
--- Diff: 
gora-aerospike/src/test/java/org/apache/gora/aerospike/GoraAerospikeTestDriver.java
 ---
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.gora.aerospike;
+
+import org.apache.gora.GoraTestDriver;
+import org.apache.gora.aerospike.store.AerospikeStore;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.store.DataStore;
+import org.apache.gora.store.DataStoreFactory;
+import org.apache.gora.util.GoraException;
+import org.testcontainers.containers.GenericContainer;
+
+import java.util.Properties;
+
+/**
+ * Helper class for third part tests using gora-aerospike backend.
+ * @see GoraTestDriver
+ */
+public class GoraAerospikeTestDriver extends GoraTestDriver {
+
+  private GenericContainer aerospikeContainer;
+  private Properties properties = DataStoreFactory.createProps();
+
+  public GoraAerospikeTestDriver(GenericContainer aerospikeContainer) {
+super(AerospikeStore.class);
+this.aerospikeContainer = aerospikeContainer;
+  }
+
+  @Override
+  public void setUpClass() throws Exception {
+
+// Wait for the aerospike server to be started in the container
+Thread.sleep(5000);
--- End diff --

Can we check this condition with a framework like Awaitility?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124167624
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeStore.java
 ---
@@ -0,0 +1,473 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import java.io.IOException;
+import java.nio.ByteBuffer;
+import java.util.HashMap;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.Properties;
+
+import com.aerospike.client.Key;
+import com.aerospike.client.Value;
+import com.aerospike.client.Bin;
+import com.aerospike.client.Record;
+import com.aerospike.client.AerospikeClient;
+import com.aerospike.client.policy.ClientPolicy;
+import org.apache.avro.Schema;
+import org.apache.avro.Schema.Field;
+import org.apache.avro.util.Utf8;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.persistency.impl.DirtyListWrapper;
+import org.apache.gora.persistency.impl.DirtyMapWrapper;
+import org.apache.gora.persistency.impl.PersistentBase;
+import org.apache.gora.query.PartitionQuery;
+import org.apache.gora.query.Query;
+import org.apache.gora.query.Result;
+import org.apache.gora.store.impl.DataStoreBase;
+import org.apache.gora.util.AvroUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Implementation of a Aerospike data store to be used by gora.
+ *
+ * @param  class to be used for the key
+ * @param  class to be persisted within the store
+ */
+public class AerospikeStore extends 
DataStoreBase {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeStore.class);
+
+  private static final String PARSE_MAPPING_FILE_KEY = 
"gora.aerospike.mapping.file";
+
+  private static final String DEFAULT_MAPPING_FILE = 
"gora-aerospike-mapping.xml";
+
+  private AerospikeClient aerospikeClient;
+
+  private AerospikeParameters aerospikeParameters;
+
+  /**
+   * {@inheritDoc}
+   * In initializing the aerospike datastore, read the mapping file, sets 
the basic
+   * aerospike specific parameters and creates the client with the user 
defined policies
+   *
+   * @param keyClasskey class
+   * @param persistentClass persistent class
+   * @param properties  properties
+   */
+  @Override
+  public void initialize(Class keyClass, Class persistentClass, 
Properties properties) {
+super.initialize(keyClass, persistentClass, properties);
+
+AerospikeMappingBuilder aerospikeMappingBuilder = new 
AerospikeMappingBuilder();
+aerospikeMappingBuilder
+.readMappingFile(getConf().get(PARSE_MAPPING_FILE_KEY, 
DEFAULT_MAPPING_FILE), keyClass,
+persistentClass);
+aerospikeParameters = new 
AerospikeParameters(aerospikeMappingBuilder.getAerospikeMapping(),
+properties);
+ClientPolicy policy = new ClientPolicy();
+policy.writePolicyDefault = 
aerospikeParameters.getAerospikeMapping().getWritePolicy();
+policy.readPolicyDefault = 
aerospikeParameters.getAerospikeMapping().getReadPolicy();
+
+aerospikeClient = new AerospikeClient(aerospikeParameters.getHost(),
+aerospikeParameters.getPort());
+aerospikeParameters.setServerSpecificParameters(aerospikeClient);
+
aerospikeParameters.validateServerBinConfiguration(persistentClass.getFields());
+LOG.info("Aerospike Gora datastore initialized successfully.");
+  }
+
+  /**
+   * Aerospike, being a schemaless database does not support explicit 
schema creation through the
+   * provided 

[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124165992
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeParameters.java
 ---
@@ -0,0 +1,182 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import com.aerospike.client.AerospikeClient;
+import com.aerospike.client.Info;
+import com.aerospike.client.cluster.Node;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.lang.reflect.Field;
+import java.util.Properties;
+
+public class AerospikeParameters {
+  private String host;
+
+  private int port;
+
+  private String user;
+
+  private String password;
+
+  private AerospikeMapping aerospikeMapping;
+
+  private boolean isSingleBinEnabled;
+
+  // Property names
+  private static final String AS_SERVER_IP = "server.ip";
+
+  private static final String AS_SERVER_port = "server.port";
+
+  // Default property values
+  private static final String DEFAULT_SERVER_IP = "localhost";
+
+  private static final String DEFAULT_SERVER_PORT = "3000";
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeParameters.class);
+
+  /**
+   * Constructor to create AerospikeParameters object with the given 
mapping and properties
+   *
+   * @param aerospikeMapping aerospike mapping initialized from the 
mapping file
+   * @param properties   property details
+   */
+  public AerospikeParameters(AerospikeMapping aerospikeMapping, Properties 
properties) {
+this.aerospikeMapping = aerospikeMapping;
+this.host = properties.getProperty(AS_SERVER_IP, DEFAULT_SERVER_IP);
+this.port = Integer.parseInt(properties.getProperty(AS_SERVER_port, 
DEFAULT_SERVER_PORT));
+  }
+
+  public String getHost() {
+return host;
+  }
+
+  public void setHost(String host) {
+this.host = host;
+  }
+
+  public int getPort() {
+return port;
+  }
+
+  public void setPort(int port) {
+this.port = port;
+  }
+
+  public String getUser() {
+return user;
+  }
+
+  public void setUser(String user) {
+this.user = user;
+  }
+
+  public String getPassword() {
+return password;
+  }
+
+  public void setPassword(String password) {
+this.password = password;
+  }
+
+  public AerospikeMapping getAerospikeMapping() {
+return aerospikeMapping;
+  }
+
+  public void setAerospikeMapping(AerospikeMapping aerospikeMapping) {
+this.aerospikeMapping = aerospikeMapping;
+  }
+
+  public boolean isSingleBinEnabled() {
+return isSingleBinEnabled;
+  }
+
+  public void setSingleBinEnabled(boolean singleBinEnabled) {
+this.isSingleBinEnabled = singleBinEnabled;
+  }
+
+  /**
+   * Retrieves and sets the server specific parameters
+   * Validates the existence of user provided namespace and validates for 
single binned
+   * namespaces
+   *
+   * @param client aerospike client used to connect with the server
+   */
+  public void setServerSpecificParameters(AerospikeClient client) {
+
+String namespaceTokens = null;
+for (Node node : client.getNodes()) {
+  String namespaceFilter = "namespace/" + 
aerospikeMapping.getNamespace();
+  namespaceTokens = Info.request(null, node, namespaceFilter);
+
+  if (namespaceTokens != null) {
+isSingleBinEnabled = parseBoolean(namespaceTokens, "single-bin");
+break;
+  }
+}
+if (namespaceTokens == null) {
+  LOG.error("Failed 

[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124165935
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeParameters.java
 ---
@@ -0,0 +1,182 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import com.aerospike.client.AerospikeClient;
+import com.aerospike.client.Info;
+import com.aerospike.client.cluster.Node;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.lang.reflect.Field;
+import java.util.Properties;
+
+public class AerospikeParameters {
+  private String host;
+
+  private int port;
+
+  private String user;
+
+  private String password;
+
+  private AerospikeMapping aerospikeMapping;
+
+  private boolean isSingleBinEnabled;
+
+  // Property names
+  private static final String AS_SERVER_IP = "server.ip";
+
+  private static final String AS_SERVER_port = "server.port";
--- End diff --

AS_SERVER_port -> AS_SERVER_PORT?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124165711
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeMappingBuilder.java
 ---
@@ -0,0 +1,303 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import com.aerospike.client.policy.GenerationPolicy;
+import com.aerospike.client.policy.Policy;
+import com.aerospike.client.policy.RecordExistsAction;
+import com.aerospike.client.policy.WritePolicy;
+import org.jdom.Document;
+import org.jdom.Element;
+import org.jdom.input.SAXBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.jdom.JDOMException;
+
+import javax.naming.ConfigurationException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.HashMap;
+
+public class AerospikeMappingBuilder {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeMappingBuilder.class);
+
+  private AerospikeMapping aerospikeMapping;
+
+  public AerospikeMappingBuilder() {
+this.aerospikeMapping = new AerospikeMapping();
+  }
+
+  public AerospikeMapping getAerospikeMapping() {
+return this.aerospikeMapping;
+  }
+
+  /**
+   * Reads the gora aerospike mapping file
+   *
+   * @param mappingFile mapping file path
+   * @param keyClasskey class
+   * @param persistentClass persistent class
+   */
+  public void readMappingFile(String mappingFile, Class keyClass, 
Class persistentClass) {
+
+try {
+  SAXBuilder saxBuilder = new SAXBuilder();
+  InputStream inputStream = 
getClass().getClassLoader().getResourceAsStream(mappingFile);
+  if (inputStream == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+  Document document = saxBuilder.build(inputStream);
+  if (document == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+
+  Element root = document.getRootElement();
+
+  List policyElements = root.getChildren("policy");
+
+  for (Element policyElement : policyElements) {
+
+String policy = policyElement.getAttributeValue("name");
+if (policy != null) {
+  if (policy.equals("write")) {
+WritePolicy writePolicy = new WritePolicy();
+if (policyElement.getAttributeValue("gen") != null)
+  writePolicy.generationPolicy = getGenerationPolicyMapping(
+  
policyElement.getAttributeValue("gen").toUpperCase(Locale.getDefault()));
+if (policyElement.getAttributeValue("exists") != null)
+  writePolicy.recordExistsAction = getRecordExistsAction(
+  
policyElement.getAttributeValue("exists").toUpperCase(Locale.getDefault()));
+if (policyElement.getAttributeValue("key") != null)
+  writePolicy.sendKey = getKeyUsagePolicy(
+  
policyElement.getAttributeValue("key").toUpperCase(Locale.getDefault()));
+if (policyElement.getAttributeValue("retry") != null)
+  writePolicy.retryOnTimeout = getRetryOnTimeoutPolicy(
+  
policyElement.getAttributeValue("retry").toUpperCase(Locale.getDefault()));
+if (policyElement.getAttributeValue("timeout") != null)
+  

[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124165578
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeMappingBuilder.java
 ---
@@ -0,0 +1,303 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import com.aerospike.client.policy.GenerationPolicy;
+import com.aerospike.client.policy.Policy;
+import com.aerospike.client.policy.RecordExistsAction;
+import com.aerospike.client.policy.WritePolicy;
+import org.jdom.Document;
+import org.jdom.Element;
+import org.jdom.input.SAXBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.jdom.JDOMException;
+
+import javax.naming.ConfigurationException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.HashMap;
+
+public class AerospikeMappingBuilder {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeMappingBuilder.class);
+
+  private AerospikeMapping aerospikeMapping;
+
+  public AerospikeMappingBuilder() {
+this.aerospikeMapping = new AerospikeMapping();
+  }
+
+  public AerospikeMapping getAerospikeMapping() {
+return this.aerospikeMapping;
+  }
+
+  /**
+   * Reads the gora aerospike mapping file
+   *
+   * @param mappingFile mapping file path
+   * @param keyClasskey class
+   * @param persistentClass persistent class
+   */
+  public void readMappingFile(String mappingFile, Class keyClass, 
Class persistentClass) {
+
+try {
+  SAXBuilder saxBuilder = new SAXBuilder();
+  InputStream inputStream = 
getClass().getClassLoader().getResourceAsStream(mappingFile);
+  if (inputStream == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+  Document document = saxBuilder.build(inputStream);
+  if (document == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+
+  Element root = document.getRootElement();
+
+  List policyElements = root.getChildren("policy");
+
+  for (Element policyElement : policyElements) {
+
+String policy = policyElement.getAttributeValue("name");
+if (policy != null) {
+  if (policy.equals("write")) {
--- End diff --

Is there an enum for such policies?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124165139
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeStore.java
 ---
@@ -0,0 +1,473 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import java.io.IOException;
+import java.nio.ByteBuffer;
+import java.util.HashMap;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.Properties;
+
+import com.aerospike.client.Key;
+import com.aerospike.client.Value;
+import com.aerospike.client.Bin;
+import com.aerospike.client.Record;
+import com.aerospike.client.AerospikeClient;
+import com.aerospike.client.policy.ClientPolicy;
+import org.apache.avro.Schema;
+import org.apache.avro.Schema.Field;
+import org.apache.avro.util.Utf8;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.persistency.impl.DirtyListWrapper;
+import org.apache.gora.persistency.impl.DirtyMapWrapper;
+import org.apache.gora.persistency.impl.PersistentBase;
+import org.apache.gora.query.PartitionQuery;
+import org.apache.gora.query.Query;
+import org.apache.gora.query.Result;
+import org.apache.gora.store.impl.DataStoreBase;
+import org.apache.gora.util.AvroUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Implementation of a Aerospike data store to be used by gora.
+ *
+ * @param  class to be used for the key
+ * @param  class to be persisted within the store
+ */
+public class AerospikeStore extends 
DataStoreBase {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeStore.class);
+
+  private static final String PARSE_MAPPING_FILE_KEY = 
"gora.aerospike.mapping.file";
+
+  private static final String DEFAULT_MAPPING_FILE = 
"gora-aerospike-mapping.xml";
+
+  private AerospikeClient aerospikeClient;
+
+  private AerospikeParameters aerospikeParameters;
+
+  /**
+   * {@inheritDoc}
+   * In initializing the aerospike datastore, read the mapping file, sets 
the basic
+   * aerospike specific parameters and creates the client with the user 
defined policies
+   *
+   * @param keyClasskey class
+   * @param persistentClass persistent class
+   * @param properties  properties
+   */
+  @Override
+  public void initialize(Class keyClass, Class persistentClass, 
Properties properties) {
+super.initialize(keyClass, persistentClass, properties);
+
+AerospikeMappingBuilder aerospikeMappingBuilder = new 
AerospikeMappingBuilder();
+aerospikeMappingBuilder
+.readMappingFile(getConf().get(PARSE_MAPPING_FILE_KEY, 
DEFAULT_MAPPING_FILE), keyClass,
+persistentClass);
+aerospikeParameters = new 
AerospikeParameters(aerospikeMappingBuilder.getAerospikeMapping(),
+properties);
+ClientPolicy policy = new ClientPolicy();
+policy.writePolicyDefault = 
aerospikeParameters.getAerospikeMapping().getWritePolicy();
+policy.readPolicyDefault = 
aerospikeParameters.getAerospikeMapping().getReadPolicy();
+
+aerospikeClient = new AerospikeClient(aerospikeParameters.getHost(),
+aerospikeParameters.getPort());
+aerospikeParameters.setServerSpecificParameters(aerospikeClient);
+
aerospikeParameters.validateServerBinConfiguration(persistentClass.getFields());
+LOG.info("Aerospike Gora datastore initialized successfully.");
+  }
+
+  /**
+   * Aerospike, being a schemaless database does not support explicit 
schema creation through the
+   * provided 

[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124163187
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/package-info.java 
---
@@ -0,0 +1,20 @@
+/**
--- End diff --

/** -> /*


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124163124
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/package-info.java ---
@@ -0,0 +1,20 @@
+/**
--- End diff --

/** -> /*


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124163028
  
--- Diff: 
gora-aerospike/src/test/java/org/apache/gora/aerospike/GoraAerospikeTestDriver.java
 ---
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.gora.aerospike;
+
+import org.apache.gora.GoraTestDriver;
+import org.apache.gora.aerospike.store.AerospikeStore;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.store.DataStore;
+import org.apache.gora.store.DataStoreFactory;
+import org.apache.gora.util.GoraException;
+import org.testcontainers.containers.GenericContainer;
+
+import java.util.Properties;
+
+/**
+ * Helper class for third part tests using gora-aerospike backend.
+ * @see GoraTestDriver
+ */
+public class GoraAerospikeTestDriver extends GoraTestDriver {
+
+  private GenericContainer aerospikeContainer;
+  private Properties properties = DataStoreFactory.createProps();
--- End diff --

final variable?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124163020
  
--- Diff: 
gora-aerospike/src/test/java/org/apache/gora/aerospike/GoraAerospikeTestDriver.java
 ---
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.gora.aerospike;
+
+import org.apache.gora.GoraTestDriver;
+import org.apache.gora.aerospike.store.AerospikeStore;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.store.DataStore;
+import org.apache.gora.store.DataStoreFactory;
+import org.apache.gora.util.GoraException;
+import org.testcontainers.containers.GenericContainer;
+
+import java.util.Properties;
+
+/**
+ * Helper class for third part tests using gora-aerospike backend.
+ * @see GoraTestDriver
+ */
+public class GoraAerospikeTestDriver extends GoraTestDriver {
+
+  private GenericContainer aerospikeContainer;
--- End diff --

final variable?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on the issue:

https://github.com/apache/gora/pull/111
  
Apart from this commit, do we need .gitignore file under 
gora-accumulo/src/examples/java folder?


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user kamaci commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124160109
  
--- Diff: 
gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeMappingBuilder.java
 ---
@@ -0,0 +1,303 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.gora.aerospike.store;
+
+import com.aerospike.client.policy.GenerationPolicy;
+import com.aerospike.client.policy.Policy;
+import com.aerospike.client.policy.RecordExistsAction;
+import com.aerospike.client.policy.WritePolicy;
+import org.jdom.Document;
+import org.jdom.Element;
+import org.jdom.input.SAXBuilder;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.jdom.JDOMException;
+
+import javax.naming.ConfigurationException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.Locale;
+import java.util.Map;
+import java.util.HashMap;
+
+public class AerospikeMappingBuilder {
+
+  private static final Logger LOG = 
LoggerFactory.getLogger(AerospikeMappingBuilder.class);
+
+  private AerospikeMapping aerospikeMapping;
+
+  public AerospikeMappingBuilder() {
+this.aerospikeMapping = new AerospikeMapping();
+  }
+
+  public AerospikeMapping getAerospikeMapping() {
+return this.aerospikeMapping;
+  }
+
+  /**
+   * Reads the gora aerospike mapping file
+   *
+   * @param mappingFile mapping file path
+   * @param keyClasskey class
+   * @param persistentClass persistent class
+   */
+  public void readMappingFile(String mappingFile, Class keyClass, 
Class persistentClass) {
+
+try {
+  SAXBuilder saxBuilder = new SAXBuilder();
+  InputStream inputStream = 
getClass().getClassLoader().getResourceAsStream(mappingFile);
+  if (inputStream == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+  Document document = saxBuilder.build(inputStream);
+  if (document == null) {
+LOG.error("Mapping file '{}' could not be found!", mappingFile);
+throw new IOException("Mapping file '" + mappingFile + "' could 
not be found!");
+  }
+
+  Element root = document.getRootElement();
+
+  List policyElements = root.getChildren("policy");
+
+  for (Element policyElement : policyElements) {
+
+String policy = policyElement.getAttributeValue("name");
+if (policy != null) {
+  if (policy.equals("write")) {
+WritePolicy writePolicy = new WritePolicy();
+if (policyElement.getAttributeValue("gen") != null)
--- End diff --

Seems that my comment is not placed when I wrote it. I wrote about that: 
Could you check this Apple bug: 
https://www.imperialviolet.org/2014/02/22/applebug.html

Please put curly braces even they are single line of if statements at your 
PR.


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It 

[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user nishadi commented on the issue:

https://github.com/apache/gora/pull/111
  
@lewismc  @djkevincr  Thank you for reviewing. Updated the code base as per 
the given feedback :)


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on the issue:

https://github.com/apache/gora/pull/111
  
@nishadi  very good work, heading in right direction :)


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124043213
  
--- Diff: 
gora-aerospike/src/test/java/org/apache/gora/aerospike/GoraAerospikeTestDriver.java
 ---
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.gora.aerospike;
+
+import org.apache.gora.GoraTestDriver;
+import org.apache.gora.aerospike.store.AerospikeStore;
+import org.apache.gora.persistency.Persistent;
+import org.apache.gora.store.DataStore;
+import org.apache.gora.store.DataStoreFactory;
+import org.apache.gora.util.GoraException;
+import org.testcontainers.containers.GenericContainer;
+
+import java.util.Properties;
+
+/**
+ * Helper class for third part tests using gora-aerospike backend.
+ * @see GoraTestDriver
+ */
+public class GoraAerospikeTestDriver extends GoraTestDriver {
+
+  private GenericContainer aerospikeContainer;
--- End diff --

Check whether you can make this test-containers code generic, this can be 
reused for other datastore which doesn't have java based embedded server.


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-26 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

Github user djkevincr commented on a diff in the pull request:

https://github.com/apache/gora/pull/111#discussion_r124040382
  
--- Diff: gora-aerospike/pom.xml ---
@@ -0,0 +1,153 @@
+
+
+http://maven.apache.org/POM/4.0.0; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd;>
+  4.0.0
+
+  
+org.apache.gora
+gora
+0.8-SNAPSHOT
+../
+  
+  gora-aerospike
+  bundle
+
+  Apache Gora :: Aerospike
+  http://gora.apache.org
+  The Apache Gora open source framework provides an in-memory 
data model and
+persistence for big data. Gora supports persisting to column stores, 
key value stores,
+document stores and RDBMSs, and analyzing the data with extensive 
Apache Hadoop MapReduce
+support.
+  2010
+  
+The Apache Software Foundation
+http://www.apache.org/
+  
+  
+JIRA
+https://issues.apache.org/jira/browse/GORA
+  
+  
+Jenkins
+https://builds.apache.org/job/Gora-trunk/
+  
+
+  
+*
+
org.apache.gora.aerospike*;version="${project.version}";-noimport:=true
+  
+
+  
+target
+target/classes
+${project.artifactId}-${project.version}
+target/test-classes
+src/test/java
+src/main/java
+
+  
+${project.basedir}/src/test/conf
+
+  **/*
+
+  
+
+
+  
+org.codehaus.mojo
+build-helper-maven-plugin
+${build-helper-maven-plugin.version}
+
+  
+generate-sources
+
+  add-source
+
+
+  
+src/examples/java
+  
+
+  
+
+  
+
+  
+
+  
+
+
+  org.apache.gora
+  gora-core
+
+
+
+  org.apache.gora
+  gora-core
+  test-jar
+  test
+
+
+
+
+  com.aerospike
+  aerospike-client
+  ${aerospike.version}
+
+
+
+  org.apache.avro
+  avro
+
+
+
+
+  org.apache.hadoop
+  hadoop-client
+
+
+
+  org.jdom
+  jdom
+  compile
+
+
+
+
+  org.slf4j
+  slf4j-log4j12
+
+
+
+
+  junit
+  junit
+
+
+
--- End diff --

Move this dependency to parent pom and define version separately. 


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-06-20 Thread ASF GitHub Bot (JIRA)

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

ASF GitHub Bot commented on GORA-502:
-

GitHub user nishadi opened a pull request:

https://github.com/apache/gora/pull/111

[WIP] GORA-502 Implement Aerospike Data Store

This is a work in progress branch

You can merge this pull request into a Git repository by running:

$ git pull https://github.com/nishadi/gora issue-502

Alternatively you can review and apply these changes as the patch at:

https://github.com/apache/gora/pull/111.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

This closes #111


commit e796c8c511463cefdb6da785baf9373d19795995
Author: nishadi 
Date:   2017-06-08T15:33:29Z

Add initial gora-aerospike module

commit 1ad1cc9c96d0e2a12612a9efa76503218a935316
Author: nishadi 
Date:   2017-06-17T16:56:05Z

Add mapping reading and initialization for aerospike module

commit 5608731163dc05b7f8d66ea4071d0a1af04911f2
Author: nishadi 
Date:   2017-06-17T16:56:45Z

Merge remote-tracking branch 'upstream/master' into issue-502

commit 8571ad90db93507118897e7fb51500ac4821c47c
Author: nishadi 
Date:   2017-06-18T08:40:27Z

Add put functionality for aerospike module

commit 3900a41d9a517025618f346b57bd0c5a1fbe89bd
Author: nishadi 
Date:   2017-06-18T08:44:34Z

Add support for aerospike in tutorial

commit b0c197744e40816bd5a1780684e9f31081949790
Author: nishadi 
Date:   2017-06-19T12:05:44Z

Update mapping reading to support mappings of field names to bin values in 
aerospike module

commit 13f252e525e103155502953ebdad1006909747ba
Author: nishadi 
Date:   2017-06-19T12:07:02Z

Update aerospike mapping file to support field to bin value mapping

commit eae36f4752f0e22465df552b1c8da1cb5db347fb
Author: nishadi 
Date:   2017-06-19T16:25:15Z

Update put method to support field mapping in aerospike module




> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>Assignee: Nishadi Kirielle
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-04-03 Thread Furkan KAMACI (JIRA)

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

Furkan KAMACI commented on GORA-502:


Thanks!

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-04-03 Thread Nishadi Kirielle (JIRA)

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

Nishadi Kirielle commented on GORA-502:
---

Yes I have updated the wiki

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-04-03 Thread Furkan KAMACI (JIRA)

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

Furkan KAMACI commented on GORA-502:


[~nishadi.k] could you also add final version of your proposal to wiki: 
https://cwiki.apache.org/confluence/display/GORA/GSoC+2017+Proposals

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-04-02 Thread Lewis John McGibbney (JIRA)

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

Lewis John McGibbney commented on GORA-502:
---

[~nishadi.k] granted.

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-31 Thread Nishadi Kirielle (JIRA)

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

Nishadi Kirielle commented on GORA-502:
---

Hi [~lewismc],

My wiki user name is nishadi.k

Thank you

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-30 Thread Lewis John McGibbney (JIRA)

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

Lewis John McGibbney commented on GORA-502:
---

Great [~nishadi.k] !!!
What is your wiki username and I will grant you permissions to post your 
concept?

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-30 Thread Nishadi Kirielle (JIRA)

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

Nishadi Kirielle commented on GORA-502:
---

Hi, 
[~kamaci] and [~lewismc], I have implemented an initial basic prototype for the 
project [1] and
tested for its functionality with the log manager example's parsing
functionality. The prototype has the ability to connect with the Aerospike
server, execute the put method [2] and add records to the Aerospike
database. The database names and table names are hard coded as per the
moment as the support for the mapping file is not yet implemented. In
addition I have drafted the initial project proposal in the following
google doc [3] as I was unable to edit the provided wiki page.

I am grateful, if you can provide me with feedback on the proposal and the
prototype.

[1].
https://github.com/nishadi/gora/blob/gora-aerospike/gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeStore.java
[2].
https://github.com/nishadi/gora/blob/gora-aerospike/gora-aerospike/src/main/java/org/apache/gora/aerospike/store/AerospikeStore.java#L94
[3].
https://docs.google.com/document/d/1FLRlG8h5M3GA4Wn1tsbWXkYSE0navl_WEmp-KDEKtfU/edit?usp=sharing

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-13 Thread Furkan KAMACI (JIRA)

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

Furkan KAMACI commented on GORA-502:


[~nishadi.k] and [~serhatg] I've created a page for GSoC 2017 Proposals: 
https://cwiki.apache.org/confluence/display/GORA/GSoC+2017+Proposals Please 
check the previous years' proposals and prepare yourselves. 

On the other hand, I suggest you to download and compile the project, examine 
the source code and try to fix some issues as a first step to warm up. Don't 
hesitate to ask on mail list if you have any questions.

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-11 Thread Nishadi Kirielle (JIRA)

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

Nishadi Kirielle commented on GORA-502:
---

Hi, yes I have started working on it.

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-11 Thread JIRA

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

Serhat Güzel commented on GORA-502:
---

Hi ,
I am Serhat Guzel, a third year student of Computer Science in Gebze Technical 
University from Turkey.

I am a new member here  and writing to indicate that I want to gain experience. 
I also want to do my internship here and have experience about open source .So 
I believe I will learn and contribute . I would be grateful if you would give 
me guidance on this matter. 

Thank you for your consideration.

Regards,
Serhat Güzel

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-07 Thread Lewis John McGibbney (JIRA)

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

Lewis John McGibbney commented on GORA-502:
---

Thanks for letting us know [~cguzel]

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-07 Thread Cihad Guzel (JIRA)

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

Cihad Guzel commented on GORA-502:
--

Hi [~lewismc]
I can't participate in GSOC in this year. The rules have changed. I have 
participated two times previously.

The rule: "He or she has participated as a Student in Google Summer of Code two 
(2) or more times previously."
Reference: https://summerofcode.withgoogle.com/rules/

Thanks

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-07 Thread Lewis John McGibbney (JIRA)

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

Lewis John McGibbney commented on GORA-502:
---

[~nishadi.k] [~cguzel] can you both begin working on your documentation ideas 
https://cwiki.apache.org/confluence/display/GORA/Google+Summer+of+Code\
Thank you

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-04 Thread Nishadi Kirielle (JIRA)

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

Nishadi Kirielle commented on GORA-502:
---

Hi,
I am Nishadi Kirielle, a final year undergraduate of Computer Science and 
Engineering department from University of Moratuwa. 
I am interested in contributing to the project as I am familiar with working 
with in-memory databases. As part of my final year project, I have created an 
extension to Apache spark SQL to incorporate bitmap compression for data 
manipulations. 
As per my understanding the requirement is to develop a new datastore adapter 
implementation of Aerospike which can be used if required by changing the 
configuration of Gora via gora.datastore.default property [1] 
It would be great if you can guide me with the required references and guide 
lines.
[1]. http://gora.apache.org/current/gora-conf.html

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-03-04 Thread Nishadi Kirielle (JIRA)

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

Nishadi Kirielle commented on GORA-502:
---

Hi,
I am Nishadi Kirielle, a final year undergraduate of Computer Science and 
Engineering department from University of Moratuwa. 
I am interested in contributing to the project as I am familiar with working 
with in-memory databases. As part of my final year project, I have created an 
extension to Apache spark SQL to incorporate bitmap compression for data 
manipulations. 
As per my understanding the requrement is to develop a new datastore adaptor 
implementation of Aerospike which can be used if required by changing the 
configuration of Gora via gora.datastore.default property [1] 
It would be great if you can guide me with the required references and guide 
lines.

[1]. http://gora.apache.org/current/gora-conf.html

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>  Labels: gsoc2017
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-02-04 Thread Cihad Guzel (JIRA)

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

Cihad Guzel commented on GORA-502:
--

I can work on this issue for GSOC 2017 [~lewismc]


> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-02-03 Thread Cihad Guzel (JIRA)

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

Cihad Guzel commented on GORA-502:
--

No, I haven't worked on this yet.

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
> Fix For: 0.8
>
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)


[jira] [Commented] (GORA-502) Implement Aerospike Datastore

2017-02-03 Thread Lewis John McGibbney (JIRA)

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

Lewis John McGibbney commented on GORA-502:
---

dynamite, are you actively working on this [~cguzel] ?

> Implement Aerospike Datastore
> -
>
> Key: GORA-502
> URL: https://issues.apache.org/jira/browse/GORA-502
> Project: Apache Gora
>  Issue Type: New Feature
>  Components: gora-aerospike, storage
>Affects Versions: 0.6.1
>Reporter: Cihad Guzel
>
> Aerospike is a NoSQL database solution for real-time operational 
> applications, delivering predictable performance at scale, superior uptime, 
> and high availability at the lowest TCO compared to first-generation NoSQL 
> and relational databases. It could be nice to support Aerospike as a 
> datastore at Gora. Aerospike uses Apache v2 license for Java client and uses 
> aGPL license for Aerospike Server Community Edition. 
> (http://www.aerospike.com/products/)



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)