On Thu, Dec 18, 2014 at 4:39 PM, Filipe Brandenburger <filbran...@google.com> wrote: > Not sure what's the correct solution, maybe journal_file_save_location > needs to happen only in real_journal_next() outside the > ORDERED_HASHMAP_FOREACH loop? I'll try that and report if I find > something that seems to solve this problem...
I tried this on top of commit 6573ef05a3cbe1 and it solves the problem. After applying this patch: diff --git a/src/journal/sd-journal.c b/src/journal/sd-journal.c index 71b056c..a727e12 100644 --- a/src/journal/sd-journal.c +++ b/src/journal/sd-journal.c @@ -859,8 +859,6 @@ found = true; if (found) { - journal_file_save_location(f, direction, c, cp); - if (ret) *ret = c; if (offset) @@ -917,6 +915,8 @@ if (!new_file) return 0; + journal_file_save_location(new_file, direction, o, new_offset); + r = journal_file_move_to_object(new_file, OBJECT_ENTRY, new_offset, &o); if (r < 0) return r; Then "test-journal-stream" and "test-journal-interleaving" are working again and I have a clean "make check" run. But this does not work on trunk head, even after adapting it, the tests start to fail in a different location, probably because of the changes that come after it, so I think we'll need this and further changes to it. I'll keep looking. Cheers, Filipe _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel