Skip to content

Commit ede3b69

Browse files
committed
Remove unused storage callbacks
1 parent 4c7a4b6 commit ede3b69

6 files changed

Lines changed: 2 additions & 134 deletions

File tree

packages/sync-service/lib/electric/shape_cache/crashing_file_storage.ex

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@ defmodule Electric.ShapeCache.CrashingFileStorage do
1010
defdelegate for_shape(shape_handle, opts), to: PureFileStorage
1111
defdelegate start_link(opts), to: PureFileStorage
1212
defdelegate get_all_stored_shape_handles(opts), to: PureFileStorage
13-
defdelegate get_stored_shapes(opts, shape_handles), to: PureFileStorage
14-
defdelegate metadata_backup_dir(opts), to: PureFileStorage
1513
defdelegate get_total_disk_usage(opts), to: PureFileStorage
1614
defdelegate fetch_latest_offset(opts), to: PureFileStorage
1715
defdelegate fetch_pg_snapshot(opts), to: PureFileStorage

packages/sync-service/lib/electric/shape_cache/in_memory_storage.ex

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,12 +130,6 @@ defmodule Electric.ShapeCache.InMemoryStorage do
130130
@impl Electric.ShapeCache.Storage
131131
def get_all_stored_shape_handles(_opts), do: {:ok, MapSet.new()}
132132

133-
@impl Electric.ShapeCache.Storage
134-
def get_stored_shapes(_opts, _shape_handles), do: %{}
135-
136-
@impl Electric.ShapeCache.Storage
137-
def metadata_backup_dir(_opts), do: nil
138-
139133
@impl Electric.ShapeCache.Storage
140134
def get_total_disk_usage(_opts), do: 0
141135

packages/sync-service/lib/electric/shape_cache/pure_file_storage.ex

Lines changed: 2 additions & 56 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ defmodule Electric.ShapeCache.PureFileStorage do
3838
alias Electric.ShapeCache.PureFileStorage.Snapshot
3939
alias Electric.ShapeCache.PureFileStorage.WriteLoop
4040
alias Electric.ShapeCache.Storage
41-
alias Electric.Shapes.Shape
4241

4342
import LogOffset
4443
import Electric.ShapeCache.PureFileStorage.SharedRecords
@@ -94,9 +93,6 @@ defmodule Electric.ShapeCache.PureFileStorage do
9493

9594
@clean_cache_keys storage_meta_keys() -- @read_path_keys
9695

97-
# Directory for storing metadata
98-
@metadata_storage_dir ".meta"
99-
10096
def shared_opts(opts) do
10197
stack_id = Keyword.fetch!(opts, :stack_id)
10298
storage_dir = Keyword.get(opts, :storage_dir, "./shapes")
@@ -207,37 +203,6 @@ defmodule Electric.ShapeCache.PureFileStorage do
207203
end
208204
end
209205

210-
def get_stored_shapes(stack_opts, shape_handles) do
211-
Task.Supervisor.async_stream(
212-
stack_task_supervisor(stack_opts.stack_id),
213-
shape_handles,
214-
fn handle ->
215-
shape_opts = for_shape(handle, stack_opts)
216-
217-
case read_shape_definition(shape_opts) do
218-
{:ok, shape} ->
219-
{handle, {:ok, shape}}
220-
221-
_ ->
222-
Logger.warning(
223-
"Failed to read shape definition for shape #{handle}, removing it from disk"
224-
)
225-
226-
cleanup!(shape_opts)
227-
{handle, {:error, :failed_to_recover_shape}}
228-
end
229-
end,
230-
timeout: :infinity,
231-
ordered: false
232-
)
233-
|> Enum.map(fn {:ok, res} -> res end)
234-
|> Map.new()
235-
end
236-
237-
def metadata_backup_dir(%{base_path: base_path}) do
238-
Path.join([base_path, @metadata_storage_dir, "backups"])
239-
end
240-
241206
def drop_all_ets_entries(stack_id) do
242207
try do
243208
:ets.delete_all_objects(stack_ets(stack_id))
@@ -525,7 +490,7 @@ defmodule Electric.ShapeCache.PureFileStorage do
525490
def init_writer!(shape_opts, shape_definition) do
526491
table = :ets.new(:in_memory_storage, [:ordered_set, :protected])
527492

528-
{initial_acc, suffix} = initialise_filesystem!(shape_opts, shape_definition)
493+
{initial_acc, suffix} = initialise_filesystem!(shape_opts)
529494

530495
register_with_stack(
531496
shape_opts,
@@ -571,7 +536,7 @@ defmodule Electric.ShapeCache.PureFileStorage do
571536
writer_state(state, writer_acc: WriteLoop.flush_and_close_all(acc, state))
572537
end
573538

574-
defp initialise_filesystem!(%__MODULE__{} = opts, shape_definition) do
539+
def initialise_filesystem!(%__MODULE__{} = opts) do
575540
on_disk_version = read_metadata!(opts, :version)
576541
new? = is_nil(on_disk_version)
577542

@@ -587,7 +552,6 @@ defmodule Electric.ShapeCache.PureFileStorage do
587552

588553
if initialize? do
589554
create_directories!(opts)
590-
write_shape_definition!(opts, shape_definition)
591555
end
592556

593557
suffix =
@@ -749,24 +713,6 @@ defmodule Electric.ShapeCache.PureFileStorage do
749713
:ets.update_element(stack_ets, handle, updates)
750714
end
751715

752-
defp write_shape_definition!(%__MODULE__{} = opts, shape_definition) do
753-
write!(
754-
shape_metadata_path(opts, "shape_definition.json"),
755-
Jason.encode!(shape_definition),
756-
[:raw]
757-
)
758-
end
759-
760-
defp read_shape_definition(%__MODULE__{} = opts) do
761-
path = shape_metadata_path(opts, "shape_definition.json")
762-
763-
with {:ok, contents} <- File.open(path, [:read, :raw, :read_ahead], &IO.binread(&1, :eof)),
764-
{:ok, decoded} <- Jason.decode(if(is_binary(contents), do: contents, else: "")),
765-
{:ok, rebuilt} <- Shape.from_json_safe(decoded) do
766-
{:ok, rebuilt}
767-
end
768-
end
769-
770716
defp last_snapshot_chunk(%__MODULE__{} = opts),
771717
do: read_cached_metadata(opts, :last_snapshot_chunk)
772718

packages/sync-service/lib/electric/shape_cache/storage.ex

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -53,13 +53,6 @@ defmodule Electric.ShapeCache.Storage do
5353
@callback get_all_stored_shape_handles(compiled_opts()) ::
5454
{:ok, MapSet.t(shape_handle())} | {:error, term()}
5555

56-
@doc "Retrieve stored shapes for given shape handles"
57-
@callback get_stored_shapes(compiled_opts(), Enumerable.t(shape_handle())) ::
58-
%{shape_handle() => {:ok, shape_def :: Shape.t()} | {:error, term()}}
59-
60-
@doc "Get the directory where metadata backups are stored."
61-
@callback metadata_backup_dir(compiled_opts()) :: String.t() | nil
62-
6356
@doc "Get the total disk usage for all shapes"
6457
@callback get_total_disk_usage(compiled_opts()) :: non_neg_integer()
6558

@@ -260,16 +253,6 @@ defmodule Electric.ShapeCache.Storage do
260253
mod.get_all_stored_shape_handles(opts)
261254
end
262255

263-
@impl __MODULE__
264-
def get_stored_shapes({mod, opts}, shape_handles) do
265-
mod.get_stored_shapes(opts, shape_handles)
266-
end
267-
268-
@impl __MODULE__
269-
def metadata_backup_dir({mod, opts}) do
270-
mod.metadata_backup_dir(opts)
271-
end
272-
273256
@impl __MODULE__
274257
def get_total_disk_usage({mod, opts}) do
275258
mod.get_total_disk_usage(opts)

packages/sync-service/test/electric/shape_cache/storage_implementations_test.exs

Lines changed: 0 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1187,46 +1187,6 @@ defmodule Electric.ShapeCache.StorageImplimentationsTest do
11871187
end
11881188
end
11891189

1190-
describe "#{module_name}.get_stored_shapes/1" do
1191-
@describetag skip_initialise: true
1192-
setup :start_storage
1193-
1194-
test "retrieves no shapes if no shapes persisted", %{storage_base: storage_base} do
1195-
assert %{} = Storage.get_stored_shapes(storage_base, [])
1196-
end
1197-
1198-
test "retrieves stored shapes", %{storage: opts, storage_base: storage_base} do
1199-
_writer = Storage.init_writer!(opts, @shape)
1200-
invalid_handle = "invalid-handle"
1201-
1202-
assert %{@shape_handle => {:ok, parsed}, ^invalid_handle => {:error, _}} =
1203-
Storage.get_stored_shapes(storage_base, [@shape_handle, invalid_handle])
1204-
1205-
assert @shape == parsed
1206-
end
1207-
1208-
test "restores shape snapshot started flag", %{storage: opts, storage_base: storage_base} do
1209-
_writer = Storage.init_writer!(opts, @shape)
1210-
:ok = Storage.mark_snapshot_as_started(opts)
1211-
1212-
assert %{@shape_handle => {:ok, parsed}} =
1213-
Storage.get_stored_shapes(storage_base, [@shape_handle])
1214-
1215-
assert @shape == parsed
1216-
end
1217-
end
1218-
1219-
describe "#{module_name}.metadata_backup_dir/1" do
1220-
@describetag skip_initialise: true
1221-
setup :start_storage
1222-
1223-
test "returns metadata backup directory", %{storage_base: storage_base} do
1224-
assert dir = Storage.metadata_backup_dir(storage_base)
1225-
assert is_binary(dir)
1226-
assert Path.type(dir) == :absolute
1227-
end
1228-
end
1229-
12301190
describe "#{module_name}.cleanup!/1" do
12311191
setup :start_storage
12321192

@@ -1299,7 +1259,6 @@ defmodule Electric.ShapeCache.StorageImplimentationsTest do
12991259

13001260
Storage.cleanup_all!(storage_base)
13011261
assert Storage.get_total_disk_usage(storage_base) == 0
1302-
refute File.dir?(Storage.metadata_backup_dir(storage_base))
13031262
end
13041263

13051264
test "should handle entire base directory already missing", %{storage_base: storage_base} do

packages/sync-service/test/support/test_storage.ex

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -77,18 +77,6 @@ defmodule Support.TestStorage do
7777
Storage.get_all_stored_shape_handles(storage)
7878
end
7979

80-
@impl Electric.ShapeCache.Storage
81-
def get_stored_shapes({parent, _init, storage}, shape_handles) do
82-
send(parent, {__MODULE__, :get_stored_shapes, shape_handles})
83-
Storage.get_stored_shapes(storage, shape_handles)
84-
end
85-
86-
@impl Electric.ShapeCache.Storage
87-
def metadata_backup_dir({parent, _init, storage}) do
88-
send(parent, {__MODULE__, :metadata_backup_dir})
89-
Storage.metadata_backup_dir(storage)
90-
end
91-
9280
@impl Electric.ShapeCache.Storage
9381
def get_total_disk_usage({parent, _init, storage}) do
9482
send(parent, {__MODULE__, :get_total_disk_usage})

0 commit comments

Comments
 (0)