Skip to content

Enable Fast Floating-Point reading by default in 3.0 #1231

@cowtowncoder

Description

@cowtowncoder

For Jackson 2.x we have following features disabled by default:

  • StreamReadFeature.USE_FAST_DOUBLE_PARSER
  • StreamReadFeature.USE_FAST_BIG_NUMBER_PARSER
  • StreamWriteFeature.USE_FAST_DOUBLE_WRITER

that is, for FP reading to use default JDK implementation and not one from FastDoubleParser (read) / Schubfach (write). This to minimize any chance of breakage, to require users to opt-in for optimized handling.

Since there hasn't been reports of issues during the time we've had (since 2.14, more than a year), it seems reasonable to assume things work well: so let's enable "fast FP" handling by default for 3.0.
We can still consider similar change for later 2.x, but let's start with 3.0.

EDIT: (2025-04-05)

Due to findings on lack of improvements for writing (equivalent or better code in JDK 21) for newer JDKs, default for StreamWriteFeature.USE_FAST_DOUBLE_WRITER will NOT be changed -- it remains disabled. Users on JDK 17 can then enable it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    3.xIssues to be only tackled for Jackson 3.x, not 2.x

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions