#42594 [Fbk]: fopen doesn't work with ocfs2 cdsl (ocfs2 == Oracle Cluster Filesystem 2)
| From: | sixd@php.net | Date: | Tue, 28 Oct 2008 22:52:10 +0000 |
| Subject: | #42594 [Fbk]: fopen doesn't work with ocfs2 cdsl (ocfs2 == Oracle Cluster Filesystem 2) | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-130259@lists.php.net to get a copy of this message | ||
ID: 42594
Updated by: sixd@php.net
Reported By: i dot dastolfo at smart dot it
Status: Feedback
-Bug Type: OCI8 related
+Bug Type: Filesystem function related
Operating System: Linux
PHP Version: 5.2.4
New Comment:
Note to PHP developers: this is nothing to do with OCI8.
Previous Comments:
------------------------------------------------------------------------
[2008-10-27 12:55:10] jani@php.net
Please try using this CVS snapshot:
http://snaps.php.net/php5.2-latest.tar.gz
For Windows:
http://windows.php.net/snapshots/
------------------------------------------------------------------------
[2007-09-12 07:10:58] i dot dastolfo at smart dot it
Additional elements that could help in debugging:
CDSL link are special soft links.
Issuing a stat on this files you obtain this:
File:
test' -> .cluster/hostname/{hostname}/test'
Should it be that the php filesystem related functions misinterpret
this link, that should be followed by a syscall to the VFS?
------------------------------------------------------------------------
[2007-09-07 22:28:33] i dot dastolfo at smart dot it
Description:
------------
The fopen function (and maybe other filesystem related functions) can't
handle CDSL files/directories.
CDSL stands for context dependent symbolic link and it's a feature of
Oracle Cluster FileSystem 2 (OCFS2).
While fopen works fine with regular files and directory inside an OCFS2
filesystem, gives "failed to open stream: No such file or directory"
for CDSL files.
Reproduce code:
---------------
make a OCFS2 filesystem (you can setup it even with 1 node).
Create a regular file (touch test)
Transform it in a cdsl file (ocfs2cdsl -t hostname -c test)
fopen("test","w"); => Warning: fopen(test) [function.fopen]: failed to
open stream: No such file or directory in ...
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=42594&edit=1