@@ -57,17 +57,12 @@ all_logs_vtab::all_logs_vtab()
5757 alv_src_meta (intern_string::lookup(" log_msg_src" ),
5858 value_kind_t::VALUE_JSON,
5959 logline_value_meta::table_column{3 }),
60- alv_thread_meta (intern_string::lookup(" log_thread_id" ),
61- value_kind_t::VALUE_TEXT,
62- logline_value_meta::table_column{4 }),
6360 alv_stacktrace_meta (intern_string::lookup(" log_stack_trace" ),
6461 value_kind_t::VALUE_TEXT,
65- logline_value_meta::table_column{5 })
62+ logline_value_meta::table_column{4 })
6663{
6764 this ->alv_msg_meta .lvm_identifier = true ;
6865 this ->alv_schema_meta .lvm_identifier = true ;
69- this ->alv_thread_meta .lvm_identifier = true ;
70- this ->alv_thread_meta .lvm_foreign_key = true ;
7166}
7267
7368void
@@ -92,11 +87,6 @@ all_logs_vtab::get_columns(std::vector<vtab_column>& cols) const
9287 " " ,
9388 false ,
9489 " The source code that generated this message" );
95- cols.emplace_back (this ->alv_thread_meta .lvm_name .get (),
96- SQLITE3_TEXT,
97- " " ,
98- false ,
99- " The ID of the thread that generated this message" );
10090 cols.emplace_back (this ->alv_stacktrace_meta .lvm_name .get (),
10191 SQLITE3_TEXT,
10292 " " ,
@@ -157,9 +147,8 @@ all_logs_vtab::extract(logfile* lf,
157147 h.update (find_res->pattern .c_str ());
158148 }
159149 auto line_iter = lf->begin () + line_number;
160- if (!line_iter->has_schema ()) {
161- line_iter->set_schema (h.to_array ());
162- }
150+ line_iter->merge_bloom_bits (h.to_bloom_bits ());
151+ line_iter->set_schema_computed (true );
163152 values.lvv_values .emplace_back (this ->alv_msg_meta ,
164153 (std::string) find_res->pattern );
165154 values.lvv_values .emplace_back (this ->alv_schema_meta , h.to_string ());
@@ -195,12 +184,7 @@ all_logs_vtab::extract(logfile* lf,
195184 this ->alv_values_meta ,
196185 json_string (gen).to_string_fragment ().to_string ());
197186 }
198- if (sub_values.lvv_thread_id_value ) {
199- values.lvv_values .emplace_back (this ->alv_thread_meta ,
200- sub_values.lvv_thread_id_value .value ());
201- } else {
202- values.lvv_values .emplace_back (this ->alv_thread_meta );
203- }
187+ values.lvv_thread_id_value = std::move (sub_values.lvv_thread_id_value );
204188 values.lvv_opid_value = std::move (sub_values.lvv_opid_value );
205189 values.lvv_opid_provenance = sub_values.lvv_opid_provenance ;
206190}
0 commit comments