Skip to content

[RFC] Switching from json + ujson to orjson JSON serialization and de-serialization library #65

@Kami

Description

@Kami

Right now StackStorm code utilizes native json library for json serialization / deserialization and also ujson for fast_deepcopy function.

Now that we don't support Python 2 anymore, we should evaluate using orjson - https://github.com/ijl/orjson. Based on micro benchmarks in another project it offers substantial improvements, even over ujson.

In the past there were some issues with compatibility with native json library, but I believe most of them have been resolved.

Having said that, we should still do research specifically for this project (update the code, verify everything works + micro benchmarks).

TODO

  • Write some micro benchmarks for our typical data sets (also add some large executions for use with fast_deepcopy)
  • Test implement it in StackStorm/st2 and ensure all tests pass
  • Add feature flag for disabling this functionality and falling back to standard json library

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions