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

orneryd / NornicDB / 26290860535 / 1
90%
main: 90%

Build:
DEFAULT BRANCH: main
Ran 22 May 2026 01:52PM UTC
Files 467
Run time 26s
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

22 May 2026 01:36PM UTC coverage: 85.139% (-0.2%) from 85.37%
26290860535.1

push

github

orneryd
 fix(config,nornicdb,docker): honour search-flag precedence end-to-end

  Config values for the four search-index master switches were not flowing
  through the startup path the way the contract claimed. Symptoms (lab
  build 80719f25): operator sets NORNICDB_SEARCH_BM25_ENABLED=false via
  env or --search-bm25-enabled=false via CLI; the container's process
  shows the flag, the Go config layer reads it; default-DB warmup logs
  "Building BM25 + vector indexes for database nornic (bm25=true vector=true)"
  anyway and runs the build.

  Three independent gaps caused this:

  1. cmd/nornicdb/runServe built a fresh nornicdb.DefaultConfig() and
     hand-copied a subset of cfg fields into it. The four Search* fields
     weren't in the copy block, so env+CLI values landed in cfg but never
     reached dbConfig. Replaced the copy block: dbConfig is now an alias
     of cfg, so any field on Config flows automatically. The original
     silent-drop class of bug can't repeat.

  2. nornicdb.Open warms search indexes in a background goroutine that
     raced server.New's SetDbSearchFlagsResolver. When the resolver was
     nil at warmup time, default-DB warmup fell through to global
     defaults instead of per-DB overrides. Added Config.DeferSearchWarmup
     + db.MarkSearchWarmupReady; pkg/server opts in and releases the
     gate AFTER installing the resolver. Embedded callers (scripts,
     tests) keep today's behaviour with no extra wiring.

  3. docker/entrypoint.sh translated env vars to CLI flags but didn't
     forward the four NORNICDB_SEARCH_* vars. Added passthrough lines
     so the flags appear in `ps` / container inspect. Production binary
     path made overridable via NORNICDB_BIN for testability.

  Precedence ladder, lowest → highest, now consistent across every
  configuration source:

    1. Built-in defaults (config.LoadDefaults).
    2. Global config (YAML memory.search_*, NORNICDB_SEARCH_* env).
    3. Per-DB overrides (YAML databases: ... (continued)

129606 of 152229 relevant lines covered (85.14%)

0.99 hits per line

Source Files on job 26290860535.1
  • Tree
  • List 467
  • Changed 59
  • Source Changed 0
  • Coverage Changed 59
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Build 26290860535
  • d023fb39 on github
  • Prev Job for on main (#26138922732.1)
  • Next Job for on main (#26290999913.1)
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

© 2026 Coveralls, Inc