SAMOA-58: Only add fields of supported types (double, float, long, int and 
enum) rather than adding and defaulting all non-enum to numeric and failing at 
value parse time


Project: http://git-wip-us.apache.org/repos/asf/incubator-samoa/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-samoa/commit/381e6a91
Tree: http://git-wip-us.apache.org/repos/asf/incubator-samoa/tree/381e6a91
Diff: http://git-wip-us.apache.org/repos/asf/incubator-samoa/diff/381e6a91

Branch: refs/heads/master
Commit: 381e6a91e3b5ca4c1de96264537ea670ccb7af6f
Parents: 0640831
Author: edi_bice <[email protected]>
Authored: Wed Feb 17 10:45:07 2016 -0500
Committer: Gianmarco De Francisci Morales <[email protected]>
Committed: Tue Apr 19 11:33:42 2016 +0300

----------------------------------------------------------------------
 .../src/main/java/org/apache/samoa/instances/AvroLoader.java    | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-samoa/blob/381e6a91/samoa-instances/src/main/java/org/apache/samoa/instances/AvroLoader.java
----------------------------------------------------------------------
diff --git 
a/samoa-instances/src/main/java/org/apache/samoa/instances/AvroLoader.java 
b/samoa-instances/src/main/java/org/apache/samoa/instances/AvroLoader.java
index 0547a5c..e7f18b5 100644
--- a/samoa-instances/src/main/java/org/apache/samoa/instances/AvroLoader.java
+++ b/samoa-instances/src/main/java/org/apache/samoa/instances/AvroLoader.java
@@ -254,7 +254,10 @@ public abstract class AvroLoader implements Loader {
         List<String> attributeLabels = attributeSchema.getEnumSymbols();
         attributes.add(new Attribute(field.name(), attributeLabels));
       }
-      else
+      else if (attributeSchema.getType() == Schema.Type.DOUBLE
+              || attributeSchema.getType() == Schema.Type.FLOAT
+              || attributeSchema.getType() == Schema.Type.LONG
+              || attributeSchema.getType() == Schema.Type.INT)
         attributes.add(new Attribute(field.name()));
     }
     return new InstanceInformation(relation, attributes);

Reply via email to