[Tarantool-patches] [PATCH 2/2] vinyl: clean-up read views if *_build_history() fails

Konstantin Osipov kostja.osipov at gmail.com
Sat Apr 11 20:30:38 MSK 2020


* Vladislav Shpilevoy <v.shpilevoy at tarantool.org> [20/04/11 10:25]:
> > @@ -986,8 +986,11 @@ vy_write_iterator_build_read_views(struct vy_write_iterator *stream, int *count)
> >                 if (rv->history == NULL)
> >                         continue;
> >                 if (vy_read_view_merge(stream, hint, rv,
> > -                                      is_first_insert) != 0)
> > +                                      is_first_insert) != 0) {
> > +                       while (rv >= &stream->read_views[0]) {
> > +                               rv->history = NULL;
> > +                               rv--;
> > +                       }
> >                         goto error;
> 
> The same question as to the previous fix - shouldn't that be
> cleaned by the function, which created the mess, by
> vy_read_view_merge() internally?

and shouldn't this have an own test case? 

-- 
Konstantin Osipov, Moscow, Russia


More information about the Tarantool-patches mailing list