Unable to restore page revision #295

Closed
opened 2026-02-04 18:20:29 +03:00 by OVERLORD · 2 comments
Owner

Originally created by @domainzero on GitHub (Mar 21, 2017).

For Bug Reports

  • BookStack Version: v0.15.2
  • PHP Version: 5.6.30
  • MySQL Version: Ver 15.1 Distrib 10.1.21-MariaDB, for Linux (x86_64) using EditLine wrapper
Expected Behavior

Page revision is restored when going to Revisions and selecting Restore on any of the revisions.

Actual Behavior

Error is encountered when attempting to restore.
Here's the whole capture.

ErrorException in EntityRepo.php line 103:
Undefined index: page_revision

in EntityRepo.php line 103
at HandleExceptions->handleError(8, 'Undefined index: page_revision', '/var/www/stacks/app/Repos/EntityRepo.php', 103, array('type' => 'page_revision')) in EntityRepo.php line 103
at EntityRepo->getEntity('page_revision') in EntityRepo.php line 114
at EntityRepo->entityQuery('page_revision', false) in EntityRepo.php line 141
at EntityRepo->getById('page_revision', '292') in EntityRepo.php line 1061
at EntityRepo->restorePageRevision(object(Page), object(Book), '292') in PageController.php line 426
at PageController->restoreRevision('server-notes', 'nasnetwork', '292')
at call_user_func_array(array(object(PageController), 'restoreRevision'), array('server-notes', 'nasnetwork', '292')) in Controller.php line 55
at Controller->callAction('restoreRevision', array('server-notes', 'nasnetwork', '292')) in ControllerDispatcher.php line 44
at ControllerDispatcher->dispatch(object(Route), object(PageController), 'restoreRevision') in Route.php line 204
at Route->runController() in Route.php line 160
at Route->run() in Router.php line 559
at Router->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 30
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Controller.php line 44
at Controller->BookStack\Http\Controllers\{closure}(object(Request), object(Closure)) in Pipeline.php line 131
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Authenticate.php line 45
at Authenticate->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Localization.php line 21
at Localization->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in SubstituteBindings.php line 41
at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in VerifyCsrfToken.php line 65
at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37
at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59
at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 102
at Pipeline->then(object(Closure)) in Router.php line 561
at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 520
at Router->dispatchToRoute(object(Request)) in Router.php line 498
at Router->dispatch(object(Request)) in Kernel.php line 174
at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 30
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Debugbar.php line 51
at Debugbar->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49
at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 64
at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46
at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 148
at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53
at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 102
at Pipeline->then(object(Closure)) in Kernel.php line 149
at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116
at Kernel->handle(object(Request)) in index.php line 54
Originally created by @domainzero on GitHub (Mar 21, 2017). ### For Bug Reports * BookStack Version: v0.15.2 * PHP Version: 5.6.30 * MySQL Version: Ver 15.1 Distrib 10.1.21-MariaDB, for Linux (x86_64) using EditLine wrapper ##### Expected Behavior Page revision is restored when going to Revisions and selecting Restore on any of the revisions. ##### Actual Behavior Error is encountered when attempting to restore. Here's the whole capture. ``` ErrorException in EntityRepo.php line 103: Undefined index: page_revision in EntityRepo.php line 103 at HandleExceptions->handleError(8, 'Undefined index: page_revision', '/var/www/stacks/app/Repos/EntityRepo.php', 103, array('type' => 'page_revision')) in EntityRepo.php line 103 at EntityRepo->getEntity('page_revision') in EntityRepo.php line 114 at EntityRepo->entityQuery('page_revision', false) in EntityRepo.php line 141 at EntityRepo->getById('page_revision', '292') in EntityRepo.php line 1061 at EntityRepo->restorePageRevision(object(Page), object(Book), '292') in PageController.php line 426 at PageController->restoreRevision('server-notes', 'nasnetwork', '292') at call_user_func_array(array(object(PageController), 'restoreRevision'), array('server-notes', 'nasnetwork', '292')) in Controller.php line 55 at Controller->callAction('restoreRevision', array('server-notes', 'nasnetwork', '292')) in ControllerDispatcher.php line 44 at ControllerDispatcher->dispatch(object(Route), object(PageController), 'restoreRevision') in Route.php line 204 at Route->runController() in Route.php line 160 at Route->run() in Router.php line 559 at Router->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 30 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Controller.php line 44 at Controller->BookStack\Http\Controllers\{closure}(object(Request), object(Closure)) in Pipeline.php line 131 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Authenticate.php line 45 at Authenticate->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Localization.php line 21 at Localization->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in SubstituteBindings.php line 41 at SubstituteBindings->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in VerifyCsrfToken.php line 65 at VerifyCsrfToken->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37 at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59 at EncryptCookies->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 102 at Pipeline->then(object(Closure)) in Router.php line 561 at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 520 at Router->dispatchToRoute(object(Request)) in Router.php line 498 at Router->dispatch(object(Request)) in Kernel.php line 174 at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) in Pipeline.php line 30 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Debugbar.php line 51 at Debugbar->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49 at ShareErrorsFromSession->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 64 at StartSession->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 46 at CheckForMaintenanceMode->handle(object(Request), object(Closure)) in Pipeline.php line 148 at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) in Pipeline.php line 53 at Pipeline->Illuminate\Routing\{closure}(object(Request)) in Pipeline.php line 102 at Pipeline->then(object(Closure)) in Kernel.php line 149 at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 116 at Kernel->handle(object(Request)) in index.php line 54 ```
OVERLORD added the 🐛 Bug label 2026-02-04 18:20:29 +03:00
Author
Owner

@ssddanbrown commented on GitHub (Mar 24, 2017):

Hi @domainzero, Thanks for reporting this. Sorry for the delay in my response and for the fact the issue is apparent.

I have fixed the issue and now added a proper test for page restores to help prevent a bug like this happening again. I've just pushed up a new release, v0.15.3, to cover this.

@ssddanbrown commented on GitHub (Mar 24, 2017): Hi @domainzero, Thanks for reporting this. Sorry for the delay in my response and for the fact the issue is apparent. I have fixed the issue and now added a proper test for page restores to help prevent a bug like this happening again. I've just pushed up a new release, v0.15.3, to cover this.
Author
Owner

@domainzero commented on GitHub (Mar 25, 2017):

No worries. Good work!

@domainzero commented on GitHub (Mar 25, 2017): No worries. Good work!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/BookStack#295