php-general Digest 23 Feb 2013 14:18:04 -0000 Issue 8134

Topics (messages 320284 through 320289):

Very Large File Splatter
        320284 by: Brian Smither
        320285 by: Sebastian Krebs
        320286 by: Daniel Brown
        320287 by: Brian Smither

Re: Cold Intermediate Programmer trying to modularize website...
        320288 by: tamouse mailing lists
        320289 by: Jim Giner

Administrivia:

To subscribe to the digest, e-mail:
        php-general-digest-subscr...@lists.php.net

To unsubscribe from the digest, e-mail:
        php-general-digest-unsubscr...@lists.php.net

To post to the list, e-mail:
        php-gene...@lists.php.net


----------------------------------------------------------------------
--- Begin Message ---
PHP 5.4.4-TS-VC9 on Windows XP SP3 NTFS non-system drive with 18GB free.

I dare not try to replicate this. As such, I cannot firmly place the blame on 
PHP.

I have peppered a PHP application with a call to a function which appends-only 
to a logfile the parameters passed to it. Each pass of the application creates 
many MB of content.

It is conceivable that I ran out of hard drive space.

When that which what I was working on seemed to be acting very weird, I 
rebooted the computer only to see thousands of lines scroll by from Windows 
repairing the file system.

I discovered logfile contents in many dozens of files. The timestamp and 
filesize of the damaged files were not changed. Only the contents replaced with 
slices of the logfile.

Again, I'm not going to try to 'intentionally' replicate this, so I ask:

Has PHP's interface with the NTFS file sub-system ever been reported to 
splatter a file across the contents of a drive?



--- End Message ---
--- Begin Message ---
2013/2/22 Brian Smither <bhsmit...@gmail.com>

> PHP 5.4.4-TS-VC9 on Windows XP SP3 NTFS non-system drive with 18GB free.
>
> I dare not try to replicate this. As such, I cannot firmly place the blame
> on PHP.
>
> I have peppered a PHP application with a call to a function which
> appends-only to a logfile the parameters passed to it. Each pass of the
> application creates many MB of content.
>
> It is conceivable that I ran out of hard drive space.
>
> When that which what I was working on seemed to be acting very weird, I
> rebooted the computer only to see thousands of lines scroll by from Windows
> repairing the file system.
>
> I discovered logfile contents in many dozens of files. The timestamp and
> filesize of the damaged files were not changed. Only the contents replaced
> with slices of the logfile.
>
> Again, I'm not going to try to 'intentionally' replicate this, so I ask:
>
> Has PHP's interface with the NTFS file sub-system ever been reported to
> splatter a file across the contents of a drive?
>

Is the PHP-interpreter even possible to create something like this? As far
as I know PHP utilizes the common OS-syscalls to interact with the
filesystem, so it doesn't interact with the harddrive directly, but online
with the FS-driver. Did you shutdown the system cleanly, when you
recognized this behaviour? If not, it would explain, that the windows
assumes the filesystem must be repaired. I can imagine, that this "repair
process" associated the broken data with the wrong file-entries in the
fs-table, which could be an explanation for the behaviour you described.

Regards,
Sebastian


>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>


-- 
github.com/KingCrunch

--- End Message ---
--- Begin Message ---
On Fri, Feb 22, 2013 at 4:04 PM, Brian Smither <bhsmit...@gmail.com> wrote:
> PHP 5.4.4-TS-VC9 on Windows XP SP3 NTFS non-system drive with 18GB free.
>
> I dare not try to replicate this. As such, I cannot firmly place the blame on 
> PHP.
>
> I have peppered a PHP application with a call to a function which 
> appends-only to a logfile the parameters passed to it. Each pass of the 
> application creates many MB of content.
>
> It is conceivable that I ran out of hard drive space.
>
> When that which what I was working on seemed to be acting very weird, I 
> rebooted the computer only to see thousands of lines scroll by from Windows 
> repairing the file system.
>
> I discovered logfile contents in many dozens of files. The timestamp and 
> filesize of the damaged files were not changed. Only the contents replaced 
> with slices of the logfile.
>
> Again, I'm not going to try to 'intentionally' replicate this, so I ask:
>
> Has PHP's interface with the NTFS file sub-system ever been reported to 
> splatter a file across the contents of a drive?

    Not to my knowledge.  It actually sounds to me like a code issue.
Are you using file_put_contents() with the parameters in reverse
order, by chance?

    If you can show the write portion of the code in your iteration,
as well as a sample of the naming convention, it may offer more clues.
 In any case, either disk space or inode exhaustion is likely the
reason things borked-up for you.

-- 
</Daniel P. Brown>
Network Infrastructure Manager
http://www.php.net/

--- End Message ---
--- Begin Message ---
"If you can show the write portion of the code in your iteration,
as well as a sample of the naming convention, it may offer more clues."

$dbgMsg = "a diagnostic string maybe 5K in length";
$dbg_fp = fopen(ROOT_DIR.DS."dbg_log.txt", "a"); // Derives a full path
fwrite($dbg_fp, $dbgMsg);
fclose($dbg_fp);

"Did you shutdown the system cleanly, when you
recognized this behaviour?"

Yes, a clean reboot. Not a reset-switch restart, nor a power-cycle restart.

Sample lines from bootex.log:

Checking file system on L:
The type of the file system is NTFS.

One of your disks needs to be checked for consistency. You
may cancel the disk check, but it is strongly recommended
that you continue.
Windows will now check the disk.
Attribute record of type 0x80 and instance tag 0x3 is cross linked
starting at 0x20b3b for possibly 0x100 clusters.
Attribute record of type 0x80 and instance tag 0x3 is cross linked
starting at 0x20b3b for possibly 0x100 clusters.
Some clusters occupied by attribute of type 0x80 and instance tag 0x3
in file 0x3680 is already in use.
Deleting corrupt attribute record (128, $J)
from file record segment 13952.

Sorting index $O in file 25.
The object id in file 0x4d14 does not appear in the object
id index in file 0x19.
Inserting an index entry into index $O of file 25.
The object id in file 0x4d17 does not appear in the object
id index in file 0x19.
Inserting an index entry into index $O of file 25.
The object id in file 0x4d19 does not appear in the object
id index in file 0x19.

Recovering orphaned file .svn (19642) into directory file 13948.
Recovering orphaned file CATEGO~1.TPL (19720) into directory file 28688.
Recovering orphaned file categories.tpl (19720) into directory file 28688.
Recovering orphaned file CATEGO~1.BAK (19721) into directory file 28688.
Recovering orphaned file categories.tpl.bak (19721) into directory file 28688.

And many, many more of each section.



--- End Message ---
--- Begin Message ---
On Fri, Feb 22, 2013 at 1:48 PM,  <scs.bns...@gmail.com> wrote:
> Intro --
> Sorry to post in php.general .  Just found the newserver, and I'm still
> trying to figure out where to post this question.
> Thus, I posted in .general ... either to get help or find out in which
> newsgroup I should post my question.  Thank you.
>
> Website description --
> (have included files from the website as reference)
> The site runs all CSS through one "style.css" for all div declarations.
> I have attached a zip which includes the index.html file, the style.css
> and the cgi directory with multiple contact*.php for each different link
> as a sample of where I'm starting from.
> On each page, there is a header block (with a contact*.php link),
> navigation tabs and a navigation menu, a left column, a right column, an
> article, and a footer (with a contact*.php link).
> Each page has an article, like index.html.
>
> First part of question (php-focused)--
> I'd like to change the multiple contact.php modules that I call from the
> ../cgi/ directory into one contact.php program that can receive a string
> paramenter.
> I'd like to pass a parameter string into the new contact.php which would
> contain a label which identifies the link that was clicked to call the
> single contact.php and be put on the header line (currently hard-coded
> in multiple copies of contact*.php).  This is to track which link was
> clicked on which page... as you can see by the naming convention of my
> contact*.php modules.
>
> Second point of discussion
> (more HTML grabbed from PHP to complete the page) --
> I'd like to (use index.html from the zip attachment as an example) strip
> any blocks that do not change between pages (ie, most of the header
> except the link for contact*.php, or the label sent to the new
> contact.php from the point above) and put them into another file that
> would be included into each page.
> I'd really like to "template" stuff into template part includes, and use
> them to simplify the different pages.
> The real reason behind this is that the business owner wants to be able
> to edit the middle column (the "article") so that they can update parts
> of the site themselves.  I have warned her that she doesn't want to do
> this, but she insists. If I put their articles into a ./articles/
> directory, and give them the extension .article, I can set up a Windows
> Explorer folder shortcut to the ./articles/ directory, and install
> Notepad+ on her computer, and define .article to only work with
> Notepad+... and educate her not to change anything but the text of her
> article...
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php

This is the most suspicious looking thing.

--- End Message ---
--- Begin Message ---
On 2/22/2013 10:55 PM, tamouse mailing lists wrote:

This is the most suspicious looking thing.


Ya think?

I'm still trying to figure out what the OP wants us to do? Has he tried anything?

From the sounds of it ( I didn't bother to un-zip his file) it appears that he just wants to create a model template and fill in the center (the 'article'?) appropriately depending upon the user's request. Post the texts to a db, simplify his web design and add an identifying id value to each link. Voila?



--- End Message ---

Reply via email to