• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

tarantool / tarantool / 20169323062
88%

Build:
DEFAULT BRANCH: master
Ran 12 Dec 2025 02:26PM UTC
Jobs 1
Files 520
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

12 Dec 2025 02:09PM UTC coverage: 87.648% (+0.007%) from 87.641%
20169323062

push

github

Buristan
test/fuzz: support luzer in test_engine

From the beginning the test test_engine.lua was a typical blackbox
fuzzing test. The test generates inputs for a target program
(tarantool in our case) without knowledge of tarantool's internal
behaviour or implementation.

In general, blackbox fuzzing works well when the target is large,
the target is not deterministic for the same input and the target
is slow. The tarantool storage engines are a large,
non-deterministic and slow targets, but using alternative
approaches, like greybox fuzzing, can make more effective by using
information about the tarantool's internal state, typically code
coverage.

The patch introduces support for greybox fuzzing to the
test_engine.lua by supporting a luzer, a coverage-guided, native
Lua fuzzing engine [1]. luzer is not a standalone fuzzing engine,
under the hood it use a well-known and popular fuzzing engine
libFuzzer. The main value of the luzer is that it allows one to
test programs with the Lua interface using a regular fuzzing
engine. The patch left possibility to execute test_engine as
a blackbox test, but it uses greybox fuzzing when luzer Lua module
is available. However, one can set environment variable
`DISABLE_LUZER` and use test in blackbox mode even luzer is
available.

The range for `wal_max_size` is adjusted because `wal_max_size`
must be greater than 1.

1. https://github.com/ligurio/luzer

Follows up #11884
Closes #11906

NO_CHANGELOG=testing
NO_DOC=testing

70280 of 118262 branches covered (59.43%)

105610 of 120494 relevant lines covered (87.65%)

1379412.54 hits per line

Uncovered Existing Lines

Lines Coverage ∆ File
1
90.73
0.15% src/box/applier.cc
1
88.96
-0.61% src/box/engine.c
1
96.88
-1.56% src/box/engine.h
1
92.57
0.09% src/box/vinyl.c
1
90.14
-0.08% src/box/vy_log.c
1
88.17
0.08% src/box/vy_run.c
1
96.1
-0.05% src/lib/salad/bps_tree.h
1
22.64
-0.02% src/lib/uri/uri_parser.c
1
75.06
-0.25% src/main.cc
2
85.86
0.05% src/box/xlog.c
2
89.36
0.01% src/box/xrow.c
2
93.6
-0.19% src/box/xrow_update_field.c
2
81.38
-0.6% src/lib/core/coio.c
2
93.04
-0.18% src/lib/core/fiber.c
2
85.71
-9.52% src/lib/core/tt_sigaction.c
3
94.15
-1.6% src/box/vy_range.c
4
96.95
-0.41% src/lib/msgpuck/msgpuck.h
4
93.31
-1.27% src/lib/swim/swim_io.c
8
60.42
-3.55% src/lib/core/fio.c
Jobs
ID Job ID Ran Files Coverage
1 20169323062.1 12 Dec 2025 02:26PM UTC 520
87.65
GitHub Action Run
Source Files on build 20169323062
  • Tree
  • List 520
  • Changed 34
  • Source Changed 0
  • Coverage Changed 34
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • 53c3101b on github
  • Prev Build on master (#20166226245)
  • Next Build on master (#20231352374)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc