View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001253 | bareos-core | webui | public | 2020-06-17 09:58 | 2024-05-15 15:38 |
Reporter | tagort214 | Assigned To | frank | ||
Priority | normal | Severity | major | Reproducibility | always |
Status | closed | Resolution | open | ||
Platform | Linux | OS | Ubuntu | OS Version | 16.04 |
Product Version | 19.2.7 | ||||
Summary | 0001253: Can't restore files from Webui | ||||
Description | When I try to restore files from Webui it returns this error: here was an error while loading data for this tree. Error: ajax Plugin: core Reason: Could not load node Data: {"id":"#","xhr":{"readyState":4,"responseText":"\n\n\n \n \n \n \n\n \n \n\n\n \n \n\n\n\n\n \n\n \n\n \n \n\n Произошла ошибка \n An error occurred during execution; please try again later. \n\n\n\n Дополнительная информация: \n Zend\\Json\\Exception\\RuntimeException \n \n Файл: \n \n /usr/share/bareos-webui/vendor/zendframework/zend-json/src/Json.php:68 \n \n Сообщение: \n \n Decoding failed: Syntax error \n \n Трассировки стека: \n \n #0 /usr/share/bareos-webui/module/Restore/src/Restore/Model/RestoreModel.php(54): Zend\\Json\\Json::decode('', 1)\n#1 /usr/share/bareos-webui/module/Restore/src/Restore/Controller/RestoreController.php(481): Restore\\Model\\RestoreModel->getDirectories(Object(Bareos\\BSock\\BareosBSock), '207685', '#')\n#2 /usr/share/bareos-webui/module/Restore/src/Restore/Controller/RestoreController.php(555): Restore\\Controller\\RestoreController->getDirectories()\n#3 /usr/share/bareos-webui/module/Restore/src/Restore/Controller/RestoreController.php(466): Restore\\Controller\\RestoreController->buildSubtree()\n#4 /usr/share/bareos-webui/vendor/zendframework/zend-mvc/src/Controller/AbstractActionController.php(82): Restore\\Controller\\RestoreController->filebrowserAction()\n#5 [internal function]: Zend\\Mvc\\Controller\\AbstractActionController->onDispatch(Object(Zend\\Mvc\\MvcEvent))\n#6 /usr/share/bareos-webui/vendor/zendframework/zend-eventmanager/src/EventManager.php(444): call_user_func(Array, Object(Zend\\Mvc\\MvcEvent))\n#7 /usr/share/bareos-webui/vendor/zendframework/zend-eventmanager/src/EventManager.php(205): Zend\\EventManager\\EventManager->triggerListeners('dispatch', Object(Zend\\Mvc\\MvcEvent), Object(Closure))\n#8 /usr/share/bareos-webui/vendor/zendframework/zend-mvc/src/Controller/AbstractController.php(118): Zend\\EventManager\\EventManager->trigger('dispatch', Object(Zend\\Mvc\\MvcEvent), Object(Closure))\n#9 /usr/share/bareos-webui/vendor/zendframework/zend-mvc/src/DispatchListener.php(93): Zend\\Mvc\\Controller\\AbstractController->dispatch(Object(Zend\\Http\\PhpEnvironment\\Request), Object(Zend\\Http\\PhpEnvironment\\Response))\n#10 [internal function]: Zend\\Mvc\\DispatchListener->onDispatch(Object(Zend\\Mvc\\MvcEvent))\n#11 /usr/share/bareos-webui/vendor/zendframework/zend-eventmanager/src/EventManager.php(444): call_user_func(Array, Object(Zend\\Mvc\\MvcEvent))\n#12 /usr/share/bareos-webui/vendor/zendframework/zend-eventmanager/src/EventManager.php(205): Zend\\EventManager\\EventManager->triggerListeners('dispatch', Object(Zend\\Mvc\\MvcEvent), Object(Closure))\n#13 /usr/share/bareos-webui/vendor/zendframework/zend-mvc/src/Application.php(314): Zend\\EventManager\\EventManager->trigger('dispatch', Object(Zend\\Mvc\\MvcEvent), Object(Closure))\n#14 /usr/share/bareos-webui/public/index.php(24): Zend\\Mvc\\Application->run()\n#15 {main} \n \n \n\n\n \n\n \n \n\n\n","status":500,"statusText":"Internal Server Error"}} Also, in apache2 error logs i see this strings: [:error] [pid 13597] [client 172.32.1.51:56276] PHP Notice: Undefined index: type in /usr/share/bareos-webui/module/Restore/src/Restore/Form/RestoreForm.php on line 91, referer: http://bareos.ivt.lan/bareos-webui/client/details/clientname [:error] [pid 14367] [client 172.32.1.51:56278] PHP Warning: unpack(): Type N: not enough input, need 4, have 0 in /usr/share/bareos-webui/vendor/Bareos/library/Bareos/BSock/BareosBSock.php on line 172, referer: http://bareos.ivt.lan/bareos-webui/restore/?mergefilesets=1&mergejobs=1&client=clientname&jobid=207728 | ||||
Steps To Reproduce | 1) Login to webui 2) Select job and click show files (or select client from restore tab) | ||||
Tags | No tags attached. | ||||
|
|
tagort214: It seems we are receiving malformed JSON from the director here as the decoding throws a syntax error. We should have a look at the JSON result the director provides for the particular directory you are trying to list in webui by using bvfs API commands (https://docs.bareos.org/DeveloperGuide/api.html#bvfs-api) in bconsole. In bconsole please do the following: 1. Get the jobid of the job that causes the described issue, 142 in this example. Replace the jobid from the example below with your specific jobid(s). *.bvfs_get_jobids jobid=142 all 1,55,142 *.bvfs_lsdirs path= jobid=1,55,142 38 0 0 A A A A A A A A A A A A A A . 37 0 0 A A A A A A A A A A A A A A / 2. Navigate to the folder which causes problems by using pathid, pathids will differ at yours. *.bvfs_lsdirs pathid=37 jobid=1,55,142 37 0 0 A A A A A A A A A A A A A A . 38 0 0 A A A A A A A A A A A A A A .. 57 0 0 A A A A A A A A A A A A A A ceph/ * *.bvfs_lsdirs pathid=57 jobid=1,55,142 57 0 0 A A A A A A A A A A A A A A . 37 0 0 A A A A A A A A A A A A A A .. 56 0 0 A A A A A A A A A A A A A A groups/ * *.bvfs_lsdirs pathid=56 jobid=1,55,142 56 0 0 A A A A A A A A A A A A A A . 57 0 0 A A A A A A A A A A A A A A .. 51 11817 142 P0A V9T EHt CcR A A A 8AA BAA L4 BhLhQA BhLhP/ BhLhP/ A A C group_aa/ Let's pretend group_aa (pathid 51) is the folder we can not list properly in webui. 3. Switch to API mode 2 (JSON) now and list the content of folder group_aa (pathid 51) to get the JSON result. *.api 2 { "jsonrpc": "2.0", "id": null, "result": { "api": 2 } }*.bvfs_lsdirs pathid=51 jobid=1,55,142 { "jsonrpc": "2.0", "id": null, "result": { "directories": [ { "type": "D", "pathid": 51, "fileid": 11817, "jobid": 142, "lstat": "P0A V9T EHt CcR A A A 8AA BAA L4 BhLhQA BhLhP/ BhLhP/ A A C", "name": ".", "fullpath": ".", "stat": { "dev": 64768, "ino": 89939, "mode": 16877, "nlink": 10001, "uid": 0, "gid": 0, "user": "root", "group": "root", "rdev": 0, "size": 245760, "atime": 1630409728, "mtime": 1630409727, "ctime": 1630409727 }, "linkfileindex": 0 }, { "type": "D", "pathid": 56, "fileid": 0, "jobid": 0, "lstat": "A A A A A A A A A A A A A A", "name": "..", "fullpath": "..", "stat": { "dev": 0, "ino": 0, "mode": 0, "nlink": 0, "uid": 0, "gid": 0, "user": "root", "group": "root", "rdev": 0, "size": 0, "atime": 0, "mtime": 0, "ctime": 0 }, "linkfileindex": 0 }, { "type": "D", "pathid": 52, "fileid": 1813, "jobid": 142, "lstat": "P0A BAGIj EHt C A A A G BAA A BhLgvm Bg/+Bp Bg/+Bp A A C", "name": "d1/", "fullpath": "/ceph/groups/group_aa/d1/", "stat": { "dev": 64768, "ino": 16802339, "mode": 16877, "nlink": 2, "uid": 0, "gid": 0, "user": "root", "group": "root", "rdev": 0, "size": 6, "atime": 1630407654, "mtime": 1627381865, "ctime": 1627381865 }, "linkfileindex": 0 }, { "type": "D", "pathid": 54, "fileid": 1814, "jobid": 142, "lstat": "P0A CCEkI EHt C A A A G BAA A BhLgvm Bg/+Bp Bg/+Bp A A C", "name": "d2/", "fullpath": "/ceph/groups/group_aa/d2/", "stat": { "dev": 64768, "ino": 34097416, "mode": 16877, "nlink": 2, "uid": 0, "gid": 0, "user": "root", "group": "root", "rdev": 0, "size": 6, "atime": 1630407654, "mtime": 1627381865, "ctime": 1627381865 }, "linkfileindex": 0 } ] } }* Do you get valid JSON at this point as you can see in the example above? Please provide the output you get in your case if possible. Note: You can substitue step 3 with sth. like following if the output is too big: [root@centos7]# cat script .api 2 .bvfs_lsdirs pathid=51 jobid=1,55,142 quit [root@centos7]# cat script | bconsole > out.txt Remove everything except the JSON you received from the .bvfs_lsdirs command from the out.txt file. Validate the JSON output with a tool like https://stedolan.github.io/jq/ or https://jsonlint.com/ for example. |
|
Try to increase in configuration.ini: [restore] ; Restore filetree refresh timeout after n milliseconds ; Default: 120000 milliseconds filetree_refresh_timeout=220000 |
|
This was reported for an end-of-life (EOL) version of Bareos. If you can reproduce this bug against a currently maintained version of Bareos please feel free to open a new issue against that version at https://github.com/bareos/bareos/issues Thank you for reporting this bug and we are sorry it could not be fixed. |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2020-06-17 09:58 | tagort214 | New Issue | |
2020-06-17 09:58 | tagort214 | File Added: Снимок экрана_2020-06-17_10-57-42.png | |
2020-06-17 09:58 | tagort214 | File Added: Снимок экрана_2020-06-17_10-57-24.png | |
2021-04-29 10:51 | frank | Assigned To | => frank |
2021-04-29 10:51 | frank | Status | new => assigned |
2021-08-31 11:38 | frank | Relationship added | related to 0001381 |
2021-08-31 12:27 | frank | Status | assigned => acknowledged |
2021-08-31 16:14 | frank | Note Added: 0004242 | |
2022-07-20 14:09 | khvalera | Note Added: 0004681 | |
2024-05-15 15:38 | arogge | Note Added: 0005927 | |
2024-05-15 15:38 | arogge | Status | acknowledged => closed |