laravel-preload icon indicating copy to clipboard operation
laravel-preload copied to clipboard

return 502 error

Open terranc opened this issue 4 years ago • 6 comments

image

php version: php 7.4 rc4

Why return 502 errors?

terranc avatar Nov 05 '19 10:11 terranc

@terranc https://stitcher.io/blog/preloading-in-php-74

ITwrx avatar Nov 30 '19 01:11 ITwrx

I managed to get a 504 now after numerous 502 errors :rocket:

fridzema avatar Dec 02 '19 16:12 fridzema

i can confirm getting segmentation fault error when trying to preload laravel 5.5 on php 7.4.0 stable. has anyone succeeded preloading any version of laravel at all? the respective bug report: https://bugs.php.net/bug.php?id=78225 is closed at the moment

kminek avatar Dec 07 '19 23:12 kminek

@kminek i even got a segfault when manually loading an array of file paths after a certain number of file paths were added. It seems to do something similar when using this code. it loads many files then segfaults after too many. I pulled off of this for now.

ITwrx avatar Dec 08 '19 04:12 ITwrx

@ITwrx i think preloading in 7.4 is still buggy. i did some tests and for me following code fails:

<?php

function _preload(string $path)
{
    if (!opcache_compile_file($path)) {
        trigger_error("Preloading Failed", E_USER_ERROR);
    }
}

_preload('/app/vendor/psr/container/src/ContainerExceptionInterface.php');
_preload('/app/vendor/psr/container/src/ContainerInterface.php');
_preload('/app/vendor/psr/container/src/NotFoundExceptionInterface.php');
_preload('/app/vendor/psr/http-message/src/MessageInterface.php');
_preload('/app/vendor/psr/http-message/src/RequestInterface.php');
_preload('/app/vendor/psr/http-message/src/ResponseInterface.php');
_preload('/app/vendor/psr/http-message/src/ServerRequestInterface.php');
_preload('/app/vendor/psr/http-message/src/StreamInterface.php');
_preload('/app/vendor/psr/http-message/src/UploadedFileInterface.php');
_preload('/app/vendor/psr/http-message/src/UriInterface.php');
_preload('/app/vendor/psr/log/Psr/Log/AbstractLogger.php');
_preload('/app/vendor/psr/log/Psr/Log/InvalidArgumentException.php');
_preload('/app/vendor/psr/log/Psr/Log/LoggerAwareInterface.php');
_preload('/app/vendor/psr/log/Psr/Log/LoggerAwareTrait.php');
_preload('/app/vendor/psr/log/Psr/Log/LoggerInterface.php');
_preload('/app/vendor/psr/log/Psr/Log/LoggerTrait.php');
_preload('/app/vendor/psr/log/Psr/Log/LogLevel.php');
_preload('/app/vendor/psr/log/Psr/Log/NullLogger.php');
_preload('/app/vendor/psr/simple-cache/src/CacheException.php');
_preload('/app/vendor/psr/simple-cache/src/CacheInterface.php');
_preload('/app/vendor/psr/simple-cache/src/InvalidArgumentException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/Access/Authorizable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/Access/Gate.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/Authenticatable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/CanResetPassword.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/Guard.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/PasswordBroker.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/PasswordBrokerFactory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/StatefulGuard.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/SupportsBasicAuth.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Auth/UserProvider.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Broadcasting/Broadcaster.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Broadcasting/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Broadcasting/ShouldBroadcast.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Broadcasting/ShouldBroadcastNow.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Bus/Dispatcher.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Bus/QueueingDispatcher.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cache/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cache/Lock.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cache/LockProvider.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cache/LockTimeoutException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cache/Repository.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cache/Store.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Config/Repository.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Console/Application.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Console/Kernel.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Container/BindingResolutionException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Container/Container.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Container/ContextualBindingBuilder.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cookie/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Cookie/QueueingFactory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Database/ModelIdentifier.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Debug/ExceptionHandler.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Encryption/DecryptException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Encryption/Encrypter.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Encryption/EncryptException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Events/Dispatcher.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Filesystem/Cloud.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Filesystem/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Filesystem/FileNotFoundException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Filesystem/Filesystem.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Foundation/Application.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Hashing/Hasher.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Http/Kernel.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Logging/Log.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Mail/Mailable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Mail/Mailer.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Mail/MailQueue.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Notifications/Dispatcher.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Notifications/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Pagination/LengthAwarePaginator.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Pagination/Paginator.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Pipeline/Hub.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Pipeline/Pipeline.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/EntityNotFoundException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/EntityResolver.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/Job.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/Monitor.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/Queue.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/QueueableCollection.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/QueueableEntity.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Queue/ShouldQueue.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Redis/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Redis/LimiterTimeoutException.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Routing/BindingRegistrar.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Routing/Registrar.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Routing/ResponseFactory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Routing/UrlGenerator.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Routing/UrlRoutable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Session/Session.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/Arrayable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/Htmlable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/Jsonable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/MessageBag.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/MessageProvider.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/Renderable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Support/Responsable.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Translation/Loader.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Translation/Translator.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Validation/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Validation/ImplicitRule.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Validation/Rule.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Validation/ValidatesWhenResolved.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/Validation/Validator.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/View/Engine.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/View/Factory.php');
_preload('/app/vendor/laravel/framework/src/Illuminate/Contracts/View/View.php');

as you can see i'm trying to preload psr interfaces and later illuminate/contracts interfaces so no big philosophy here

kminek avatar Dec 08 '19 23:12 kminek

php 7.4.1 🎉

image

chelout avatar Dec 18 '19 13:12 chelout