File 4517-disk_log-rotate.patch of Package erlang
From 41d493907bef8e2fbaa2401cc05b87bc6d5e2230 Mon Sep 17 00:00:00 2001
From: anupamasingh10 <anupamasingh31@gmail.com>
Date: Tue, 28 Mar 2023 18:08:06 +0200
Subject: [PATCH 7/7] disk_log rotate
---
lib/kernel/src/disk_log.erl | 9 ++++-----
lib/kernel/src/disk_log_1.erl | 9 +++++----
2 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/lib/kernel/src/disk_log.erl b/lib/kernel/src/disk_log.erl
index f89e3e7f11..721d4a3405 100644
--- a/lib/kernel/src/disk_log.erl
+++ b/lib/kernel/src/disk_log.erl
@@ -1285,10 +1285,9 @@ rename_file(File, NewFile, #log{type = halt}) ->
end;
rename_file(File, NewFile, #log{type = wrap}) ->
rename_file(wrap_file_extensions(File), File, NewFile, ok);
-rename_file(File, NewFile, #log{type = rotate, head = Head, extra = Handle}) ->
+rename_file(File, NewFile, #log{type = rotate, extra = Handle}) ->
{_MaxB, MaxF} = disk_log_1:get_rotate_size(Handle),
- _Handle1 = disk_log_1:rotate_file(Handle, Head),
- _ = file:delete(File),
+ disk_log_1:rotate_files(Handle#rotate_handle.file, MaxF),
rename_file(rotate_file_extensions(File, MaxF), File, NewFile, ok).
rename_file([Ext|Exts], File, NewFile0, Res) ->
@@ -1496,7 +1495,7 @@ do_inc_wrap_file(L) ->
%%-----------------------------------------------------------------
%% -> {ok, log()}
do_inc_rotate_file(#log{extra = Handle, head = Head} = L) ->
- Handle2 = disk_log_1:rotate_file(Handle, Head),
+ Handle2 = disk_log_1:do_rotate(Handle, Head),
{ok, L#log{extra = Handle2}}.
%%-----------------------------------------------------------------
@@ -1909,7 +1908,7 @@ do_trunc(#log{type = wrap}=L, Head) ->
do_change_size(NewLog2#log{extra = NewHandle, head = OldHead},
{MaxB, MaxF});
do_trunc(#log{type = rotate, head = Head, extra = Handle}=L, none) ->
- Handle1 = disk_log_1:rotate_file(Handle, Head),
+ Handle1 = disk_log_1:do_rotate(Handle, Head),
disk_log_1:remove_files(rotate, Handle1#rotate_handle.file, 0, Handle1#rotate_handle.maxF),
put(log, L#log{extra = Handle1}),
ok.
diff --git a/lib/kernel/src/disk_log_1.erl b/lib/kernel/src/disk_log_1.erl
index c366504512..c4b00d234e 100644
--- a/lib/kernel/src/disk_log_1.erl
+++ b/lib/kernel/src/disk_log_1.erl
@@ -27,9 +27,10 @@
mf_ext_inc/2, mf_int_chunk/4, mf_int_chunk_step/3,
mf_sync/1, mf_write_cache/1]).
-export([mf_ext_open/7, mf_ext_log/3, mf_ext_close/2]).
--export([open_rotate_log_file/3, rotate_file/2,
+-export([open_rotate_log_file/3, do_rotate/2,
rotate_ext_log/3, rotate_write_cache/1, rotate_ext_close/1,
- change_size_rotate/2, get_rotate_size/1]).
+ change_size_rotate/2, get_rotate_size/1,
+ rotate_files/2]).
-export([print_index_file/1]).
-export([read_index_file/1]).
@@ -1057,7 +1058,7 @@ maybe_update_compress(N, MaxF, FName) ->
end,
maybe_update_compress(N+1, MaxF, FName).
-rotate_file(#rotate_handle{file = FName, maxF = MaxF, cur_fdc = FdC} = RotHandle, Head) ->
+do_rotate(#rotate_handle{file = FName, maxF = MaxF, cur_fdc = FdC} = RotHandle, Head) ->
#cache{fd = Fd, c = C} = FdC,
{_, _C1} = write_cache(Fd, FName, C),
_ = delayed_write_close(Fd),
@@ -1122,7 +1123,7 @@ rotate_ext_log(Handle, Bins, Head, N0) ->
ext_split_bins(CurB, MaxB, FirstPos, Bins),
case FirstBins of
[] ->
- Handle1 = rotate_file(Handle, Head),
+ Handle1 = do_rotate(Handle, Head),
rotate_ext_log(Handle1, Bins, Head, N0);
_ ->
case fwrite(CurFdC, FileName, FirstBins, NoBytes) of
--
2.35.3