299 Commits

Author SHA1 Message Date
Salva Corts
a4de7ad732 refactor: Move batching to pipeline wrapper (#21123) 2026-03-11 16:28:34 +01:00
Assel Meher
a7c75a6007 feat(loki-query-engine): instrument query-engine with runtime/trace (#21000) 2026-03-10 09:38:36 +00:00
Salva Corts
6ef3827d1f feat: Add results cache to thor query engine (#20986) 2026-03-09 10:16:49 +01:00
Paul Rogers
6717a46b92 chore: fix non-deterministic aggregator function (#21088) 2026-03-06 16:41:21 -05:00
Robert Fratto
8ab15f1e8a chore(engine): ignore closed sources on bind (#20979) 2026-03-04 14:53:50 +00:00
Dylan Guedes
e95137aa81 feat(engine): Dedupe entries when building final result (#21034) 2026-03-04 12:58:14 +00:00
Dylan Guedes
a8814578cf fix(query-scheduler): Only do alignment for metric queries (#21030) 2026-03-02 11:58:40 -03:00
Stas Spiridonov
b2d98d676c fix(thor): Return empty log lines properly for the new engine (#20971) 2026-02-27 15:20:10 +01:00
Dylan Guedes
8e18f108d6 feat: Align start time when the query is received (#20967) 2026-02-26 17:46:46 -03:00
Ivan Kalita
1b357f8c42 chore(loki): add more http2 errors (#20984)
A followup on #20982 to handle more http2 errors.
2026-02-26 17:14:08 +01:00
Robert Fratto
1f7cacfb27 fix(engine): fix additional instances of writing/reading on a closed conn (#20982) 2026-02-26 10:33:38 -05:00
Robert Fratto
9546636275 chore(engine): don't observe task execution time if there's no assign time (#20956) 2026-02-24 19:59:00 +00:00
Salva Corts
f083618d65 feat: Batch records before writing to sinks (#20821) 2026-02-24 19:46:04 +00:00
Robert Fratto
b8920125c5 chore(dataobj): add configurable prefetching (#20946)
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
2026-02-24 14:07:41 -05:00
Stas Spiridonov
987079d842 chore(thor): Disable admission lanes for non-log queries (#20947) 2026-02-24 13:51:28 -05:00
Stas Spiridonov
32248ef0ba chore(thor): Performance optimization for aggregator (#20934) 2026-02-24 04:07:43 +00:00
Dylan Guedes
28d03ec88b fix(engine): align range-query evaluation timestamps to the step grid (#20904)
Aligns startTs to the nearest epoch-aligned step boundary, to replicate the same behavior we'd have with the old engine. I found this to cause a s`um by(x)(count_over_time({k="v"}[30m))` query to mismatch old vs the new engine.
2026-02-23 08:01:08 -03:00
Stas Spiridonov
0b483ab9c0 fix(thor): Fix for column duplicates in consequent compat stages (#20893) 2026-02-20 14:00:14 -07:00
Ashwanth
a56220f22f chore(planner): apply parallelPushdown optimisation to valid aggregations (#20655) 2026-02-19 19:01:59 +05:30
Robert Fratto
0bc5895b0f chore(engine): enable native histograms for engine execution phases (#20861) 2026-02-18 13:20:10 -05:00
Robert Fratto
00c8211fbf chore(engine): add concurrency to Pipeline.Open (#20839) 2026-02-18 08:19:18 -05:00
Ashwanth
73961f18a3 chore(xcap): leaner xcap API (#20771) 2026-02-17 19:42:33 +05:30
Ashwanth
5bf2d00458 chore(scheduler): assign tasks in per-worker loop (#20826) 2026-02-17 19:28:49 +05:30
Stas Spiridonov
b1f059d4e0 fix(thor): incorrect empty records skipping (#20812) 2026-02-13 19:33:32 -03:00
Robert Fratto
11f885af7a chore(engine): fix streamsView.Open semantics (#20802) 2026-02-13 08:37:16 -05:00
Robert Fratto
2d63582b15 chore: finish adding Open semantics in engine, metastore (#20798) 2026-02-13 07:34:24 -05:00
Robert Fratto
d85fb0317f chore(dataobj): Add Open semantics to section readers (#20790)
Signed-off-by: Robert Fratto <robertfratto@gmail.com>
2026-02-12 13:50:28 -05:00
Robert Fratto
6a2c7c79e3 refactor(engine): introduce Pipeline.Open method (#20785) 2026-02-12 08:35:58 -05:00
Trevor Whitney
3b44b8057b fix: correctness failure for aggregations with a drop (#20782) 2026-02-11 17:15:53 -07:00
Ivan Kalita
d5d2b3fa5a fix(wire): fix panic on accept (#20720)
Loki panics when:
- an incoming wire request is still pending (not accepted yet but stays in the channel)
- the http request is cancelled by the client (the connection is closed)
- scheduler eventually attempts to accept this connection

`panic: WriteHeader called after Handler finished`

The reason is that the handler that handles the initial request has already exited but we try to write to the response.

I remove buffering of incoming channels and write the header in request (effectively connection) handler. As a result, it's no longer possible to write to a connection when handler already exited.
2026-02-09 13:45:44 +01:00
benclive
b0c993eaf0 chore: Implement wire metrics for schedulers, workers (#20698) 2026-02-06 10:10:46 +00:00
Trevor Whitney
f6a6a4fad5 feat: add case-insensitive regex optimization (#20578) 2026-02-05 18:15:05 +00:00
Trevor Whitney
5acb96abbd ci: add drilldown and case insensitive queries to correctness tests (#20603)
Signed-off-by: Trevor Whitney <trevorjwhitney@gmail.com>
2026-02-04 18:57:08 +00:00
benclive
660ce3f238 fix(dataobj): Also apply categorize labels to parsed labels (#20671) 2026-02-04 14:10:53 +00:00
benclive
a029934ef2 chore: resolve predicate columns in distributed metastore (#20504) 2026-02-04 12:30:11 +00:00
Robert Fratto
aebb8d3acc chore(engine): add missing godoc comments in planner, workflow (#20656) 2026-02-03 08:34:43 -05:00
Joe Elliott
32e75b601f chore: Add fmt.Stringer support to Workflow and Plan (#20651)
Signed-off-by: Joe Elliott <number101010@gmail.com>
2026-02-02 20:02:19 -05:00
Stas Spiridonov
7dff6add40 chore: Preserve order of log operations in the logical plan. (#20604) 2026-02-02 08:50:37 -07:00
Stas Spiridonov
e1df6a50f1 chore: Panic on marshaling errors in scheduler wire implementation. (#20588) 2026-01-30 18:50:54 +05:30
Joe Elliott
a4e75ce474 perf: avoid bytes to runes allocs by decoding in place (#20602)
Signed-off-by: Joe Elliott <number101010@gmail.com>
2026-01-29 12:02:20 -05:00
Ashwanth
9339218b48 chore(xcap): link parents in workflow while merging captures (#20596) 2026-01-29 21:19:25 +05:30
Stas Spiridonov
6280be8b91 chore: Fix protos for remote transport (#20582) 2026-01-27 16:26:31 +00:00
Stas Spiridonov
514a142859 fix(thor): Fix error filtering before range aggregations (#20560) 2026-01-26 14:14:52 -07:00
Nepomuk Crhonek
1fa1a15598 fix(engine): correct 'end' attribute in Basic.Execute trace span (#20561)
Co-authored-by: Trevor Whitney <trevorjwhitney@gmail.com>
2026-01-23 16:10:06 -07:00
Stas Spiridonov
efdb1f5a37 chore: Reducing waste on processing empty records (#20562) 2026-01-23 15:58:41 -05:00
Ashwanth
8b7161a9fc chore(engine): enforce max_query_series (#20557) 2026-01-23 18:27:35 +05:30
Ashwanth
b21825ec23 chore: capture aggregation exec duration (#20299) 2026-01-23 11:45:16 +00:00
Salva Corts
7151be73bf feat: V2 query engine limits (#20549) 2026-01-23 12:41:42 +01:00
benclive
934256a58b chore: Set scheduler lookup interval in logql bench tests (#20550) 2026-01-22 16:04:06 +00:00
Ashwanth
8a08023602 chore(engine): enforce retention at query time (#20497) 2026-01-22 11:11:57 +05:30