eveseat / seat

🌀✳️ SeAT: A Simple, EVE Online API Tool and Corporation Manager
https://eveseat.github.io/docs/
GNU General Public License v2.0
430 stars 143 forks source link

Searches Cause Multiple Alerts/Errors #791

Closed tohuw closed 3 years ago

tohuw commented 3 years ago

I'm getting errors on every search (from the main searchbox at the top: DataTables warning: table id=characters - Ajax error. For more information about this error, please see http://datatables.net/tn/7

The above error repeats 10-12 times.

With this in laravel logs:

[2021-03-21 03:52:13] local.ERROR: Call to undefined method Seat\Eveapi\Models\Character\CharacterInfo::affiliation.corporation() {"userId":2,"exception":"[object] (Yajra\\DataTables\\Exceptions\\Exception(code: 0): Call to undefined method Seat\\Eveapi\\Models\\Character\\CharacterInfo::affiliation.corporation() at /var/www/seat/vendor/yajra/laravel-datatables-oracle/src/DataTableAbstract.php:875)
[stacktrace]
#0 /var/www/seat/vendor/yajra/laravel-datatables-oracle/src/QueryDataTable.php(106): Yajra\\DataTables\\DataTableAbstract->errorResponse()
#1 /var/www/seat/vendor/eveseat/web/src/Http/Controllers/Support/SearchController.php(79): Yajra\\DataTables\\QueryDataTable->make()
#2 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): Seat\\Web\\Http\\Controllers\\Support\\SearchController->getSearchCharactersData()
#3 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\\Routing\\Controller->callAction()
#4 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Route.php(219): Illuminate\\Routing\\ControllerDispatcher->dispatch()
#5 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Route.php(176): Illuminate\\Routing\\Route->runController()
#6 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Router.php(681): Illuminate\\Routing\\Route->run()
#7 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\\Routing\\Router->Illuminate\\Routing\\{closure}()
#8 /var/www/seat/vendor/eveseat/web/src/Http/Middleware/Locale.php(44): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#9 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Seat\\Web\\Http\\Middleware\\Locale->handle()
#10 /var/www/seat/vendor/eveseat/web/src/Http/Middleware/Authenticate.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#11 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Seat\\Web\\Http\\Middleware\\Authenticate->handle()
#12 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(41): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#13 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Routing\\Middleware\\SubstituteBindings->handle()
#14 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#15 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\VerifyCsrfToken->handle()
#16 /var/www/seat/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#17 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\View\\Middleware\\ShareErrorsFromSession->handle()
#18 /var/www/seat/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(56): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#19 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Session\\Middleware\\StartSession->handle()
#20 /var/www/seat/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#21 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Cookie\\Middleware\\AddQueuedCookiesToResponse->handle()
#22 /var/www/seat/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#23 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Cookie\\Middleware\\EncryptCookies->handle()
#24 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#25 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Router.php(683): Illuminate\\Pipeline\\Pipeline->then()
#26 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Router.php(658): Illuminate\\Routing\\Router->runRouteWithinStack()
#27 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Router.php(624): Illuminate\\Routing\\Router->runRoute()
#28 /var/www/seat/vendor/laravel/framework/src/Illuminate/Routing/Router.php(613): Illuminate\\Routing\\Router->dispatchToRoute()
#29 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(170): Illuminate\\Routing\\Router->dispatch()
#30 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(130): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}()
#31 /var/www/seat/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#32 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Fideloper\\Proxy\\TrustProxies->handle()
#33 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#34 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#35 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#36 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle()
#37 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#38 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle()
#39 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php(63): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#40 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(171): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle()
#41 /var/www/seat/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(105): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}()
#42 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(145): Illuminate\\Pipeline\\Pipeline->then()
#43 /var/www/seat/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter()
#44 /var/www/seat/public/index.php(54): Illuminate\\Foundation\\Http\\Kernel->handle()
#45 {main}

Version Info:

| Vendor   | Package Name           | Installed Version        |
| -------- | ---------------------- | ------------------------ |
| eveseat  | api                    | 4.5.0                    |
| eveseat  | console                | 4.8.0                    |
| eveseat  | eveapi                 | 4.10.3                   |
| eveseat  | notifications          | 4.3.1                    |
| eveseat  | services               | 4.2.0                    |
| eveseat  | web                    | 4.11.0                   |
| denngarr | seat-fitting           | 4.0.4                    |
| denngarr | seat-srp               | 4.0.6                    |
| warlof   | seat-connector         | 2.3.0                    |
| warlof   | seat-discord-connector | 5.0.0                    |
| ccp      | eve_online_sde         | sde-20210310-TRANQUILITY |
warlof commented 3 years ago

hey,

what are you searching and what's your current datatable version ? You'll get it from composer show command.

tohuw commented 3 years ago

It happens with any search term.

datatables.net/datatables.net             dev-master f3a4432
datatables.net/datatables.net-bs4         dev-master 2716751
datatables.net/datatables.net-buttons     dev-master 77d9b99
datatables.net/datatables.net-buttons-bs4 dev-master fd642bd
warlof commented 3 years ago

those are only css and javascript stuff. I was looking about those two packages :

zmsMarc commented 3 years ago

these are ours: grafik

Searches throwing errors (http://datatables.net/tn/7): Characters Characters Assets Character Skills

Searches working: Corporations Mail

tohuw commented 3 years ago

@warlof:

yajra/laravel-datatables-buttons          v4.12.0
yajra/laravel-datatables-html             v4.36.2
yajra/laravel-datatables-oracle           v9.17.0
warlof commented 3 years ago

ok, find why - it seems to be related to last polymorphic update sent to datatable factory.

quick fix :

composer require yajra/laravel-datatables-oracle:9.16.0

I'll figure what need to be done and send the fix to proper package.

warlof commented 3 years ago

Hotfix has been shipped and you can get last version using

composer require yajra/laravel-datatables-oracle:^9.10