[
https://issues.apache.org/jira/browse/CALCITE-6792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated CALCITE-6792:
------------------------------------
Labels: pull-request-available (was: )
> RelJsonReader failed to read RelJsonWriter output if 'NaN' or 'Infinity'
> approximate numerics are present
> ----------------------------------------------------------------------------------------------------------
>
> Key: CALCITE-6792
> URL: https://issues.apache.org/jira/browse/CALCITE-6792
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.38.0
> Reporter: Evgeny Stanilovsky
> Priority: Major
> Labels: pull-request-available
>
> Simple reproduser is below, place it into RelWriterTest
> {noformat}
> @Test void testInf() {
> Frameworks.withPlanner((cluster, relOptSchema, rootSchema) -> {
> final RexBuilder rexBuilder = cluster.getRexBuilder();
> final FrameworkConfig config = RelBuilderTest.config().build();
> final RelBuilder builder = RelBuilder.create(config);
>
> RelDataType doubleType =
> cluster.getTypeFactory().builder().add("name",
>
> cluster.getTypeFactory().createSqlType(SqlTypeName.DOUBLE)).build();
>
> final RelDataType doubleTypeLit =
> cluster.getTypeFactory().createSqlType(SqlTypeName.DOUBLE);
> RexLiteral lit =
> rexBuilder.makeApproxLiteral(Double.POSITIVE_INFINITY, // <---
> doubleTypeLit);
> RelNode vals = builder.values(Collections.nCopies(1, List.of(lit)),
> doubleType).build();
>
> final RelJsonWriter writer = new RelJsonWriter();
> vals.explain(writer);
> String serialized = writer.asString();
>
> SchemaPlus schema = rootSchema.add("hr",
> new ReflectiveSchema(new HrSchema()));
> final RelJsonReader reader =
> new RelJsonReader(cluster, relOptSchema, schema);
> RelNode node;
> try {
> node = reader.read(serialized); // <- raised from here
> } catch (IOException e) {
> throw TestUtil.rethrow(e);
> }
> return RelOptUtil.dumpPlan("", node, SqlExplainFormat.TEXT,
> SqlExplainLevel.EXPPLAN_ATTRIBUTES);
> });
> }
> {noformat}
> will throw: com.fasterxml.jackson.core.JsonParseException: Non-standard token
> 'Infinity': enable `JsonReadFeature.ALLOW_NON_NUMERIC_NUMBERS` to allow
--
This message was sent by Atlassian Jira
(v8.20.10#820010)