@@ -108,20 +108,17 @@ if Code.ensure_loaded?(Redix) do
108108 pool_size = Keyword . get ( opts , :pool_size , 10 )
109109 namespace = Keyword . get ( opts , :namespace , @ default_namespace )
110110 ttl = Keyword . get ( opts , :ttl , @ default_ttl )
111- # Strip :name from custom opts to preserve internal pool naming
111+
112112 custom_redix_opts =
113113 opts
114114 |> Keyword . get ( :redix_opts , [ ] )
115115 |> validate_redix_opts ( )
116116 |> Keyword . delete ( :name )
117117
118- # Start Redix connection pool with anubis_ prefix to avoid conflicts
119118 children =
120119 for i <- 1 .. pool_size do
121120 child_id = :"anubis_#{ conn_name } _#{ i } "
122121
123- # Default Redix options, merged with custom options (custom takes precedence)
124- # Note: :name is always set internally to maintain pool integrity
125122 redix_opts =
126123 Keyword . merge ( [ name: child_id , sync_connect: false , exit_on_disconnection: false ] , custom_redix_opts )
127124
@@ -131,10 +128,8 @@ if Code.ensure_loaded?(Redix) do
131128 }
132129 end
133130
134- # Use anubis_ prefix for supervisor name
135131 supervisor_name = :"anubis_#{ conn_name } _supervisor"
136132
137- # Start connections under a supervisor
138133 case Supervisor . start_link ( children , strategy: :one_for_one , name: supervisor_name ) do
139134 { :ok , _pid } ->
140135 state = % State {
@@ -335,9 +330,16 @@ if Code.ensure_loaded?(Redix) do
335330 div ( milliseconds , 1000 )
336331 end
337332
333+ defp filter_data ( data ) do
334+ data
335+ |> Map . from_struct ( )
336+ |> Map . delete ( :name )
337+ end
338+
338339 defp encode_and_save ( state , key , data , ttl ) do
339340 conn = get_connection ( state )
340341 ttl_seconds = ms_to_seconds ( ttl )
342+ data = filter_data ( data )
341343
342344 case json_encode ( data ) do
343345 { :ok , json } ->
0 commit comments