$this->addOption( 'db-touch', 'Update the page.page_touched database field', false, false );
While poking at T263929, I noticed the description for db-touch isn't quite right. It only takes effect on the stdin ingress source, not from namespace or all-namespaces
So, should the documentation (ie param description) be updated to say that it only works from STDIN, or should we make db-touch work on all sources? The guarding with misermode suggests this is probably supposed to happen, but it doesn't actually happen with the code
$conf = $this->getConfig(); if ( ( $this->namespaceId !== null || $this->allNamespaces ) && $this->doDbTouch && $conf->get( 'MiserMode' ) ) { $this->fatalError( 'Prevented mass db-invalidation (MiserMode is enabled).' ); } if ( $this->allNamespaces ) { $this->purgeNamespace( false ); } elseif ( $this->namespaceId !== null ) { $this->purgeNamespace( intval( $this->namespaceId ) ); } else { $this->doPurge(); }
And then in the doPurge loop while ( !feof( $stdin ) ) {
if ( $this->doDbTouch ) { $title->invalidateCache(); }
$this->doDbTouch isn't used in the purgeNamespace route