Intro Download and install Frequently Asked Questions Tips and tricks

Homepage







© J.C. Kessels 2009
MyDefrag Forum
June 19, 2013, 11:10:50 am *
Welcome, Guest. Please login or register.

Login with username, password and session length
News:
 
   Home   Help Search Login Register  
Pages: [1] 2
  Print  
Author Topic: IgnoreWrapAroundFragmentation(no) seems to be ignored?  (Read 3083 times)
andublin
JkDefrag Hero
*****
Posts: 103


View Profile
« on: March 01, 2010, 02:46:44 pm »

Sample script and logs attached to show the problem in one zone.
Files are still showing as fragmented in subsequent runs.

Maybe PlaceNtfsSystemFiles is ignoring the setting?

Thanks

* MyDefrag.debuglog (54.47 KB - downloaded 93 times.)
* AtkTest.MyD (1.83 KB - downloaded 96 times.)
* MyDefrag.log (5.37 KB - downloaded 110 times.)
Logged
jeroen
Administrator
JkDefrag Hero
*****
Posts: 7156



View Profile WWW
« Reply #1 on: March 01, 2010, 03:16:28 pm »

Files are still showing as fragmented in subsequent runs.
In your logfile I see that 3 files remain fragmented, and I think you are asking why MyDefrag is not defragmenting them? $ATTRIBUTE_LIST files are never processed by MyDefrag. Your Agent_CEDDLBROPHY.xml file is not an NTFS system file so it is not selected by your script. The $MFT::$BITMAP file can never be moved (or defragmented), the Microsoft defragmentation API refuses it.

Quote
Maybe PlaceNtfsSystemFiles is ignoring the setting?
Well, that's not quite how I would put it. The IgnoreWrapAroundFragmentation() setting only controls which files are seen as fragmented. It does not prevent functions such as PlaceNtfsSystemFiles() to do wrap-around fragmentation (break a file in 2 or more fragments to place it around an unmovable area).
Logged
jonib
JkDefrag Hero
*****
Posts: 810


View Profile
« Reply #2 on: March 01, 2010, 08:58:06 pm »

$ATTRIBUTE_LIST files are never processed by MyDefrag.
Do you mean something else then that the $ATTRIBUTE_LIST is unmovable? as I have been wondering why the $MFT is movable but $ATTRIBUTE_LISTs are not even though they contain same kind of data.

I'm trying to get rid of all $ATTRIBUTE_LISTs as they get in the way and they are mostly useless anyway, so I wanted to quickly see what files has a $ATTRIBUTE_LIST, so I added the UnmovablesList variable to SetStatisticsWindowText but the $ATTRIBUTE_LISTs are not listed there, but if they are fragmented they are listed in FragmentedList so why are they not listed in UnmovablesList?

jonib
« Last Edit: June 18, 2010, 03:04:31 pm by jonib » Logged

Vindicator
JkDefrag Supporter
***
Posts: 15


View Profile
« Reply #3 on: March 01, 2010, 09:51:00 pm »

The following paragraph from http://msdn.microsoft.com/en-us/library/aa363911(VS.85).aspx seems to indicate that attribute lists can be defragmented. (Edit: Applies to versions of Windows later than Windows 2000.)

Quote
Re-parse points, bitmaps, and attribute lists in NTFS file system volumes can be defragmented, opened for reading and synchronization, and named using the file:name:type syntax; for example, $i30:$INDEX_ALLOCATION, mrp::$DATA, mrp::$REPARSE_POINT, and mrp::$ATTRIBUTE_LIST.
« Last Edit: March 01, 2010, 09:57:44 pm by Vindicator » Logged
jeroen
Administrator
JkDefrag Hero
*****
Posts: 7156



View Profile WWW
« Reply #4 on: March 02, 2010, 04:18:29 am »

Do you mean something else then that the $ATTRIBUTE_LIST is unmovable?
MyDefrag refuses to open any file that has ":$ATTRIBUTE_LIST" in the filename, because I have found in the past that simply opening such a file would reliably crash Windows. You could say that MyDefrag cannot move these files, although that is technically not quite correct. MyDefrag does not even try to move these files. I'm not sure why I decided not to list these files as unmovable, perhaps because there can be many of them and the list would be huge.
Logged
jonib
JkDefrag Hero
*****
Posts: 810


View Profile
« Reply #5 on: March 02, 2010, 02:54:59 pm »

MyDefrag refuses to open any file that has ":$ATTRIBUTE_LIST" in the filename, because I have found in the past that simply opening such a file would reliably crash Windows. You could say that MyDefrag cannot move these files, although that is technically not quite correct. MyDefrag does not even try to move these files. I'm not sure why I decided not to list these files as unmovable, perhaps because there can be many of them and the list would be huge.
Thanks for explaining, I kinda feel they should be listed in the unmovable list as they are unmovable by MyDefrag and maybe add a topic in the FAQ about why :$ATTRIBUTE_LIST files are unmovable.

jonib
Logged

andublin
JkDefrag Hero
*****
Posts: 103


View Profile
« Reply #6 on: March 02, 2010, 04:00:54 pm »

I'm finding that, on repeated passes, that the system files (particularly the MFT) are continually being shuffled by myDefrag, even with the simplified script as supplied.  The logs as uploaded were the last in many runs.
Logged
hINDUs
JkDefrag Junior
**
Posts: 8


View Profile
« Reply #7 on: July 21, 2010, 03:21:24 pm »

bumping

i have also a problem with :$ATTRIBUTE_LIST "files"
some files were fragmented even after several defrag passes, so i checked the partition by some cluster inspection apps, and inside this fragmented files i have found an "x:\path\my_legitimate_file:$ATTRIBUTE_LIST"
they appear randomly from nowhere and are unmovable by MyDefrag Sad

what can i do?
how to delete this (as i understand this is an NTFS stream thingie) "files"?
how to check/list for those "files"?
or how to erase this attributes?
« Last Edit: July 21, 2010, 03:23:45 pm by hINDUs » Logged
Darlis
JkDefrag Hero
*****
Posts: 1725


View Profile WWW
« Reply #8 on: July 21, 2010, 05:58:40 pm »

A file split into 2 or 3 fragments does not affect performance, especially not if these fragments are very close together.
If you want to prevent any fragmentation, do not use the Monthly scripts. They'll sort the files and wrap (fragment) these around unmovable ones.
Logged

Need help creating a script? Try MyDefrag Script Creator.
BloodySword
JkDefrag Hero
*****
Posts: 1114



View Profile
« Reply #9 on: July 21, 2010, 06:17:37 pm »

MyDefrag should not mark this files as fragmented and should even hide small unmovable fragments and show them only on very high zoom levels.
Logged

Greetings from Germany!
Kasuha
JkDefrag Hero
*****
Posts: 595


View Profile
« Reply #10 on: July 21, 2010, 06:47:44 pm »

$ATTRIBUTE_LIST is really nothing you need to worry about. It's used when your file has too many attributes to fit within that file's MFT record and in general this file is held in another MFT record so it does not even have a cluster allocated.
At least that's how I understand the explanation.

And if you are not happy with the result of monthly optimization, do not run it again, it cannot get any better. Running SortBy command on a system disk results in certain percentage of files being seen as fragmented even by MyDefrag, that's just fact. Run a daily optimization instead to fix these small (or larger) errors it left behind.
« Last Edit: July 21, 2010, 06:51:40 pm by Kasuha » Logged
hINDUs
JkDefrag Junior
**
Posts: 8


View Profile
« Reply #11 on: July 21, 2010, 08:13:15 pm »

I'm looking into method to get rid of this <valid_file>:$ATTRIBUTE_LIST "files"
i know that they are small and not really affect file performance, but i don't like things that are so sturdy to move or get rid of...

ClusterInspector shows me:
1 cluster, 704 bytes, steam_path\source_sounds.gcf::$ATTRIBUTE_LIST
then there are several of those "files" - the funny thing is, with NTFS compressed files, all 500-700 bytes
then after a while:
x:\$Extend\$ObjId::$ATTRIBUTE_LIST - 1,31 KB

this attribute_list "files" are all connected to files that are quite big (over 1gb), NTFS compressed (but not always, i have whole folder compressed and only 10-15 files from there have this attribute "file"), or have been downloaded from internet

I'm searching in method to investigate what these attributes are, how to deal with them (erase them?) and so on ...

any input are greatly appreciated
Logged
jeroen
Administrator
JkDefrag Hero
*****
Posts: 7156



View Profile WWW
« Reply #12 on: July 23, 2010, 03:58:08 pm »

I'm searching in method to investigate what these attributes are
The NTFS filesystem stores information about all files in the MFT (Master File Table). The MFT is split into blocks of 1024 bytes, and every file on disk uses 1 block in the MFT, sometimes more. Many things are stored in MFT, amongst other things a list of fragments, and if the file is very small and there is enough room it can even store the actual contents of the file there. In rare cases the 1024 bytes is not enough for all the MFT meta-information, and then extra blocks in the MFT are used. In extremely rare cases it will use diskspace outside the MFT, and this storage is visible in MyDefrag as $ATTRIBUTE_LIST files. In other words, $ATTRIBUTE_LIST are extensions of the MFT. They take up space on the disk, so MyDefrag knows about them and lists them as a special kind of file, but for all intends and purposes they are simply a part of the MFT.

Quote
how to deal with them (erase them?)
No, it's not possible to erase these file. You can try some tricks and hope that it will result in less information in the MFT, so the filesystem will automatically clean them up. For example try to turn off the compression, wait until the filesystem has finished uncompressing, and then turn it on again. Or try to copy the original file (not the $ATTRIBUTE_LIST file) to another name, then delete the original, and then rename the copy to the original name.
Logged
WHRoeder
JkDefrag Hero
*****
Posts: 180


View Profile
« Reply #13 on: July 24, 2010, 03:35:58 pm »

Quote
No, it's not possible to erase these file. You can try some tricks and hope that it will result in less information in the MFT, so the filesystem will automatically clean them up.
IIRC, I got rid of some by copying the main file to another name, delete the original and rename back.
Logged
hINDUs
JkDefrag Junior
**
Posts: 8


View Profile
« Reply #14 on: July 26, 2010, 08:18:59 pm »

thanks for the info

this is fragmenting the MFT as i understand, is there any tool to move them back to the main MFT table? an offline defrag tool maybe can do it?
or the only way is to deal with them by hand? (de/compressing, copying, moving, renaming and such)

and how to list them? using cluster inspector is annoyingly slow and frustrating (i use one from O&O, only that one shows them)
sysinternals tools dont list them (DiskView shows it as system file or $mft), streams doesnt show anything
Logged
Pages: [1] 2
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.5 | SMF © 2006-2008, Simple Machines LLC Valid XHTML 1.0! Valid CSS!