> I just want to be sure to understand good, here my understanding: (I > hope I'm not totally wrong ;p) > > The slide demonstrate how an existing file is modified. The boxes in > blue represents the existing data, and the green ones the new data. So > when an application wants modified the existing datas, the existing > blocks are copied (only if the modification is more little than the > block size I guess ?)
The blocks aren't necessarily copied. When a normal filesystem writes data, it sends a block of data to the disk overwriting the old block. It's immediately seen because the metadata is referencing that physical location. ZFS does the same bit with writing the block to disk, but instead of overwriting the old location, it's written to a new location, and metadata will be written (again in a new location) that refers to the new data. > to a new one, modifications are made on this new > block. Once all changes are made, the superblock (uberblock ?) > reference are updated, and since the data (the reference to the new > block) are modified, the checksum is recalculate and write in the next > block (the upper one). The checksums and other metadata are written before the uberblock is updated. By having everything thing else ready and consistent, the uberblock change makes it an atomic activation. > And about the next slide, I'm right, a snapshot is working exactly > like that, except that the old data blocks are not freed.. Correct. The blocks are freed when they're no longer in use, and a snapshot counts as use. -- Darren Dunham [EMAIL PROTECTED] Senior Technical Consultant TAOS http://www.taos.com/ Got some Dr Pepper? San Francisco, CA bay area < This line left intentionally blank to confuse you. > _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss