Not a bug Please support the NFS Filesystem

karnaf

Member
Affected version
2.0.0-Beta-5
Currently it dies during installation with this error:

[ErrorException] [E_WARNING] file_put_contents(): Exclusive locks are not supported for this stream

Can you please support the NFS filesystem?
 
As far as I can see there are multiple solutions depending on the problem. If you are using this function to create sessions then I could simply move them to memcached/redis if 2.0 supports this.
If its temp files then you could add a config option to store them outside of the nfs filesystem.
If its used in the core you could just catch the error and disable the lock to support the NFS system.

Just some ideas based on some research I did.
 
PHP:
Exception trace:
 () at /home/forum/src/vendor/league/flysystem/src/Adapter/Local.php:196
 XF::handlePhpError() at n/a:n/a
 file_put_contents() at /home/forum/src/vendor/league/flysystem/src/Adapter/Local.php:196
 League\Flysystem\Adapter\Local->update() at /home/forum/src/vendor/league/flysystem/src/Filesystem.php:98
 League\Flysystem\Filesystem->put() at n/a:n/a
 call_user_func_array() at /home/forum/src/vendor/league/flysystem-eventable-filesystem/src/EventableFilesystem.php:431
 League\Flysystem\EventableFilesystem\EventableFilesystem->callFilesystemMethod() at /home/forum/src/vendor/league/flysystem-eventable-filesystem/src/EventableFilesystem.php:395
 League\Flysystem\EventableFilesystem\EventableFilesystem->delegateMethodCall()at /home/forum/src/vendor/league/flysystem-eventable-filesystem/src/EventableFilesystem.php:57
 League\Flysystem\EventableFilesystem\EventableFilesystem->put() at n/a:n/a
 call_user_func_array() at /home/forum/src/vendor/league/flysystem/src/MountManager.php:269
 League\Flysystem\MountManager->invokePluginOnFilesystem() at /home/forum/src/vendor/league/flysystem/src/MountManager.php:179
 League\Flysystem\MountManager->__call() at /home/forum/src/XF/Util/File.php:99
 XF\Util\File::writeToAbstractedPath() at /home/forum/src/XF/Service/Template/Compile.php:132
 XF\Service\Template\Compile->writeCompiled() at /home/forum/src/XF/Service/Template/Compile.php:29
 XF\Service\Template\Compile->recompile() at /home/forum/src/XF/Entity/Template.php:381
 XF\Entity\Template->_postSave() at /home/forum/src/XF/Mvc/Entity/Entity.php:1109
 XF\Mvc\Entity\Entity->save() at /home/forum/src/XF/Mvc/Entity/Entity.php:1103
 XF\Mvc\Entity\Entity->save() at /home/forum/src/XF/AddOn/DataType/BbCodeMediaSite.php:85
 XF\AddOn\DataType\BbCodeMediaSite->importAddOnData() at /home/forum/src/XF/Job/AddOnData.php:108
 XF\Job\AddOnData->run() at /home/forum/src/XF/Job/Atomic.php:38
  XF\Job\Atomic->run() at /home/forum/src/XF/Job/Manager.php:241
 XF\Job\Manager->runJobInternal() at /home/forum/src/XF/Job/Manager.php:187
 XF\Job\Manager->runJobEntry() at /home/forum/src/XF/Job/Manager.php:138
 XF\Job\Manager->runUnique() at /home/forum/src/XF/Cli/Command/JobRunnerTrait.php:21
 XF\Cli\Command\RebuildMasterData->runJob() at /home/forum/src/XF/Cli/Command/RebuildMasterData.php:32
 XF\Cli\Command\RebuildMasterData->execute() at /home/forum/src/vendor/symfony/console/Command/Command.php:266
 Symfony\Component\Console\Command\Command->run() at /home/forum/src/XF/Cli/Command/Install.php:302
 XF\Cli\Command\Install->execute() at /home/forum/src/vendor/symfony/console/Command/Command.php:266
 Symfony\Component\Console\Command\Command->run() at /home/forum/src/vendor/symfony/console/Application.php:875
 Symfony\Component\Console\Application->doRunCommand() at /home/forum/src/vendor/symfony/console/Application.php:204
 Symfony\Component\Console\Application->doRun() at /home/forum/src/vendor/symfony/console/Application.php:122
 Symfony\Component\Console\Application->run() at /home/forum/src/XF/Cli/Runner.php:63
 XF\Cli\Runner->run() at /home/forum/cmd.php:15
 
CentOS 7
/usr/bin/mount -t nfs 1.1.1.1:/zpool-11/forum /home/forum
NFSv3

1.1.1.1:/zpool-111/forum on /home/forum type nfs (rw,relatime,vers=3,rs
ize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,
mountaddr=1.1.1.1,mountvers=3,mountport=46907,mountproto=udp,local_lock=no
ne,addr=1.1.1.1)
 
Please tell me you aren't using 1.1.1.x as internal IPs, and that is just censoring them out.

There are dedicated IP ranges if you want to use non-routable IPs
 
Top Bottom