rsyslog / rsyslog/libfastjson

try to integrate new json_print.c with existing printbuf _to_string functions

Open
#132 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
61
Forks
35
Avg merge
21m
Merged PRs (30d)
2

Description

They are very similar and can be merged easily from a theroretical point of view. Unfortunately, the performance of string generation is a central requirement for libfastjson (as it linearly affects rsyslog performance) and this adds additional challenges for the integration work. A lot of algorithm engineering has gone into the printbuf style of existing functions.

This tracker shall provide background of if and how the integration can be done. If impossible, it should serve as a reference of why the similar code bases are treated differently.

Also, see https://github.com/rsyslog/libfastjson/pull/120 for background info.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the existing printbuf _to_string functions alongside json_print.c, then read PR #120 for the integration background. Compare their algorithms and performance constraints, and document whether they can be merged without harming string-generation performance. If integration is not feasible, record why the implementations must remain separate.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
performance
Issue type
Refactor
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.