projects
/
lttng-tools.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix: relay: viewer_get_next_index handle null vstream
[lttng-tools.git]
/
src
/
bin
/
lttng-relayd
/
live.c
diff --git
a/src/bin/lttng-relayd/live.c
b/src/bin/lttng-relayd/live.c
index 2972a500f13f860f21b7e8422bdcbc2e0dd17c31..bafdf35ce90034a90e8ee0e9eaa1a8996103de9e 100644
(file)
--- a/
src/bin/lttng-relayd/live.c
+++ b/
src/bin/lttng-relayd/live.c
@@
-313,6
+313,18
@@
int make_viewer_streams(struct relay_session *session,
if (!stream->published) {
goto next;
}
if (!stream->published) {
goto next;
}
+ /*
+ * Stream has no data, don't consider it yet.
+ */
+ if (stream->is_metadata) {
+ if (!stream->metadata_received) {
+ goto next;
+ }
+ } else {
+ if (stream->prev_seq == -1ULL) {
+ goto next;
+ }
+ }
vstream = viewer_stream_get_by_id(stream->stream_handle);
if (!vstream) {
vstream = viewer_stream_create(stream, seek_t);
vstream = viewer_stream_get_by_id(stream->stream_handle);
if (!vstream) {
vstream = viewer_stream_create(stream, seek_t);
@@
-1442,9
+1454,11
@@
send_reply:
}
health_code_update();
}
health_code_update();
- DBG("Index %" PRIu64 " for stream %" PRIu64 " sent",
- vstream->last_sent_index,
- vstream->stream->stream_handle);
+ if (vstream) {
+ DBG("Index %" PRIu64 " for stream %" PRIu64 " sent",
+ vstream->last_sent_index,
+ vstream->stream->stream_handle);
+ }
end:
if (metadata_viewer_stream) {
viewer_stream_put(metadata_viewer_stream);
end:
if (metadata_viewer_stream) {
viewer_stream_put(metadata_viewer_stream);
This page took
0.025806 seconds
and
5
git commands to generate.