Hi Ivan,

Excellent idea, I've added this to
https://issues.apache.org/jira/browse/IGNITE-7730 ticket.

Sinerely,
Dmitriy Pavlov

ср, 14 февр. 2018 г. в 0:28, Ivan Rakov <ivan.glu...@gmail.com>:

> >   - applying compressor to segments older than 1 completed checkpoint
> ago -
> > saves space.
> By the way: WAL compression is already implemented that way. If there
> are any ".zip" segments in archive dir, they are free to delete.
> This can be a safe workaround for users who experience lack of free
> space - just delete compressed segments. We should mention it in
> documentation for 2.4 release.
>
> Best Regards,
> Ivan Rakov
>
> On 13.02.2018 23:53, Dmitry Pavlov wrote:
> > I see, it seems subgoal 'gain predictable size' can be achieved with
> > following options:
> >   - https://issues.apache.org/jira/browse/IGNITE-6552 implementation (in
> > variant of '...WAL history size in time units and maximum size in
> GBytes',
> > - here we probably should change description or create 2nd issue),
> >   - no-archiver mode ( segments still can be deleted, but in same
> directory
> > it was written) - maximum perfomance on ext* fs.
> >   - applying compressor to segments older than 1 completed checkpoint
> ago -
> > saves space.
> >
> > Is it necessary to store data we can safely remove?
> >
> > Or may be Ignite should handle this by itself and delete unnecessary
> > segments on low space left on device, like Linux decreases page cache in
> > memory if there is no free RAM left.
> >
> > вт, 13 февр. 2018 г. в 23:32, Ivan Rakov <ivan.glu...@gmail.com>:
> >
> >> As far as I understand, the idea is WAL archive with predictable size
> >> ("N checkpoints" is not predictable size), which can be safely removed
> >> (e.g. if free disk space is urgently needed) without losing crash
> recovery.
> >>
> >> No-archiver mode makes sense as well - it should be faster than current
> >> mode (at least, on filesystems different from XFS). It will be useful
> >> for users who has lots of disk space and want to gain maximum
> throughput.
> >>
> >> Best Regards,
> >> Ivan Rakov
> >>
> >> On 13.02.2018 23:14, Dmitry Pavlov wrote:
> >>> Hi, I didn't get the point why it may be required to separate WAL work,
> >> WAL
> >>> uncheckpointed archive (some work outside segment rotation) and
> >>> checkpointed archive (which is better to be compressed using Ignite new
> >>> feature - WAL compressor).
> >>>
> >>> Please consider new no-archiver mode implemented recently.
> >>>
> >>> If archive folder confuses end user, grid admin may set up this mode
> (all
> >>> segments is placed in 1 directory) instead of introducing folders.
> >>>
> >>>
> >>> вт, 13 февр. 2018 г. в 22:11, Ivan Rakov <ivan.glu...@gmail.com>:
> >>>
> >>>> I think, I got the point now.
> >>>> There's no need to copy files from "temp" to "archive" dir - we can
> just
> >>>> move them, which is a constant-time operation.
> >>>> Makes sense.
> >>>>
> >>>> Change is quite complex (we need to synchronize all movings thoroughly
> >>>> to avoid ruining existing WAL read iterators), but feasible.
> >>>>
> >>>> Best Regards,
> >>>> Ivan Rakov
> >>>>
> >>>>
> >>>> On 13.02.2018 22:06, Ivan Rakov wrote:
> >>>>> Yakov,
> >>>>>
> >>>>> This will work. However, I expect performance degradation with this
> >>>>> change. Disk storage has a limited number of I/O operations per
> second
> >>>>> on hardware level. List of already existing disk I/O activities
> >>>>> (writing to WAL work dir, copying from WAL work dir to WAL archive
> >>>>> dir, writing partition files during checkpoint) will be updated with
> a
> >>>>> new one - copying from WAL work dir to temp dir.
> >>>>>
> >>>>> Best Regards,
> >>>>> Ivan Rakov
> >>>>>
> >>>>> On 13.02.2018 21:35, Yakov Zhdanov wrote:
> >>>>>> Ivan,
> >>>>>>
> >>>>>> I do not want to create new files. As far as I know, now we copy
> >>>>>> segments
> >>>>>> to archive dir before they get checkpointed. What I suggest is to
> >>>>>> copy them
> >>>>>> to a temp dir under wal directory and then move to archive. In my
> >>>>>> understanding at the time we copy the files to a temp folder all
> >>>>>> changes to
> >>>>>> them are already fsynced.
> >>>>>>
> >>>>>> Correct?
> >>>>>>
> >>>>>> Yakov Zhdanov,
> >>>>>> www.gridgain.com
> >>>>>>
> >>>>>> 2018-02-13 21:29 GMT+03:00 Ivan Rakov <ivan.glu...@gmail.com>:
> >>>>>>
> >>>>>>> Yakov,
> >>>>>>>
> >>>>>>> I see the only one problem with your suggestion - number of
> >>>>>>> "uncheckpointed" segments is potentially unlimited.
> >>>>>>> Right now we have limited number (10) of file segments with
> immutable
> >>>>>>> names in WAL "work" directory. We have to keep this approach due to
> >>>>>>> known
> >>>>>>> bug in XFS - fsync time is nearly twice bigger for recently created
> >>>>>>> files.
> >>>>>>>
> >>>>>>> Best Regards,
> >>>>>>> Ivan Rakov
> >>>>>>>
> >>>>>>>
> >>>>>>> On 13.02.2018 21:22, Yakov Zhdanov wrote:
> >>>>>>>
> >>>>>>>> I meant we still will be copying segment once and then will be
> >>>>>>>> moving it
> >>>>>>>> to
> >>>>>>>> archive which should not affect file system much.
> >>>>>>>>
> >>>>>>>> Thoughts?
> >>>>>>>>
> >>>>>>>> --Yakov
> >>>>>>>>
> >>>>>>>> 2018-02-13 21:19 GMT+03:00 Yakov Zhdanov <yzhda...@apache.org>:
> >>>>>>>>
> >>>>>>>> Alex,
> >>>>>>>>> I remember we had some confusing behavior for WAL archive when
> >>>>>>>>> archived
> >>>>>>>>> segments were required for successful recovery.
> >>>>>>>>>
> >>>>>>>>> Is issue still present?
> >>>>>>>>>
> >>>>>>>>> If yes, what if we copy "uncheckpointed" segments to a directory
> >>>>>>>>> under
> >>>>>>>>> wal
> >>>>>>>>> directory and then move the segments to archive after checkpoint?
> >>>>>>>>> Will
> >>>>>>>>> this
> >>>>>>>>> work?
> >>>>>>>>>
> >>>>>>>>> Thanks!
> >>>>>>>>>
> >>>>>>>>> --Yakov
> >>>>>>>>>
> >>>>>>>>>
> >>
>
>

Reply via email to