[wp-trac] [WordPress Trac] #58286: Growing database due to unnecessary transients containing "g_url_details_response_"
    WordPress Trac 
    noreply at wordpress.org
       
    Wed May 10 14:05:19 UTC 2023
    
    
  
#58286: Growing database due to unnecessary transients containing
"g_url_details_response_"
--------------------------+------------------------------
 Reporter:  davidki       |       Owner:  (none)
     Type:  defect (bug)  |      Status:  new
 Priority:  normal        |   Milestone:  Awaiting Review
Component:  Database      |     Version:  6.2
 Severity:  critical      |  Resolution:
 Keywords:                |     Focuses:
--------------------------+------------------------------
Description changed by SergeyBiryukov:
Old description:
> I created 2 external links in the block editor. This created 2 different
> transients in the database in wp_options, that have a different dynamic
> part at the end:
>
> _site_transient_g_url_details_response_ab62baf1c770821f259d255001f7a9b9
> _site_transient_g_url_details_response_f6ce245428f26d29c355a44ceb3b9bf3
>
> This transient contains "g_url_details_response_" and is produced by file
> class-wp-rest-url-details-controller.php
>
> The value of such created transient is entire html from URL to which I
> link.
>
> I only want to add some external link in gutenberg editor. Why on earth
> is necessary to parse the entire html from URL to which I link?
>
> What if I will have for example 20 external affiliate links on one page
> and I will have 1000 such pages.
>
> This will unnecessarily bloat the database with useless and unnecessary
> data!
>
> How can I prevent the creation of transients whose name part contains
> "g_url_details_response_"?
>
> I tryed it using this filter:
> apply_filters( "pre_set_site_transient_{$transient}", mixed $value,
> string $transient )
>
> But it needs full transient name, which is created dynamically using this
> function
>
> private function build_cache_key_for_url( $url ) {
>                 return 'g_url_details_response_' . md5( $url );
>         }
>
> from file class-wp-rest-url-details-controller.php
>
> So please remove these pointless transients from wordpress or give users
> a way to prevent them from being created!
>
>
> Thank you for any reply,
>
> david
New description:
 I created 2 external links in the block editor. This created 2 different
 transients in the database in wp_options, that have a different dynamic
 part at the end:
 {{{
 _site_transient_g_url_details_response_ab62baf1c770821f259d255001f7a9b9
 _site_transient_g_url_details_response_f6ce245428f26d29c355a44ceb3b9bf3
 }}}
 This transient contains "g_url_details_response_" and is produced by file
 class-wp-rest-url-details-controller.php
 The value of such created transient is entire html from URL to which I
 link.
 I only want to add some external link in gutenberg editor. Why on earth is
 necessary to parse the entire html from URL to which I link?
 What if I will have for example 20 external affiliate links on one page
 and I will have 1000 such pages.
 This will unnecessarily bloat the database with useless and unnecessary
 data!
 How can I prevent the creation of transients whose name part contains
 "g_url_details_response_"?
 I tryed it using this filter:
 {{{
 apply_filters( "pre_set_site_transient_{$transient}", mixed $value, string
 $transient )
 }}}
 But it needs full transient name, which is created dynamically using this
 function
 {{{
 private function build_cache_key_for_url( $url ) {
         return 'g_url_details_response_' . md5( $url );
 }
 }}}
 from file class-wp-rest-url-details-controller.php
 So please remove these pointless transients from wordpress or give users a
 way to prevent them from being created!
 Thank you for any reply,
 david
--
-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/58286#comment:1>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform
    
    
More information about the wp-trac
mailing list