Page MenuHomePhabricator

Exception: DateTime::__construct(): Failed to parse time string*: Double time specification
Open, Needs TriagePublicPRODUCTION ERROR

Description

Error
normalized_message
[{reqId}] {exception_url}   Exception: DateTime::__construct(): Failed to parse time string *: Double time specification
exception.trace
from /srv/mediawiki/php-1.37.0-wmf.15/includes/specials/pagers/ContribsPager.php(859)
#0 /srv/mediawiki/php-1.37.0-wmf.15/includes/specials/pagers/ContribsPager.php(859): DateTime->__construct(string)
#1 /srv/mediawiki/php-1.37.0-wmf.15/includes/specials/SpecialContributions.php(229): ContribsPager::processDateFilter(array)
#2 /srv/mediawiki/php-1.37.0-wmf.15/includes/specialpage/SpecialPage.php(646): SpecialContributions->execute(NULL)
#3 /srv/mediawiki/php-1.37.0-wmf.15/includes/specialpage/SpecialPageFactory.php(1363): SpecialPage->run(NULL)
#4 /srv/mediawiki/php-1.37.0-wmf.15/includes/MediaWiki.php(314): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, RequestContext)
#5 /srv/mediawiki/php-1.37.0-wmf.15/includes/MediaWiki.php(925): MediaWiki->performRequest()
#6 /srv/mediawiki/php-1.37.0-wmf.15/includes/MediaWiki.php(559): MediaWiki->main()
#7 /srv/mediawiki/php-1.37.0-wmf.15/index.php(53): MediaWiki->run()
#8 /srv/mediawiki/php-1.37.0-wmf.15/index.php(46): wfIndexMain()
#9 /srv/mediawiki/w/index.php(3): require(string)
#10 {main}
Impact
  • Throwing an exception on user input
Notes

Details

Request URL
https://en.wikipedia.org/w/index.php?title=*&limit=*&contribs=*&target=*&namespace=*&year=*&month=*

Event Timeline

Similar to T149257, but it seems the value is redacted here. I can use letters for the query parameter and it does not give fatal.

DateTime is getting a TS_ISO_8601 timestamp. There must be a way to create invalid iso timestamps with the user input. It is possible to get some more information about the values for year/month?