Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id C41CF200BD3 for ; Tue, 1 Nov 2016 04:08:15 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id C28DD160B0A; Tue, 1 Nov 2016 03:08:15 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 29752160B15 for ; Tue, 1 Nov 2016 04:08:13 +0100 (CET) Received: (qmail 88614 invoked by uid 500); 1 Nov 2016 03:08:12 -0000 Mailing-List: contact commits-help@asterixdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@asterixdb.apache.org Delivered-To: mailing list commits@asterixdb.apache.org Received: (qmail 88051 invoked by uid 99); 1 Nov 2016 03:08:11 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 01 Nov 2016 03:08:11 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 23EB2F1710; Tue, 1 Nov 2016 03:08:11 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: buyingyi@apache.org To: commits@asterixdb.apache.org Date: Tue, 01 Nov 2016 03:08:21 -0000 Message-Id: In-Reply-To: <7b81f3dad1144756bbb53133efd9b6d9@git.apache.org> References: <7b81f3dad1144756bbb53133efd9b6d9@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [12/22] asterixdb git commit: Unify runtime type exceptions by using error code and message template. archived-at: Tue, 01 Nov 2016 03:08:15 -0000 http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableDescriptor.java index 8944453..cafb03b 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableDescriptor.java @@ -22,11 +22,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; /** * Checks whether a string with an edit distance threshold can be filtered with a lower bounding @@ -47,13 +47,12 @@ public class EditDistanceStringIsFilterableDescriptor extends AbstractScalarFunc }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new EditDistanceStringIsFilterableEvaluator(args, ctx); } }; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableEvaluator.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableEvaluator.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableEvaluator.java index 595a85a..63584fa 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableEvaluator.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/EditDistanceStringIsFilterableEvaluator.java @@ -27,9 +27,8 @@ import org.apache.asterix.om.base.ABoolean; import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.om.types.BuiltinType; -import org.apache.asterix.om.types.EnumDeserializer; import org.apache.asterix.om.types.hierachy.ATypeHierarchy; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; +import org.apache.asterix.runtime.exceptions.TypeMismatchException; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; @@ -63,7 +62,7 @@ public class EditDistanceStringIsFilterableEvaluator implements IScalarEvaluator private final UTF8StringPointable utf8Ptr = new UTF8StringPointable(); public EditDistanceStringIsFilterableEvaluator(IScalarEvaluatorFactory[] args, IHyracksTaskContext context) - throws AlgebricksException { + throws HyracksDataException { stringEval = args[0].createScalarEvaluator(context); edThreshEval = args[1].createScalarEvaluator(context); gramLenEval = args[2].createScalarEvaluator(context); @@ -71,7 +70,7 @@ public class EditDistanceStringIsFilterableEvaluator implements IScalarEvaluator } @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { resultStorage.reset(); stringEval.evaluate(tuple, stringPtr); @@ -80,37 +79,29 @@ public class EditDistanceStringIsFilterableEvaluator implements IScalarEvaluator usePrePostEval.evaluate(tuple, usePrePostPtr); // Check type and compute string length. - ATypeTag typeTag = EnumDeserializer.ATYPETAGDESERIALIZER - .deserialize(stringPtr.getByteArray()[stringPtr.getStartOffset()]); - if (!typeTag.equals(ATypeTag.STRING)) { - throw new AlgebricksException(AsterixBuiltinFunctions.EDIT_DISTANCE_STRING_IS_FILTERABLE.getName() - + ": expects input type STRING as first argument, but got " + typeTag + "."); + byte typeTag = stringPtr.getByteArray()[stringPtr.getStartOffset()]; + if (typeTag != ATypeTag.SERIALIZED_STRING_TYPE_TAG) { + throw new TypeMismatchException(AsterixBuiltinFunctions.EDIT_DISTANCE_STRING_IS_FILTERABLE, 0, typeTag, + ATypeTag.SERIALIZED_STRING_TYPE_TAG); } utf8Ptr.set(stringPtr.getByteArray(), stringPtr.getStartOffset() + 1, stringPtr.getLength()); int strLen = utf8Ptr.getStringLength(); // Check type and extract edit-distance threshold. - long edThresh = 0; - try { - edThresh = ATypeHierarchy.getIntegerValue(edThreshPtr.getByteArray(), edThreshPtr.getStartOffset()); - } catch (HyracksDataException e1) { - throw new AlgebricksException(e1); - } + long edThresh = ATypeHierarchy.getIntegerValue( + AsterixBuiltinFunctions.EDIT_DISTANCE_LIST_IS_FILTERABLE.getName(), 1, edThreshPtr.getByteArray(), + edThreshPtr.getStartOffset()); // Check type and extract gram length. - long gramLen = 0; - try { - gramLen = ATypeHierarchy.getIntegerValue(gramLenPtr.getByteArray(), gramLenPtr.getStartOffset()); - } catch (HyracksDataException e1) { - throw new AlgebricksException(e1); - } + long gramLen = ATypeHierarchy.getIntegerValue( + AsterixBuiltinFunctions.EDIT_DISTANCE_LIST_IS_FILTERABLE.getName(), 2, gramLenPtr.getByteArray(), + gramLenPtr.getStartOffset()); // Check type and extract usePrePost flag. - typeTag = EnumDeserializer.ATYPETAGDESERIALIZER - .deserialize(usePrePostPtr.getByteArray()[usePrePostPtr.getStartOffset()]); - if (!typeTag.equals(ATypeTag.BOOLEAN)) { - throw new AlgebricksException(AsterixBuiltinFunctions.EDIT_DISTANCE_STRING_IS_FILTERABLE.getName() - + ": expects input type BOOLEAN as fourth argument, but got " + typeTag + "."); + typeTag = usePrePostPtr.getByteArray()[usePrePostPtr.getStartOffset()]; + if (typeTag != ATypeTag.SERIALIZED_BOOLEAN_TYPE_TAG) { + throw new TypeMismatchException(AsterixBuiltinFunctions.EDIT_DISTANCE_STRING_IS_FILTERABLE, 3, typeTag, + ATypeTag.SERIALIZED_BOOLEAN_TYPE_TAG); } boolean usePrePost = BooleanPointable.getBoolean(usePrePostPtr.getByteArray(), usePrePostPtr.getStartOffset() + 1); @@ -125,7 +116,7 @@ public class EditDistanceStringIsFilterableEvaluator implements IScalarEvaluator booleanSerde.serialize(ABoolean.TRUE, output); } } catch (IOException e) { - throw new AlgebricksException(e); + throw new HyracksDataException(e); } result.set(resultStorage); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetItemDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetItemDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetItemDescriptor.java index 88b8a51..9f0da4e 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetItemDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GetItemDescriptor.java @@ -31,11 +31,12 @@ import org.apache.asterix.om.types.EnumDeserializer; import org.apache.asterix.om.types.hierachy.ATypeHierarchy; import org.apache.asterix.om.util.NonTaggedFormatUtil; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; +import org.apache.asterix.runtime.exceptions.TypeMismatchException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; import org.apache.hyracks.data.std.primitive.VoidPointable; import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; @@ -76,7 +77,7 @@ public class GetItemDescriptor extends AbstractScalarFunctionDynamicDescriptor { } @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { return new IScalarEvaluator() { private final ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage(); @@ -91,8 +92,7 @@ public class GetItemDescriptor extends AbstractScalarFunctionDynamicDescriptor { private int itemLength; @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { - + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { try { evalList.evaluate(tuple, inputArgList); evalIdx.evaluate(tuple, inputArgIdx); @@ -103,14 +103,11 @@ public class GetItemDescriptor extends AbstractScalarFunctionDynamicDescriptor { int indexOffset = inputArgIdx.getStartOffset(); if (serOrderedList[offset] == ATypeTag.SERIALIZED_ORDEREDLIST_TYPE_TAG) { - itemIndex = ATypeHierarchy.getIntegerValue(indexBytes, indexOffset); + itemIndex = ATypeHierarchy.getIntegerValue(AsterixBuiltinFunctions.GET_ITEM.getName(), 0, + indexBytes, indexOffset); } else { - throw new AlgebricksException(AsterixBuiltinFunctions.GET_ITEM.getName() - + ": expects input type (NULL/ORDEREDLIST, [INT8/16/32/64/FLOAT/DOUBLE]), but got (" - + EnumDeserializer.ATYPETAGDESERIALIZER.deserialize(serOrderedList[offset]) + ", " - + EnumDeserializer.ATYPETAGDESERIALIZER - .deserialize(inputArgIdx.getByteArray()[offset]) - + ")."); + throw new TypeMismatchException(AsterixBuiltinFunctions.GET_ITEM, + 0, serOrderedList[offset], ATypeTag.SERIALIZED_ORDEREDLIST_TYPE_TAG); } if (itemIndex < 0 || itemIndex >= AOrderedListSerializerDeserializer @@ -144,9 +141,9 @@ public class GetItemDescriptor extends AbstractScalarFunctionDynamicDescriptor { result.set(resultStorage); } } catch (IOException e) { - throw new AlgebricksException(e); + throw new HyracksDataException(e); } catch (AsterixException e) { - throw new AlgebricksException(e); + throw new HyracksDataException(e); } } }; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GramTokensDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GramTokensDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GramTokensDescriptor.java index 3b7941e..f4ce63d 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GramTokensDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/GramTokensDescriptor.java @@ -24,11 +24,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.BuiltinType; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.GramTokensEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.ITokenFactory; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.NGramUTF8StringBinaryTokenizer; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.UTF8NGramTokenFactory; @@ -49,13 +49,12 @@ public class GramTokensDescriptor extends AbstractScalarFunctionDynamicDescripto } @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { ITokenFactory tokenFactory = new UTF8NGramTokenFactory(); NGramUTF8StringBinaryTokenizer tokenizer = new NGramUTF8StringBinaryTokenizer(3, true, true, true, tokenFactory); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedGramTokensDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedGramTokensDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedGramTokensDescriptor.java index 575dacf..3c29ddb 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedGramTokensDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedGramTokensDescriptor.java @@ -24,11 +24,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.BuiltinType; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.GramTokensEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.HashedUTF8NGramTokenFactory; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.ITokenFactory; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.NGramUTF8StringBinaryTokenizer; @@ -49,13 +49,12 @@ public class HashedGramTokensDescriptor extends AbstractScalarFunctionDynamicDes } @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { ITokenFactory tokenFactory = new HashedUTF8NGramTokenFactory(); NGramUTF8StringBinaryTokenizer tokenizer = new NGramUTF8StringBinaryTokenizer(3, true, true, true, tokenFactory); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedWordTokensDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedWordTokensDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedWordTokensDescriptor.java index c32c6ae..25294ed 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedWordTokensDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/HashedWordTokensDescriptor.java @@ -24,11 +24,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.BuiltinType; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.WordTokensEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.DelimitedUTF8StringBinaryTokenizer; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.HashedUTF8WordTokenFactory; import org.apache.hyracks.storage.am.lsm.invertedindex.tokenizers.IBinaryTokenizer; @@ -50,13 +50,12 @@ public class HashedWordTokensDescriptor extends AbstractScalarFunctionDynamicDes } @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { ITokenFactory tokenFactory = new HashedUTF8WordTokenFactory(); IBinaryTokenizer tokenizer = new DelimitedUTF8StringBinaryTokenizer(true, true, tokenFactory); return new WordTokensEvaluator(args, ctx, tokenizer, BuiltinType.AINT32); http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/InjectFailureDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/InjectFailureDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/InjectFailureDescriptor.java index 0d1cf4d..d4bc02f 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/InjectFailureDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/InjectFailureDescriptor.java @@ -18,6 +18,8 @@ */ package org.apache.asterix.runtime.evaluators.functions; +import org.apache.asterix.common.exceptions.ErrorCode; +import org.apache.asterix.common.exceptions.RuntimeDataException; import org.apache.asterix.dataflow.data.nontagged.serde.ABooleanSerializerDeserializer; import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; @@ -25,11 +27,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.om.types.EnumDeserializer; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; import org.apache.hyracks.data.std.primitive.VoidPointable; import org.apache.hyracks.dataflow.common.data.accessors.IFrameTupleReference; @@ -50,14 +52,12 @@ public class InjectFailureDescriptor extends AbstractScalarFunctionDynamicDescri } @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { - + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IPointable argPtr = new VoidPointable(); final IScalarEvaluator[] evals = new IScalarEvaluator[args.length]; @@ -67,7 +67,7 @@ public class InjectFailureDescriptor extends AbstractScalarFunctionDynamicDescri return new IScalarEvaluator() { @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { evals[1].evaluate(tuple, argPtr); ATypeTag typeTag = EnumDeserializer.ATYPETAGDESERIALIZER .deserialize(argPtr.getByteArray()[argPtr.getStartOffset()]); @@ -75,8 +75,7 @@ public class InjectFailureDescriptor extends AbstractScalarFunctionDynamicDescri boolean argResult = ABooleanSerializerDeserializer.getBoolean(argPtr.getByteArray(), argPtr.getStartOffset() + 1); if (argResult) { - throw new AlgebricksException( - AsterixBuiltinFunctions.INJECT_FAILURE + ": injecting a intended failure"); + throw new RuntimeDataException(ErrorCode.ERROR_INJECTED_FAILURE, getIdentifier()); } } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsArrayDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsArrayDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsArrayDescriptor.java index c8cb313..7d970d3 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsArrayDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsArrayDescriptor.java @@ -25,11 +25,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsArrayDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -41,13 +41,12 @@ public class IsArrayDescriptor extends AbstractScalarFunctionDynamicDescriptor { }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsBooleanDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsBooleanDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsBooleanDescriptor.java index 89318bd..6e03979 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsBooleanDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsBooleanDescriptor.java @@ -25,11 +25,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsBooleanDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -41,13 +41,12 @@ public class IsBooleanDescriptor extends AbstractScalarFunctionDynamicDescriptor }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsMissingDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsMissingDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsMissingDescriptor.java index a3bdb30..cdaf9a7 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsMissingDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsMissingDescriptor.java @@ -24,11 +24,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsMissingDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -40,13 +40,12 @@ public class IsMissingDescriptor extends AbstractScalarFunctionDynamicDescriptor }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNullDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNullDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNullDescriptor.java index 33db8f3..458bf0f 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNullDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNullDescriptor.java @@ -24,11 +24,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsNullDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -40,13 +40,12 @@ public class IsNullDescriptor extends AbstractScalarFunctionDynamicDescriptor { }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNumberDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNumberDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNumberDescriptor.java index 418d778..f1d8b70 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNumberDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsNumberDescriptor.java @@ -25,11 +25,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsNumberDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -41,13 +41,12 @@ public class IsNumberDescriptor extends AbstractScalarFunctionDynamicDescriptor }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsObjectDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsObjectDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsObjectDescriptor.java index 5a3f2d3..ea37914 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsObjectDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsObjectDescriptor.java @@ -25,11 +25,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsObjectDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -41,13 +41,12 @@ public class IsObjectDescriptor extends AbstractScalarFunctionDynamicDescriptor }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsStringDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsStringDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsStringDescriptor.java index 44c5a6c..0bd11dc 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsStringDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsStringDescriptor.java @@ -25,11 +25,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsStringDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -41,13 +41,12 @@ public class IsStringDescriptor extends AbstractScalarFunctionDynamicDescriptor }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsSystemNullDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsSystemNullDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsSystemNullDescriptor.java index 7ff2c5f..abeda21 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsSystemNullDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsSystemNullDescriptor.java @@ -27,7 +27,6 @@ import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; @@ -49,14 +48,13 @@ public class IsSystemNullDescriptor extends AbstractScalarFunctionDynamicDescrip }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { return new IScalarEvaluator() { private ArrayBackedValueStorage resultStorage = new ArrayBackedValueStorage(); @@ -66,16 +64,12 @@ public class IsSystemNullDescriptor extends AbstractScalarFunctionDynamicDescrip private final AObjectSerializerDeserializer aObjSerDer = AObjectSerializerDeserializer.INSTANCE; @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { eval.evaluate(tuple, argPtr); boolean isSystemNull = argPtr.getByteArray()[argPtr .getStartOffset()] == ATypeTag.SERIALIZED_SYSTEM_NULL_TYPE_TAG; ABoolean res = isSystemNull ? ABoolean.TRUE : ABoolean.FALSE; - try { - aObjSerDer.serialize(res, out); - } catch (HyracksDataException e) { - throw new AlgebricksException(e); - } + aObjSerDer.serialize(res, out); } }; } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsUnknownDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsUnknownDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsUnknownDescriptor.java index ef5f42c..8d25ae2 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsUnknownDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/IsUnknownDescriptor.java @@ -24,11 +24,11 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; import org.apache.asterix.runtime.evaluators.common.AbstractTypeCheckEvaluator; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; public class IsUnknownDescriptor extends AbstractScalarFunctionDynamicDescriptor { private static final long serialVersionUID = 1L; @@ -40,13 +40,12 @@ public class IsUnknownDescriptor extends AbstractScalarFunctionDynamicDescriptor }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { final IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); return new AbstractTypeCheckEvaluator(eval) { http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/LenDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/LenDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/LenDescriptor.java index c681d78..e4c341c 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/LenDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/LenDescriptor.java @@ -26,19 +26,19 @@ import org.apache.asterix.dataflow.data.nontagged.serde.AUnorderedListSerializer import org.apache.asterix.formats.nontagged.AqlSerializerDeserializerProvider; import org.apache.asterix.om.base.AInt64; import org.apache.asterix.om.base.AMutableInt64; +import org.apache.asterix.runtime.exceptions.TypeMismatchException; import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.om.types.BuiltinType; -import org.apache.asterix.om.types.EnumDeserializer; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; import org.apache.hyracks.api.dataflow.value.ISerializerDeserializer; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; import org.apache.hyracks.data.std.primitive.VoidPointable; import org.apache.hyracks.data.std.util.ArrayBackedValueStorage; @@ -54,14 +54,12 @@ public class LenDescriptor extends AbstractScalarFunctionDynamicDescriptor { }; @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { - + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { return new IScalarEvaluator() { @@ -77,7 +75,7 @@ public class LenDescriptor extends AbstractScalarFunctionDynamicDescriptor { .getSerializerDeserializer(BuiltinType.AINT64); @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { resultStorage.reset(); evalList.evaluate(tuple, inputVal); byte[] serList = inputVal.getByteArray(); @@ -85,9 +83,9 @@ public class LenDescriptor extends AbstractScalarFunctionDynamicDescriptor { if (serList[offset] != ATypeTag.SERIALIZED_ORDEREDLIST_TYPE_TAG && serList[offset] != ATypeTag.SERIALIZED_UNORDEREDLIST_TYPE_TAG) { - throw new AlgebricksException(AsterixBuiltinFunctions.LEN.getName() - + ": expects input type ORDEREDLIST/UNORDEREDLIST but got " - + EnumDeserializer.ATYPETAGDESERIALIZER.deserialize(serList[offset])); + throw new TypeMismatchException(getIdentifier(), 0, + serList[offset], ATypeTag.SERIALIZED_ORDEREDLIST_TYPE_TAG, + ATypeTag.SERIALIZED_UNORDEREDLIST_TYPE_TAG); } int numberOfitems = 0; @@ -101,7 +99,7 @@ public class LenDescriptor extends AbstractScalarFunctionDynamicDescriptor { try { int64Serde.serialize(res, out); } catch (IOException e) { - throw new AlgebricksException(e); + throw new HyracksDataException(e); } result.set(resultStorage); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NotDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NotDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NotDescriptor.java index fb209a9..3771886 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NotDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NotDescriptor.java @@ -29,7 +29,7 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.ATypeTag; import org.apache.asterix.om.types.BuiltinType; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; +import org.apache.asterix.runtime.exceptions.TypeMismatchException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; @@ -56,13 +56,12 @@ public class NotDescriptor extends AbstractScalarFunctionDynamicDescriptor { } @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new IScalarEvaluator() { @@ -71,30 +70,24 @@ public class NotDescriptor extends AbstractScalarFunctionDynamicDescriptor { private IPointable argPtr = new VoidPointable(); private IScalarEvaluator eval = args[0].createScalarEvaluator(ctx); - private String errorMessage = AsterixBuiltinFunctions.NOT.getName() - + ": expects input type BOOLEAN/NULL"; @SuppressWarnings("unchecked") private ISerializerDeserializer booleanSerde = AqlSerializerDeserializerProvider.INSTANCE .getSerializerDeserializer(BuiltinType.ABOOLEAN); @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { resultStorage.reset(); eval.evaluate(tuple, argPtr); byte[] bytes = argPtr.getByteArray(); int offset = argPtr.getStartOffset(); - - try { - if (bytes[offset] == ATypeTag.SERIALIZED_BOOLEAN_TYPE_TAG) { - boolean argRes = ABooleanSerializerDeserializer.getBoolean(bytes, offset + 1); - ABoolean aResult = argRes ? (ABoolean.FALSE) : (ABoolean.TRUE); - booleanSerde.serialize(aResult, out); - } else { - throw new AlgebricksException(errorMessage); - } - } catch (HyracksDataException hde) { - throw new AlgebricksException(hde); + if (bytes[offset] == ATypeTag.SERIALIZED_BOOLEAN_TYPE_TAG) { + boolean argRes = ABooleanSerializerDeserializer.getBoolean(bytes, offset + 1); + ABoolean aResult = argRes ? ABoolean.FALSE : ABoolean.TRUE; + booleanSerde.serialize(aResult, out); + } else { + throw new TypeMismatchException(getIdentifier(), 0, + bytes[offset], ATypeTag.SERIALIZED_BOOLEAN_TYPE_TAG); } result.set(resultStorage); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericACosDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericACosDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericACosDescriptor.java index 51609c3..dd7f916 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericACosDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericACosDescriptor.java @@ -22,11 +22,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; public class NumericACosDescriptor extends AbstractScalarFunctionDynamicDescriptor { @@ -49,7 +49,7 @@ public class NumericACosDescriptor extends AbstractScalarFunctionDynamicDescript private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new NumericACosEvaluator(ctx, args[0]); } }; @@ -58,12 +58,12 @@ public class NumericACosDescriptor extends AbstractScalarFunctionDynamicDescript private class NumericACosEvaluator extends AbstractUnaryNumericDoubleFunctionEval { NumericACosEvaluator(IHyracksTaskContext context, IScalarEvaluatorFactory argEvalFactory) - throws AlgebricksException { + throws HyracksDataException { super(context, argEvalFactory, NumericACosDescriptor.this.getIdentifier()); } @Override - protected void processDouble(double arg, IPointable resultPointable) throws AlgebricksException { + protected void processDouble(double arg, IPointable resultPointable) throws HyracksDataException { aDouble.setValue(Math.acos(arg)); serialize(aDouble, doubleSerde, resultPointable); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericASinDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericASinDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericASinDescriptor.java index 1bd0f6e..8d5ab88 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericASinDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericASinDescriptor.java @@ -23,11 +23,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; public class NumericASinDescriptor extends AbstractScalarFunctionDynamicDescriptor { @@ -50,7 +50,7 @@ public class NumericASinDescriptor extends AbstractScalarFunctionDynamicDescript private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new NumericASinEvaluator(ctx, args[0]); } }; @@ -59,12 +59,12 @@ public class NumericASinDescriptor extends AbstractScalarFunctionDynamicDescript private class NumericASinEvaluator extends AbstractUnaryNumericDoubleFunctionEval { NumericASinEvaluator(IHyracksTaskContext context, IScalarEvaluatorFactory argEvalFactory) - throws AlgebricksException { + throws HyracksDataException { super(context, argEvalFactory, NumericASinDescriptor.this.getIdentifier()); } @Override - protected void processDouble(double arg, IPointable resultPointable) throws AlgebricksException { + protected void processDouble(double arg, IPointable resultPointable) throws HyracksDataException { aDouble.setValue(Math.asin(arg)); serialize(aDouble, doubleSerde, resultPointable); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATan2Descriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATan2Descriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATan2Descriptor.java index e7b51c0..f5e4144 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATan2Descriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATan2Descriptor.java @@ -28,7 +28,6 @@ import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.om.types.BuiltinType; import org.apache.asterix.om.types.hierachy.ATypeHierarchy; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; @@ -56,13 +55,12 @@ public class NumericATan2Descriptor extends AbstractScalarFunctionDynamicDescrip } @Override - public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) - throws AlgebricksException { + public IScalarEvaluatorFactory createEvaluatorFactory(final IScalarEvaluatorFactory[] args) { return new IScalarEvaluatorFactory() { private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(final IHyracksTaskContext ctx) throws HyracksDataException { return new IScalarEvaluator() { // For inputs. private final IPointable leftPtr = new VoidPointable(); @@ -81,23 +79,19 @@ public class NumericATan2Descriptor extends AbstractScalarFunctionDynamicDescrip @SuppressWarnings("unchecked") @Override - public void evaluate(IFrameTupleReference tuple, IPointable result) throws AlgebricksException { - try { - resultStorage.reset(); - evalLeft.evaluate(tuple, leftPtr); - evalRight.evaluate(tuple, rightPtr); - for (int i = 0; i < args.length; i++) { - IPointable argPtr = i == 0 ? leftPtr : rightPtr; - byte[] data = argPtr.getByteArray(); - int offset = argPtr.getStartOffset(); - operands[i] = ATypeHierarchy.getDoubleValue(data, offset); - } - aDouble.setValue(Math.atan2(operands[0], operands[1])); - outputSerde.serialize(aDouble, out); - result.set(resultStorage); - } catch (HyracksDataException hde) { - throw new AlgebricksException(hde); + public void evaluate(IFrameTupleReference tuple, IPointable result) throws HyracksDataException { + resultStorage.reset(); + evalLeft.evaluate(tuple, leftPtr); + evalRight.evaluate(tuple, rightPtr); + for (int i = 0; i < args.length; i++) { + IPointable argPtr = i == 0 ? leftPtr : rightPtr; + byte[] data = argPtr.getByteArray(); + int offset = argPtr.getStartOffset(); + operands[i] = ATypeHierarchy.getDoubleValue(getIdentifier().getName(), i, data, offset); } + aDouble.setValue(Math.atan2(operands[0], operands[1])); + outputSerde.serialize(aDouble, out); + result.set(resultStorage); } }; } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATanDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATanDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATanDescriptor.java index 2d5a359..6edda86 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATanDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericATanDescriptor.java @@ -23,11 +23,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; public class NumericATanDescriptor extends AbstractScalarFunctionDynamicDescriptor { @@ -50,7 +50,7 @@ public class NumericATanDescriptor extends AbstractScalarFunctionDynamicDescript private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new NumericATanEvaluator(ctx, args[0]); } }; @@ -59,12 +59,12 @@ public class NumericATanDescriptor extends AbstractScalarFunctionDynamicDescript private class NumericATanEvaluator extends AbstractUnaryNumericDoubleFunctionEval { NumericATanEvaluator(IHyracksTaskContext context, IScalarEvaluatorFactory argEvalFactory) - throws AlgebricksException { + throws HyracksDataException { super(context, argEvalFactory, NumericATanDescriptor.this.getIdentifier()); } @Override - protected void processDouble(double arg, IPointable resultPointable) throws AlgebricksException { + protected void processDouble(double arg, IPointable resultPointable) throws HyracksDataException { aDouble.setValue(Math.atan(arg)); serialize(aDouble, doubleSerde, resultPointable); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAbsDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAbsDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAbsDescriptor.java index 69edb6e..2ee75f5 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAbsDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAbsDescriptor.java @@ -27,11 +27,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescriptor { @@ -54,7 +54,7 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new NumericAbsEvaluator(ctx, args[0]); } }; @@ -63,12 +63,12 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto private class NumericAbsEvaluator extends AbstractUnaryNumericFunctionEval { NumericAbsEvaluator(IHyracksTaskContext context, IScalarEvaluatorFactory argEvalFactory) - throws AlgebricksException { + throws HyracksDataException { super(context, argEvalFactory, NumericAbsDescriptor.this.getIdentifier()); } @Override - protected void processInt8(byte arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt8(byte arg, IPointable resultPointable) throws HyracksDataException { if (arg >= 0) { resultPointable.set(argPtr); return; @@ -78,7 +78,7 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto } @Override - protected void processInt16(short arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt16(short arg, IPointable resultPointable) throws HyracksDataException { if (arg >= 0) { resultPointable.set(argPtr); return; @@ -88,7 +88,7 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto } @Override - protected void processInt32(int arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt32(int arg, IPointable resultPointable) throws HyracksDataException { if (arg >= 0) { resultPointable.set(argPtr); return; @@ -98,7 +98,7 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto } @Override - protected void processInt64(long arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt64(long arg, IPointable resultPointable) throws HyracksDataException { if (arg >= 0) { resultPointable.set(argPtr); return; @@ -108,7 +108,7 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto } @Override - protected void processFloat(float arg, IPointable resultPointable) throws AlgebricksException { + protected void processFloat(float arg, IPointable resultPointable) throws HyracksDataException { if (arg >= 0.0f) { resultPointable.set(argPtr); return; @@ -118,7 +118,7 @@ public class NumericAbsDescriptor extends AbstractScalarFunctionDynamicDescripto } @Override - protected void processDouble(double arg, IPointable resultPointable) throws AlgebricksException { + protected void processDouble(double arg, IPointable resultPointable) throws HyracksDataException { if (arg >= 0.0d) { resultPointable.set(argPtr); return; http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAddDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAddDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAddDescriptor.java index 265f68e..edbc21a 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAddDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericAddDescriptor.java @@ -22,9 +22,10 @@ import org.apache.asterix.om.base.temporal.DurationArithmeticOperations; import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; +import org.apache.asterix.om.types.ATypeTag; +import org.apache.asterix.runtime.exceptions.UnsupportedTypeException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.api.exceptions.HyracksDataException; -import java.lang.Math; public class NumericAddDescriptor extends AbstractNumericArithmeticEval { @@ -58,6 +59,6 @@ public class NumericAddDescriptor extends AbstractNumericArithmeticEval { @Override protected long evaluateTimeInstanceArithmetic(long chronon0, long chronon1) throws HyracksDataException { - throw new HyracksDataException("Undefined addition operation between two time instances."); + throw new UnsupportedTypeException(getIdentifier(), ATypeTag.SERIALIZED_TIME_TYPE_TAG); } } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCaretDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCaretDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCaretDescriptor.java index 60f1233..ab1e032 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCaretDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCaretDescriptor.java @@ -18,14 +18,16 @@ */ package org.apache.asterix.runtime.evaluators.functions; -import com.google.common.math.LongMath; import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; -import org.apache.hyracks.algebricks.common.exceptions.NotImplementedException; +import org.apache.asterix.om.types.ATypeTag; +import org.apache.asterix.runtime.exceptions.UnsupportedTypeException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.api.exceptions.HyracksDataException; +import com.google.common.math.LongMath; + public class NumericCaretDescriptor extends AbstractNumericArithmeticEval { private static final long serialVersionUID = 1L; @@ -66,12 +68,12 @@ public class NumericCaretDescriptor extends AbstractNumericArithmeticEval { @Override protected long evaluateTimeDurationArithmetic(long chronon, int yearMonth, long dayTime, boolean isTimeOnly) throws HyracksDataException { - throw new NotImplementedException("Caret operation is not defined for temporal types"); + throw new UnsupportedTypeException(getIdentifier().getName(), ATypeTag.SERIALIZED_DURATION_TYPE_TAG); } @Override protected long evaluateTimeInstanceArithmetic(long chronon0, long chronon1) throws HyracksDataException { - throw new NotImplementedException("Caret operation is not defined for temporal types"); + throw new UnsupportedTypeException(getIdentifier().getName(), ATypeTag.SERIALIZED_TIME_TYPE_TAG); } } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCeilingDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCeilingDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCeilingDescriptor.java index 0ba9b00..ce7db1a 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCeilingDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCeilingDescriptor.java @@ -22,11 +22,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; public class NumericCeilingDescriptor extends AbstractScalarFunctionDynamicDescriptor { @@ -50,7 +50,7 @@ public class NumericCeilingDescriptor extends AbstractScalarFunctionDynamicDescr private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new NumericCeilingEvaluator(ctx, args[0]); } }; @@ -59,38 +59,38 @@ public class NumericCeilingDescriptor extends AbstractScalarFunctionDynamicDescr private class NumericCeilingEvaluator extends AbstractUnaryNumericFunctionEval { NumericCeilingEvaluator(IHyracksTaskContext context, IScalarEvaluatorFactory argEvalFactory) - throws AlgebricksException { + throws HyracksDataException { super(context, argEvalFactory, NumericCeilingDescriptor.this.getIdentifier()); } @Override - protected void processInt8(byte arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt8(byte arg, IPointable resultPointable) throws HyracksDataException { resultPointable.set(argPtr); } @Override - protected void processInt16(short arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt16(short arg, IPointable resultPointable) throws HyracksDataException { resultPointable.set(argPtr); } @Override - protected void processInt32(int arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt32(int arg, IPointable resultPointable) throws HyracksDataException { resultPointable.set(argPtr); } @Override - protected void processInt64(long arg, IPointable resultPointable) throws AlgebricksException { + protected void processInt64(long arg, IPointable resultPointable) throws HyracksDataException { resultPointable.set(argPtr); } @Override - protected void processFloat(float arg, IPointable resultPointable) throws AlgebricksException { + protected void processFloat(float arg, IPointable resultPointable) throws HyracksDataException { aFloat.setValue((float) Math.ceil(arg)); serialize(aFloat, floatSerde, resultPointable); } @Override - protected void processDouble(double arg, IPointable resultPointable) throws AlgebricksException { + protected void processDouble(double arg, IPointable resultPointable) throws HyracksDataException { aDouble.setValue(Math.ceil(arg)); serialize(aDouble, doubleSerde, resultPointable); } http://git-wip-us.apache.org/repos/asf/asterixdb/blob/52671a2c/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCosDescriptor.java ---------------------------------------------------------------------- diff --git a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCosDescriptor.java b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCosDescriptor.java index aaecd0a..f165b9c 100644 --- a/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCosDescriptor.java +++ b/asterixdb/asterix-runtime/src/main/java/org/apache/asterix/runtime/evaluators/functions/NumericCosDescriptor.java @@ -23,11 +23,11 @@ import org.apache.asterix.om.functions.AsterixBuiltinFunctions; import org.apache.asterix.om.functions.IFunctionDescriptor; import org.apache.asterix.om.functions.IFunctionDescriptorFactory; import org.apache.asterix.runtime.evaluators.base.AbstractScalarFunctionDynamicDescriptor; -import org.apache.hyracks.algebricks.common.exceptions.AlgebricksException; import org.apache.hyracks.algebricks.core.algebra.functions.FunctionIdentifier; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluator; import org.apache.hyracks.algebricks.runtime.base.IScalarEvaluatorFactory; import org.apache.hyracks.api.context.IHyracksTaskContext; +import org.apache.hyracks.api.exceptions.HyracksDataException; import org.apache.hyracks.data.std.api.IPointable; public class NumericCosDescriptor extends AbstractScalarFunctionDynamicDescriptor { @@ -50,7 +50,7 @@ public class NumericCosDescriptor extends AbstractScalarFunctionDynamicDescripto private static final long serialVersionUID = 1L; @Override - public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws AlgebricksException { + public IScalarEvaluator createScalarEvaluator(IHyracksTaskContext ctx) throws HyracksDataException { return new NumericCosEvaluator(ctx, args[0]); } }; @@ -59,12 +59,12 @@ public class NumericCosDescriptor extends AbstractScalarFunctionDynamicDescripto private class NumericCosEvaluator extends AbstractUnaryNumericDoubleFunctionEval { NumericCosEvaluator(IHyracksTaskContext context, IScalarEvaluatorFactory argEvalFactory) - throws AlgebricksException { + throws HyracksDataException { super(context, argEvalFactory, NumericCosDescriptor.this.getIdentifier()); } @Override - protected void processDouble(double arg, IPointable resultPointable) throws AlgebricksException { + protected void processDouble(double arg, IPointable resultPointable) throws HyracksDataException { aDouble.setValue(Math.cos(arg)); serialize(aDouble, doubleSerde, resultPointable); }