Updated Branches: refs/heads/trunk c00c24cb4 -> 807176556
Revert "Ninja-return duplicate set values and map keys validation" This reverts commit 1a45fcbaa331c768edb083f5682b4f559f4de33d. Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/491098e7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/491098e7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/491098e7 Branch: refs/heads/trunk Commit: 491098e797d01b99275b98109392455f4a5bc2bd Parents: 1a45fcb Author: Aleksey Yeschenko <[email protected]> Authored: Thu Jul 25 21:14:16 2013 +0300 Committer: Aleksey Yeschenko <[email protected]> Committed: Thu Jul 25 21:14:16 2013 +0300 ---------------------------------------------------------------------- .../org/apache/cassandra/cql3/Constants.java | 19 ---------------- src/java/org/apache/cassandra/cql3/Maps.java | 3 +-- src/java/org/apache/cassandra/cql3/Sets.java | 4 ++-- .../cassandra/cql3/functions/FunctionCall.java | 23 -------------------- 4 files changed, 3 insertions(+), 46 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/491098e7/src/java/org/apache/cassandra/cql3/Constants.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/Constants.java b/src/java/org/apache/cassandra/cql3/Constants.java index db264c4..4c9d856 100644 --- a/src/java/org/apache/cassandra/cql3/Constants.java +++ b/src/java/org/apache/cassandra/cql3/Constants.java @@ -20,7 +20,6 @@ package org.apache.cassandra.cql3; import java.nio.ByteBuffer; import java.util.List; -import com.google.common.base.Objects; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -265,24 +264,6 @@ public abstract class Constants { return bytes; } - - @Override - public int hashCode() - { - return Objects.hashCode(bytes); - } - - @Override - public boolean equals(Object o) - { - if (this == o) - return true; - - if (!(o instanceof Value)) - return false; - - return Objects.equal(this.bytes, ((Value) o).bytes); - } } public static class Marker extends AbstractMarker http://git-wip-us.apache.org/repos/asf/cassandra/blob/491098e7/src/java/org/apache/cassandra/cql3/Maps.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/Maps.java b/src/java/org/apache/cassandra/cql3/Maps.java index 6c5efce..e34e076 100644 --- a/src/java/org/apache/cassandra/cql3/Maps.java +++ b/src/java/org/apache/cassandra/cql3/Maps.java @@ -80,8 +80,7 @@ public abstract class Maps if (k instanceof Term.NonTerminal || v instanceof Term.NonTerminal) allTerminal = false; - if (values.put(k, v) != null) - throw new InvalidRequestException(String.format("Invalid map literal: duplicate entry for key %s", entry.left)); + values.put(k, v); } DelayedValue value = new DelayedValue(((MapType)receiver.type).keys, values); return allTerminal ? value.bind(Collections.<ByteBuffer>emptyList()) : value; http://git-wip-us.apache.org/repos/asf/cassandra/blob/491098e7/src/java/org/apache/cassandra/cql3/Sets.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/Sets.java b/src/java/org/apache/cassandra/cql3/Sets.java index 7c0242d..748f269 100644 --- a/src/java/org/apache/cassandra/cql3/Sets.java +++ b/src/java/org/apache/cassandra/cql3/Sets.java @@ -68,6 +68,7 @@ public abstract class Sets if (receiver.type instanceof MapType && elements.isEmpty()) return new Maps.Value(Collections.<ByteBuffer, ByteBuffer>emptyMap()); + ColumnSpecification valueSpec = Sets.valueSpecOf(receiver); Set<Term> values = new HashSet<Term>(elements.size()); boolean allTerminal = true; @@ -81,8 +82,7 @@ public abstract class Sets if (t instanceof Term.NonTerminal) allTerminal = false; - if (!values.add(t)) - throw new InvalidRequestException(String.format("Invalid set literal: duplicate value %s", rt)); + values.add(t); } DelayedValue value = new DelayedValue(((SetType)receiver.type).elements, values); return allTerminal ? value.bind(Collections.<ByteBuffer>emptyList()) : value; http://git-wip-us.apache.org/repos/asf/cassandra/blob/491098e7/src/java/org/apache/cassandra/cql3/functions/FunctionCall.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/cql3/functions/FunctionCall.java b/src/java/org/apache/cassandra/cql3/functions/FunctionCall.java index 3a51204..a6b86a2 100644 --- a/src/java/org/apache/cassandra/cql3/functions/FunctionCall.java +++ b/src/java/org/apache/cassandra/cql3/functions/FunctionCall.java @@ -21,8 +21,6 @@ import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.List; -import com.google.common.base.Objects; - import org.apache.cassandra.cql3.ColumnSpecification; import org.apache.cassandra.cql3.Constants; import org.apache.cassandra.cql3.Lists; @@ -98,27 +96,6 @@ public class FunctionCall extends Term.NonTerminal throw new AssertionError(); } - @Override - public boolean equals(Object o) - { - if (this == o) - return true; - - if (!(o instanceof FunctionCall)) - return false; - - FunctionCall fc = (FunctionCall) o; - - return Objects.equal(this.fun, fc.fun) - && Objects.equal(this.terms, fc.terms); - } - - @Override - public int hashCode() - { - return Objects.hashCode(fun, terms); - } - public static class Raw implements Term.Raw { private final String functionName;
