https://bugzilla.wikimedia.org/show_bug.cgi?id=12363

--- Comment #40 from Bawolff (Brian Wolff) <bawolff...@gmail.com> ---
So to flesh out comment 38, here's what I would suggest:

*In Title::moveToInternal, if this->getNamespace() !== $nt->getNamespace(),
then do $logEntry->setRelations( array( 'new_page_helper' => sprintf(
"%05d|%s", $nt->getNamespace(), $logEntry->getTimestamp() ) );

*Then we do a second query, something along the lines of "SELECT log_namespace
as rc_namespace, log_title as rc_title, ... FROM log_search INNER JOIN logging
ON ls_log_id = log_id where ls_field = 'new_page_helper' and ls_filed_value
between " . sprintf( "%05d|%s", $targetNamespace,
$firstTimestampReturnedFromMainQuery ) . " AND " . sprintf( "%05d|%s",
$targetNamespace, $lastTimestampReturnedFromMainQuery ) . " ORDER BY ls_value
LIMIT $limit";

Combine results using FakeResultWrapper in some manner similar to
ImageListPager::combineResult.


When namespace is set to all, or an inverted namespace. Could probably just
query logging table, and then join on log_search, with a ls_field_value NOT
LIKE sprintf( "%05d|%', $namespace ). This would be potentially a little bit
more expensive query, but still probably fine, especially because people don't
look at Special:NewPages for inverted namespace all that often AFAIK. For the
all namespace cases I wonder if its even appropriate to do anything, given that
all moved pages already "existed" in at least one namespace, in some sense.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
Wikibugs-l mailing list
Wikibugs-l@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikibugs-l

Reply via email to