Page MenuHomePhabricator

Improve OutOfBoundsException error message
Closed, ResolvedPublic

Description

problem when accessing a page on the French Wikisource.

https://fr.wikisource.org/w/index.php?title=Le_P%C3%A8lerin_de_Sainte_Anne/Tome_II&oldid=5051842

result:

Exception encountered, of type "OutOfBoundsException"

Event Timeline

Ernest-Mtl raised the priority of this task from to Needs Triage.
Ernest-Mtl updated the task description. (Show Details)
Ernest-Mtl added a project: Wikisource.
Ernest-Mtl added a subscriber: Ernest-Mtl.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptSep 1 2015, 1:01 PM
Reedy added a subscriber: Reedy.EditedSep 1 2015, 1:06 PM
{
  "_index": "logstash-2015.09.01",
  "_type": "mediawiki",
  "_id": "AU-JAgc4IkWKhegMbJ2-",
  "_score": null,
  "_source": {
    "message": "There is no page number 634 in the pagination.",
    "@version": 1,
    "@timestamp": "2015-09-01T13:04:15.087Z",
    "type": "mediawiki",
    "host": "mw1020",
    "level": "ERROR",
    "tags": [
      "syslog",
      "es",
      "es",
      "exception-json",
      "normalized_message_untrimmed"
    ],
    "channel": "exception",
    "url": "/wiki/Le_P%C3%A8lerin_de_Sainte_Anne/Tome_II",
    "ip": "10.64.0.103",
    "http_method": "GET",
    "server": "fr.wikisource.org",
    "referrer": null,
    "uid": "bb94153",
    "process_id": 920,
    "wiki": "frwikisource",
    "private": true,
    "file": "/srv/mediawiki/php-1.26wmf20/extensions/ProofreadPage/includes/Pagination/FilePagination.php",
    "line": 73,
    "code": 0,
    "backtrace": [
      {
        "file": "/srv/mediawiki/php-1.26wmf20/extensions/ProofreadPage/includes/Parser/PagesTagParser.php",
        "line": 143,
        "function": "getDisplayedPageNumber",
        "class": "ProofreadPage\\Pagination\\FilePagination",
        "type": "->",
        "args": [
          "string"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/extensions/ProofreadPage/includes/Parser/ParserEntryPoint.php",
        "line": 38,
        "function": "render",
        "class": "ProofreadPage\\Parser\\PagesTagParser",
        "type": "->",
        "args": [
          "NULL",
          "array"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/parser/Parser.php",
        "line": 4235,
        "function": "renderPagesTag",
        "class": "ProofreadPage\\Parser\\ParserEntryPoint",
        "type": "::",
        "args": [
          "NULL",
          "array",
          "Parser"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/parser/Preprocessor_Hash.php",
        "line": 1173,
        "function": "extensionSubstitution",
        "class": "Parser",
        "type": "->",
        "args": [
          "array",
          "PPFrame_Hash"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/parser/Parser.php",
        "line": 3343,
        "function": "expand",
        "class": "PPFrame_Hash",
        "type": "->",
        "args": [
          "PPNode_Hash_Tree",
          "integer"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/parser/Parser.php",
        "line": 1239,
        "function": "replaceVariables",
        "class": "Parser",
        "type": "->",
        "args": [
          "string"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/parser/Parser.php",
        "line": 439,
        "function": "internalParse",
        "class": "Parser",
        "type": "->",
        "args": [
          "string"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/content/WikitextContent.php",
        "line": 331,
        "function": "parse",
        "class": "Parser",
        "type": "->",
        "args": [
          "string",
          "Title",
          "ParserOptions",
          "boolean",
          "boolean",
          "integer"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/content/AbstractContent.php",
        "line": 497,
        "function": "fillParserOutput",
        "class": "WikitextContent",
        "type": "->",
        "args": [
          "Title",
          "integer",
          "ParserOptions",
          "boolean",
          "ParserOutput"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/poolcounter/PoolWorkArticleView.php",
        "line": 140,
        "function": "getParserOutput",
        "class": "AbstractContent",
        "type": "->",
        "args": [
          "Title",
          "integer",
          "ParserOptions"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/poolcounter/PoolCounterWork.php",
        "line": 123,
        "function": "doWork",
        "class": "PoolWorkArticleView",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/page/Article.php",
        "line": 676,
        "function": "execute",
        "class": "PoolCounterWork",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/actions/ViewAction.php",
        "line": 44,
        "function": "view",
        "class": "Article",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/MediaWiki.php",
        "line": 456,
        "function": "show",
        "class": "ViewAction",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/MediaWiki.php",
        "line": 255,
        "function": "performAction",
        "class": "MediaWiki",
        "type": "->",
        "args": [
          "Article",
          "Title"
        ]
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/MediaWiki.php",
        "line": 683,
        "function": "performRequest",
        "class": "MediaWiki",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/includes/MediaWiki.php",
        "line": 474,
        "function": "main",
        "class": "MediaWiki",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/php-1.26wmf20/index.php",
        "line": 41,
        "function": "run",
        "class": "MediaWiki",
        "type": "->",
        "args": []
      },
      {
        "file": "/srv/mediawiki/w/index.php",
        "line": 3,
        "function": "include",
        "args": [
          "string"
        ]
      }
    ],
    "exception_id": "03013062",
    "class": "mediawiki",
    "message_checksum": "004b18a3468ce7ec16072aa736d6b7f7",
    "normalized_message": "There is no page number 634 in the pagination."
  },
  "sort": [
    1441112655087
  ]
}
Reedy moved this task from Backlog to Top priority on the ProofreadPage board.Sep 1 2015, 1:08 PM
Reedy added a subscriber: Tpt.
Tpt added a comment.Sep 1 2015, 1:54 PM

I've fixed the page [1]. I keep this issue open in order to add a nice error message to the parser output instead of this exception.

[1] https://fr.wikisource.org/w/index.php?title=Le_P%C3%A8lerin_de_Sainte_Anne%2FTome_II&type=revision&diff=5219774&oldid=5051842

Reedy renamed this task from OutOfBoundsException on French Wikisource to Improve OutOfBoundsException error message.Sep 1 2015, 2:06 PM
Reedy lowered the priority of this task from High to Low.
Legoktm updated the task description. (Show Details)Sep 1 2015, 3:25 PM

Change 235455 had a related patch set uploaded (by Tpt):
Improves the range checking of <page> tag

https://gerrit.wikimedia.org/r/235455

Change 235455 merged by jenkins-bot:
Improves the range checking of <page> tag

https://gerrit.wikimedia.org/r/235455

Tpt closed this task as Resolved.Nov 24 2015, 3:06 PM
Tpt claimed this task.

Resolved by change I84d746b74635e3aea85da33a268cec3c6342d64c

GOIII moved this task from Top priority to Done on the ProofreadPage board.Jun 12 2016, 4:02 AM