No. I haven't made as big of a modification to coerceBytes. So it only 
throws for precision and scale mismatch.

On 03/06/2013 01:01 PM, James Taylor wrote:
>
> In src/main/java/com/salesforce/phoenix/compile/UpsertCompiler.java:
>
> > @@ -348,10 +348,13 @@ public ExplainPlan getExplainPlan() throws SQLException {
> >                  PColumn column = allColumns.get(columnIndexes[nodeIndex]);
> >                  expressionBuilder.setColumn(column);
> >                  LiteralExpression literalExpression = (LiteralExpression)valueNode.accept(expressionBuilder);
> > -                if (literalExpression.getDataType() != null && !literalExpression.getDataType().isCoercibleTo(column.getDataType(), literalExpression.getValue(), literalExpression.getBytes())) {
> > +                // Check for type compatibility.
> > +                if (literalExpression.getDataType() != null
>
> I think we can get rid of this if, no? Doesn't the coerceBytes throw 
> now for a type mismatch?
>
> —
> Reply to this email directly or view it on GitHub 
> <https://github.com/forcedotcom/phoenix/pull/79/files#r3269393>.
>