summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
2287be6)
The response of the src.ctf.fs component class to the
`babeltrace.trace-info` query object contains a few fields that are not
used at the moment. Remove them, before somebody uses them, making us
stuck with them for eternity.
The removed fields are:
- stream class ids
- stream ids
- stream paths
- trace path
- trace range-ns
- trace name
The field `intersection-range-ns` will be removed in a separate patch.
Change-Id: Iee673acbb766cd951e758b5186eabb6fc058b442
Signed-off-by: Simon Marchi <simon.marchi@efficios.com>
Reviewed-on: https://review.lttng.org/c/babeltrace/+/1990
Tested-by: jenkins <jenkins@lttng.org>
Reviewed-by: Francis Deslauriers <francis.deslauriers@efficios.com>
-static
-int add_stream_ids(bt_value *info, struct ctf_fs_ds_file_group *ds_file_group)
-{
- int ret = 0;
- bt_value_map_insert_entry_status status;
-
- if (ds_file_group->stream_id != UINT64_C(-1)) {
- status = bt_value_map_insert_unsigned_integer_entry(info, "id",
- ds_file_group->stream_id);
- if (status != BT_VALUE_MAP_INSERT_ENTRY_STATUS_OK) {
- ret = -1;
- goto end;
- }
- }
-
- status = bt_value_map_insert_unsigned_integer_entry(info, "class-id",
- ds_file_group->sc->id);
- if (status != BT_VALUE_MAP_INSERT_ENTRY_STATUS_OK) {
- ret = -1;
- goto end;
- }
-
-end:
- return ret;
-}
-
static
int populate_stream_info(struct ctf_fs_ds_file_group *group,
bt_value *group_info, struct range *stream_range)
{
int ret = 0;
static
int populate_stream_info(struct ctf_fs_ds_file_group *group,
bt_value *group_info, struct range *stream_range)
{
int ret = 0;
bt_value_map_insert_entry_status insert_status;
bt_value_map_insert_entry_status insert_status;
- bt_value_array_append_element_status append_status;
- bt_value *file_paths;
struct ctf_fs_ds_index_entry *first_ds_index_entry, *last_ds_index_entry;
gchar *port_name = NULL;
struct ctf_fs_ds_index_entry *first_ds_index_entry, *last_ds_index_entry;
gchar *port_name = NULL;
- file_paths = bt_value_array_create();
- if (!file_paths) {
- ret = -1;
- goto end;
- }
-
- for (file_idx = 0; file_idx < group->ds_file_infos->len; file_idx++) {
- struct ctf_fs_ds_file_info *info =
- g_ptr_array_index(group->ds_file_infos,
- file_idx);
-
- append_status = bt_value_array_append_string_element(file_paths,
- info->path->str);
- if (append_status != BT_VALUE_ARRAY_APPEND_ELEMENT_STATUS_OK) {
- ret = -1;
- goto end;
- }
- }
-
/*
* Since each `struct ctf_fs_ds_file_group` has a sorted array of
* `struct ctf_fs_ds_index_entry`, we can compute the stream range from
/*
* Since each `struct ctf_fs_ds_file_group` has a sorted array of
* `struct ctf_fs_ds_index_entry`, we can compute the stream range from
- insert_status = bt_value_map_insert_entry(group_info, "paths",
- file_paths);
- if (insert_status != BT_VALUE_MAP_INSERT_ENTRY_STATUS_OK) {
- ret = -1;
- goto end;
- }
-
- ret = add_stream_ids(group_info, group);
- if (ret) {
- goto end;
- }
-
port_name = ctf_fs_make_port_name(group);
if (!port_name) {
ret = -1;
port_name = ctf_fs_make_port_name(group);
if (!port_name) {
ret = -1;
- bt_value_put_ref(file_paths);
bt_value_map_insert_entry_status insert_status;
bt_value_array_append_element_status append_status;
bt_value *file_groups = NULL;
bt_value_map_insert_entry_status insert_status;
bt_value_array_append_element_status append_status;
bt_value *file_groups = NULL;
- struct range trace_range = {
- .begin_ns = INT64_MAX,
- .end_ns = 0,
- .set = false,
- };
struct range trace_intersection = {
.begin_ns = 0,
.end_ns = INT64_MAX,
struct range trace_intersection = {
.begin_ns = 0,
.end_ns = INT64_MAX,
- insert_status = bt_value_map_insert_string_entry(trace_info, "name",
- trace->name->str);
- if (insert_status != BT_VALUE_MAP_INSERT_ENTRY_STATUS_OK) {
- ret = -1;
- goto end;
- }
- insert_status = bt_value_map_insert_string_entry(trace_info, "path",
- trace->path->str);
- if (insert_status != BT_VALUE_MAP_INSERT_ENTRY_STATUS_OK) {
- ret = -1;
- goto end;
- }
-
/* Find range of all stream groups, and of the trace. */
for (group_idx = 0; group_idx < trace->ds_file_groups->len;
group_idx++) {
/* Find range of all stream groups, and of the trace. */
for (group_idx = 0; group_idx < trace->ds_file_groups->len;
group_idx++) {
- trace_range.begin_ns = MIN(trace_range.begin_ns,
- group_range.begin_ns);
- trace_range.end_ns = MAX(trace_range.end_ns,
- group_range.end_ns);
- trace_range.set = true;
-
trace_intersection.begin_ns = MAX(trace_intersection.begin_ns,
group_range.begin_ns);
trace_intersection.end_ns = MIN(trace_intersection.end_ns,
trace_intersection.begin_ns = MAX(trace_intersection.begin_ns,
group_range.begin_ns);
trace_intersection.end_ns = MIN(trace_intersection.end_ns,
- ret = add_range(trace_info, &trace_range, "range-ns");
- if (ret) {
- goto end;
- }
-
if (trace_intersection.begin_ns < trace_intersection.end_ns) {
ret = add_range(trace_info, &trace_intersection,
"intersection-range-ns");
if (trace_intersection.begin_ns < trace_intersection.end_ns) {
ret = add_range(trace_info, &trace_intersection,
"intersection-range-ns");
# Key to sort streams in a predictable order.
def sort_predictably(stream):
# Key to sort streams in a predictable order.
def sort_predictably(stream):
- if 'range-ns' in stream:
- return stream['range-ns']['begin']
- else:
- return stream['paths'][0]
+ return stream['port-name']
class QueryTraceInfoClockOffsetTestCase(unittest.TestCase):
class QueryTraceInfoClockOffsetTestCase(unittest.TestCase):
]
def _check(self, trace, offset):
]
def _check(self, trace, offset):
- self.assertEqual(trace['range-ns']['begin'], 13515309000000000 + offset)
- self.assertEqual(trace['range-ns']['end'], 13515309000000120 + offset)
self.assertEqual(
trace['intersection-range-ns']['begin'], 13515309000000070 + offset
)
self.assertEqual(
trace['intersection-range-ns']['begin'], 13515309000000070 + offset
)