>From: Ideriha, Takeshi [mailto:ideriha.take...@jp.fujitsu.com]
>The detailed comments for the source code will be provided later.

Hi, 
I'm adding some comments to 0001 and 0002 one.

[0001 patch]

+                       /*                                                      
                                                                                
            
+                        * Calculate the duration from the time of the last 
access to the                                                                   
                
+                        * "current" time. Since catcacheclock is not advanced 
within a                                                                        
             
+                        * transaction, the entries that are accessed within 
the current                                                                     
               
+                        * transaction won't be pruned.                         
                                                                                
            
+                        */                                                     
                                                                                
            
+                       TimestampDifference(ct->lastaccess, catcacheclock, 
&entry_age, &us); 


+                       /*                                                      
                                  
+                        * Try to remove entries older than cache_prune_min_age 
seconds.                          

+                       if (entry_age > cache_prune_min_age) 


Can you change this comparison between entry_age and cache_prune_min_age 
to "entry_age >= cache_prune_min_age"?
That is, I want the feature that entries that are accessed even within the 
transaction 
is pruned in case of cache_prune_min_age = 0 
I can hit upon some of my customer who want to always keep memory usage below 
certain limit as strictly as possible.
This kind of strict user would set cache_prune_min_age to 0 and would not want 
to exceed the memory target even
if within a transaction.

As I put miscellaneous comments about 0001 patch in some previous email, so 
please take a look at it.

[0002 patch]
I haven't looked into every detail but here are some comments.

Maybe you would also need to add some sentences to this page:
https://www.postgresql.org/docs/current/monitoring-stats.html

+pgstat_get_syscache_stats(PG_FUNCTION_ARGS) 
Function name like 'pg_stat_XXX' would match surrounding code. 

When applying patch I found trailing whitespace warning:
../patch/horiguchi_cache/v6_stats/0002-Syscache-usage-tracking-feature.patch:157:
 trailing whitespace.

../patch/horiguchi_cache/v6_stats/0002-Syscache-usage-tracking-feature.patch:256:
 trailing whitespace.

../patch/horiguchi_cache/v6_stats/0002-Syscache-usage-tracking-feature.patch:301:
 trailing whitespace.

../patch/horiguchi_cache/v6_stats/0002-Syscache-usage-tracking-feature.patch:483:
 trailing whitespace.

../patch/horiguchi_cache/v6_stats/0002-Syscache-usage-tracking-feature.patch:539:
 trailing whitespace.
    

Regards,
Takeshi Ideriha


Reply via email to