VictoriaMetrics/lib/logstorage
Nikolay 22e6385f56
lib/logstorage: fixes panic at Block.MustInitFromRows (#7695)
Previously Block columns wasn't properly limited by maxColumnsPerBlock.
And it was possible a case, when more columns per block added than
expected.
 For example, if ingested log stream has many unuqie fields
and it's sum exceed maxColumnsPerBlock.
 We only enforce fieldsPerBlock limit during row parsing, which limits
isn't enough to mitigate this issue. Also it
would be very expensive to apply maxColumnsPerBlock limit during
ingestion, since it requires to track all possible field tags
combinations.

 This commit adds check for maxColumnsPerBlock limit during
MustInitFromRows function call. And it returns offset of the rows and
timestamps added to the block.
 Function caller must create another block and ingest remaining rows
into it.

Related issue:
https://github.com/VictoriaMetrics/VictoriaMetrics/issues/7568

### Describe Your Changes

Please provide a brief description of the changes you made. Be as
specific as possible to help others understand the purpose and impact of
your modifications.

### Checklist

The following checks are **mandatory**:

- [ ] My change adheres [VictoriaMetrics contributing
guidelines](https://docs.victoriametrics.com/contributing/).

---------

Signed-off-by: f41gh7 <nik@victoriametrics.com>
Co-authored-by: Aliaksandr Valialkin <valyala@victoriametrics.com>
2024-11-30 17:40:56 +01:00
..
arena.go lib/logstorage: work-in-progress 2024-05-20 04:08:30 +02:00
arena_test.go lib/logstorage: work-in-progress 2024-05-20 04:08:30 +02:00
bitmap.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
bitmap_test.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
bitmap_timing_test.go lib/logstorage: work-in-progress 2024-06-10 18:42:19 +02:00
block.go lib/logstorage: fixes panic at Block.MustInitFromRows (#7695) 2024-11-30 17:40:56 +01:00
block_data.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
block_data_test.go lib/logstorage: initial implementation of pipes in LogsQL 2024-05-12 16:33:31 +02:00
block_header.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
block_header_test.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
block_result.go lib/logstorage: properly skip filtered out dict values when calculating uniq_values, min, max, row_min and row_max stats functions 2024-11-08 23:21:21 +01:00
block_search.go lib/logstorage: avoid reading columnsHeader data when field_values pipe is applied directly to log filters 2024-10-29 16:44:44 +01:00
block_stream_merger.go lib/logstorage: increase the the maximum number of columns per block from 1000 to 2000 2024-11-01 17:00:07 +01:00
block_stream_reader.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
block_stream_writer.go lib/logstorage: fixes panic at Block.MustInitFromRows (#7695) 2024-11-30 17:40:56 +01:00
block_test.go lib/logstorage: fixes panic at Block.MustInitFromRows (#7695) 2024-11-30 17:40:56 +01:00
block_timing_test.go lib/logstorage: fixes panic at Block.MustInitFromRows (#7695) 2024-11-30 17:40:56 +01:00
bloomfilter.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
bloomfilter_test.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
cache.go lib/logstorage: use simpler in-memory cache instead of workingsetcache for caching recently ingested _stream values and recently queried set of streams 2024-10-18 02:22:43 +02:00
cache_test.go lib/logstorage: use simpler in-memory cache instead of workingsetcache for caching recently ingested _stream values and recently queried set of streams 2024-10-18 02:22:43 +02:00
column_names.go lib/logstorage: add join pipe for joining multiple query results 2024-11-06 18:53:29 +01:00
column_names_test.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
consts.go lib/logstorage: increase the the maximum number of columns per block from 1000 to 2000 2024-11-01 17:00:07 +01:00
datadb.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
datadb_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
encoding.go lib/logstorage: add block_stats pipe for analyzing per-block storage stats 2024-11-06 18:55:45 +01:00
encoding_test.go lib/logstorage: fix make test-pure tests 2023-07-04 13:14:30 -07:00
encoding_timing_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
fields_set.go lib/logstorage: work-in-progress 2024-05-30 16:19:23 +02:00
fields_set_test.go lib/logstorage: work-in-progress 2024-05-20 04:08:30 +02:00
filenames.go lib/logstorage: do not persist streamIDCache, since it may go out of sync with partition directories, which can be changed manually between VictoriaLogs restarts 2024-10-18 02:22:43 +02:00
filter.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
filter_and.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_and_test.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
filter_any_case_phrase.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_any_case_phrase_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_any_case_prefix.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_any_case_prefix_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_day_range.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
filter_day_range_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_exact.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_exact_prefix.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_exact_prefix_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_exact_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_in.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_in_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_ipv4_range.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_ipv4_range_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_len_range.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_len_range_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_noop.go lib/logstorage: work-in-progress 2024-06-04 01:49:02 +02:00
filter_not.go lib/logstorage: allow using - instead of ! as a shorthand for NOT operator in LogsQL 2024-09-27 13:14:47 +02:00
filter_not_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_or.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_or_test.go lib/logstorage: preserve the order of tokens to check against bloom filters in AND filters 2024-09-08 12:27:30 +02:00
filter_phrase.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_phrase_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_prefix.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_prefix_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_range.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_range_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_regexp.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_regexp_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_sequence.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_sequence_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_stream.go app/vlselect: add support for extra_filters and extra_stream_filters query args across all the HTTP querying APIs 2024-10-30 17:59:49 +01:00
filter_stream_id.go lib/logstorage: work-in-progress 2024-06-24 23:27:12 +02:00
filter_stream_id_test.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
filter_string_range.go lib/logstorage: move getConstColumnValue() and getColumnHeader() methods from columnsHeader to blockSearch 2024-10-13 14:29:02 +02:00
filter_string_range_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
filter_test.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
filter_time.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
filter_time_test.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
filter_timing_test.go lib/logstorage: initial implementation of pipes in LogsQL 2024-05-12 16:33:31 +02:00
filter_week_range.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
filter_week_range_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
hash128.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
hash128_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
hash128_timing_test.go lib/logstorage: consistently use atomic.* types instead of atomic.* functions on regular types 2024-02-23 23:46:13 +02:00
hash_tokenizer.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
hash_tokenizer_test.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
hash_tokenizer_timing_test.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
if_filter.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
index_block_header.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
index_block_header_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
indexdb.go Revert "lib/mergeset: add sparse indexdb cache (#7269)" 2024-11-04 10:29:14 -03:00
indexdb_test.go lib/logstorage: work-in-progress 2024-06-20 03:10:08 +02:00
inmemory_part.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
inmemory_part_test.go lib/logstorage: fixes panic at Block.MustInitFromRows (#7695) 2024-11-30 17:40:56 +01:00
inmemory_part_timing_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
json_parser.go lib/logstorage: work-in-progress 2024-06-17 12:13:18 +02:00
json_parser_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
log_rows.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
log_rows_test.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
log_rows_timing_test.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
logfmt_parser.go lib/logstorage: work-in-progress 2024-06-04 01:49:02 +02:00
logfmt_parser_test.go app/vlselect: do not show empty fields in query results 2024-10-14 23:43:58 +02:00
parser.go lib/logstorage: properly take into account the end query arg when calculating time range for _time:duration filters 2024-11-08 16:43:54 +01:00
parser_test.go lib/logstorage: properly take into account the end query arg when calculating time range for _time:duration filters 2024-11-08 16:43:54 +01:00
part.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
part_header.go lib/logstorage: dynamically adjust the number of (bloom, values) shards in a part depending on the number of non-const columns 2024-10-29 16:44:45 +01:00
part_header_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
partition.go lib/logstorage: use simpler in-memory cache instead of workingsetcache for caching recently ingested _stream values and recently queried set of streams 2024-10-18 02:22:43 +02:00
partition_test.go lib/logstorage: use simpler in-memory cache instead of workingsetcache for caching recently ingested _stream values and recently queried set of streams 2024-10-18 02:22:43 +02:00
pattern.go lib/logstorage: work-in-progress 2024-05-24 03:06:55 +02:00
pattern_test.go lib/logstorage: work-in-progress 2024-05-24 03:06:55 +02:00
pattern_timing_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
pipe.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_block_stats.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_block_stats_test.go lib/logstorage: add block_stats pipe for analyzing per-block storage stats 2024-11-06 18:55:45 +01:00
pipe_blocks_count.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_blocks_count_test.go lib/logstorage: add blocks_count pipe 2024-09-25 19:17:48 +02:00
pipe_copy.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_copy_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
pipe_delete.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_delete_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
pipe_drop_empty_fields.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_drop_empty_fields_test.go lib/logstorage: work-in-progress 2024-06-04 01:49:02 +02:00
pipe_extract.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_extract_regexp.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_extract_regexp_test.go lib/logstorage: work-in-progress 2024-05-28 19:29:41 +02:00
pipe_extract_test.go lib/logstorage: properly reset cached output fields for extract and extract_regexp pipes after the log entry matches if(...) condition 2024-10-30 22:29:52 +01:00
pipe_field_names.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_field_names_test.go lib/logstorage: work-in-progress 2024-05-24 03:06:55 +02:00
pipe_field_values.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_field_values_test.go lib/logstorage: add len pipe for calculating byte length of log field values 2024-10-03 18:21:10 +02:00
pipe_fields.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_fields_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
pipe_filter.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_filter_test.go lib/logstorage: work-in-progress 2024-06-10 18:42:19 +02:00
pipe_format.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_format_test.go lib/logstorage: work-in-progress 2024-06-05 03:18:12 +02:00
pipe_join.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_join_test.go lib/logstorage: add an ability to add prefix to resulting query field names in join pipe 2024-11-08 16:43:53 +01:00
pipe_len.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_len_test.go lib/logstorage: add len pipe for calculating byte length of log field values 2024-10-03 18:21:10 +02:00
pipe_limit.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_limit_test.go lib/logstorage: work-in-progress 2024-05-28 19:29:41 +02:00
pipe_math.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_math_test.go lib/logstorage: substitute | operator with or operator at math pipe 2024-09-06 22:44:14 +02:00
pipe_offset.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_offset_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
pipe_pack.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
pipe_pack_json.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_pack_json_test.go app/vlselect: do not show empty fields in query results 2024-10-14 23:43:58 +02:00
pipe_pack_logfmt.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_pack_logfmt_test.go lib/logstorage: quote logfmt strings only if they contain special chars, which could break logfmt parsing and/or reading 2024-10-07 14:31:30 +02:00
pipe_rename.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_rename_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
pipe_replace.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_replace_regexp.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_replace_regexp_test.go lib/logstorage: properly cache replace() and replace_regexp() results for identical adjacent field values 2024-10-30 22:29:52 +01:00
pipe_replace_test.go lib/logstorage: properly cache replace() and replace_regexp() results for identical adjacent field values 2024-10-30 22:29:52 +01:00
pipe_sort.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_sort_test.go lib/logstorage: follow-up for af831a6c906158f371f1b6810706fa0a54b78386 2024-10-29 16:44:46 +01:00
pipe_sort_topk.go lib/logstorage: follow-up for af831a6c906158f371f1b6810706fa0a54b78386 2024-10-29 16:44:46 +01:00
pipe_stats.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_stats_test.go lib/logstorage: work-in-progress 2024-05-30 16:19:23 +02:00
pipe_stream_context.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_stream_context_test.go lib/logstorage: improve performance for stream_context pipe over streams with big number of log entries 2024-09-26 22:22:23 +02:00
pipe_top.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_top_test.go lib/logstorage: follow-up for af831a6c906158f371f1b6810706fa0a54b78386 2024-10-29 16:44:46 +01:00
pipe_uniq.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_uniq_test.go lib/logstorage: return the expected hits results from uniq pipe when the number of unique values reaches the specified limit 2024-09-29 10:51:09 +02:00
pipe_unpack.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
pipe_unpack_json.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_unpack_json_test.go lib/logstorage: work-in-progress 2024-05-25 21:36:16 +02:00
pipe_unpack_logfmt.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_unpack_logfmt_test.go lib/logstorage: work-in-progress 2024-06-04 01:49:02 +02:00
pipe_unpack_syslog.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_unpack_syslog_test.go lib/logstorage: work-in-progress 2024-06-17 12:13:18 +02:00
pipe_unroll.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
pipe_unroll_test.go lib/logstorage: work-in-progress 2024-05-30 16:19:23 +02:00
pipe_update.go lib/logstorage: properly reset cached output fields for extract and extract_regexp pipes after the log entry matches if(...) condition 2024-10-30 22:29:52 +01:00
pipe_utils_test.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
rows.go app/vlinsert: allow specifying comma-separated list of fields containing log message via _msg_field query arg and VL-Msg-Field HTTP request header 2024-10-30 14:17:33 +01:00
rows_test.go lib/logstorage: use quicktemplate.AppendJSONString instead of strconv.AppendQuote for encoding JSON strings 2024-07-05 01:22:23 +02:00
stats_avg.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_avg_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_count.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
stats_count_empty.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
stats_count_empty_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_count_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_count_uniq.go lib/logstorage: do not count dictionary values which have no matching logs in count_uniq stats function 2024-10-01 13:34:45 +02:00
stats_count_uniq_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_max.go lib/logstorage: properly skip filtered out dict values when calculating uniq_values, min, max, row_min and row_max stats functions 2024-11-08 23:21:21 +01:00
stats_max_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_median.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_median_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_min.go lib/logstorage: properly skip filtered out dict values when calculating uniq_values, min, max, row_min and row_max stats functions 2024-11-08 23:21:21 +01:00
stats_min_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_quantile.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
stats_quantile_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_row_any.go lib/logstorage: read timestamps column when it is really needed during query execution 2024-09-25 19:17:47 +02:00
stats_row_any_test.go app/vlselect: do not show empty fields in query results 2024-10-14 23:43:58 +02:00
stats_row_max.go lib/logstorage: properly skip filtered out dict values when calculating uniq_values, min, max, row_min and row_max stats functions 2024-11-08 23:21:21 +01:00
stats_row_max_test.go app/vlselect: do not show empty fields in query results 2024-10-14 23:43:58 +02:00
stats_row_min.go lib/logstorage: properly skip filtered out dict values when calculating uniq_values, min, max, row_min and row_max stats functions 2024-11-08 23:21:21 +01:00
stats_row_min_test.go app/vlselect: do not show empty fields in query results 2024-10-14 23:43:58 +02:00
stats_sum.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_sum_len.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_sum_len_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_sum_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
stats_uniq_values.go lib/logstorage: properly skip filtered out dict values when calculating uniq_values, min, max, row_min and row_max stats functions 2024-11-08 23:21:21 +01:00
stats_uniq_values_test.go lib/logstorage: work-in-progress 2024-05-25 00:30:58 +02:00
stats_values.go lib/logstorage: properly clone field values at values stats function 2024-11-08 23:16:42 +01:00
stats_values_test.go lib/logstorage: work-in-progress 2024-05-22 21:01:20 +02:00
storage.go app/vlinsert: implement the ability to add extra fields to the ingested logs 2024-11-01 20:06:17 +01:00
storage_search.go lib/logstorage: optimize query imeediately after its parsing 2024-11-08 16:43:54 +01:00
storage_search_test.go lib/logstorage: add an ability to add prefix to resulting query field names in join pipe 2024-11-08 16:43:53 +01:00
storage_test.go lib/logstorage: consistently use nsecsPerDay constant and remove nsecPerDay constant 2024-09-06 16:17:04 +02:00
stream_filter.go app/vlselect: add support for extra_filters and extra_stream_filters query args across all the HTTP querying APIs 2024-10-30 17:59:49 +01:00
stream_filter_test.go lib/logstorage: allow special chars in unquoted _stream tag names and values 2024-10-07 15:10:03 +02:00
stream_id.go lib/logstorage: improve performance for streamID.marshalString() by more than 2x 2024-09-24 18:35:04 +02:00
stream_id_test.go lib/logstorage: add benchmark for streamID.marshalString 2024-09-24 18:31:38 +02:00
stream_id_timing_test.go lib/logstorage: add benchmark for streamID.marshalString 2024-09-24 18:31:38 +02:00
stream_tags.go app/vlinsert/loki: use easyproto instead for parsing Loki protobuf messages 2024-07-10 03:05:17 +02:00
stringbucket.go lib/logstorage: initial implementation of pipes in LogsQL 2024-05-12 16:33:31 +02:00
syslog_parser.go lib/logstorage: support for [label1=value1 ... labelN=valueN] syntax inside syslog messages for adding arbitrary labels (fields) to log entries 2024-11-08 19:57:22 +01:00
syslog_parser_test.go lib/logstorage: support for [label1=value1 ... labelN=valueN] syntax inside syslog messages for adding arbitrary labels (fields) to log entries 2024-11-08 19:57:22 +01:00
tenant_id.go lib/logstorage: improve performance for streamID.marshalString() by more than 2x 2024-09-24 18:35:04 +02:00
tenant_id_test.go lib: consistently use f-tests instead of table-driven tests 2024-07-09 22:40:50 +02:00
tokenizer.go lib/logstorage: refactor storage format to be more efficient for querying wide events 2024-10-16 17:35:07 +02:00
tokenizer_test.go lib/logstorage: initial implementation of pipes in LogsQL 2024-05-12 16:33:31 +02:00
tokenizer_timing_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
u128.go lib/logstorage: improve performance for streamID.marshalString() by more than 2x 2024-09-24 18:35:04 +02:00
u128_test.go app/victoria-logs: initial code release 2023-06-19 22:55:12 -07:00
values_encoder.go lib/logstorage: add block_stats pipe for analyzing per-block storage stats 2024-11-06 18:55:45 +01:00
values_encoder_test.go app/vlinsert: support _time field without timezone information during data ingestion 2024-09-26 12:49:35 +02:00
values_encoder_timing_test.go lib/logstorage: properly parse timezone offset at TryParseTimestampRFC3339Nano() 2024-06-25 14:53:38 +02:00