[pyar] [Aporte] Para los que estan escribiendo proyectos.
Juan Carlos Ojeda
juancarlospaco en gmail.com
Jue Oct 21 18:57:01 ART 2010
2010/10/21 Claudio Freire <klaussfreire en gmail.com>
>
>
> 2010/10/21 QliX=D! [aka EHB] <qlixed en gmail.com>
>
>> 2010/10/21 Juan Carlos Ojeda <juancarlospaco en gmail.com>:
>> >
>> >
>> [...]
>>
>> > Correcto!, eso es lo que queria decir.
>> > Por eso en realidad hacer un file.close() con os.fsync() no sirve hoy
>> dia
>> > con EXT4 o superior.
>>
>> Que????. - No nada q ver segun tengo entendido :)
>>
>> A ver.
>> Hay 3 capas en el cacheo de disco si mal no recuerdo, y se agrega una
>> "semi cuarta" capa en los journals FS:
>> 1) Aplicacion (digamos q con fflush de C lo salvas)
>> 2) VFS o FS (Con un Sync le indcas que baje todo a disco)
>> 2.b) Journal FS: El sync solo asegura que el Journal se guarde, no que
>> se modifique el bloque fisico del disco real.
>> 3) Disk Buffer - Buffer de disco Hardware (en controladora digamos).
>>
>
> A grandes rasgos es así.
>
> Realmente, las aplicaciones (python o lo que sea) no deberían preocuparse
> más que por hacer fflush (o fclose).
>
> Sync a nivel sistema entero sólo se hace antes de desmontar un disco. No es
> cosa de una aplicación, a menos que la aplicación sea un script de sistema.
>
> Una base de datos seguramente va a querer usar fsync para hacer sync de un
> archivo en particular (una tabla, índice o WAL), pero muy pocas aplicaciones
> realmente quieren hacer eso.
>
> Cortar la corriente indefectiblemente introduce un riesgo de pérdida de
> datos... pensar que hacer sync evita eso es ser ingénuo (ej: se te corta la
> corriente antes de hacer sync - o durante). Sync/fsync se usa como barrera
> (ej: antes de reportar "committed" una base de datos hace fsync, para poder
> asegurar persistencia de los datos que reportó como persistidos). Es una
> operación que por su definición atenta contra la performance y sólo debería
> hacerse cuando la integridad *debe garantizarse*. No hacerlo no implica
> perder datos más de lo que cualquier usuario normal esperaría (yo no espero
> no perder datos si desenchufo la compu sin aviso previo al SO).
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
Tengo entendido que fsync de Python NO actualiza el Super Block,
esto es correcto o hay mas documentacion incorrecta ?
--
.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20101021/ac3fcec9/attachment.html>
More information about the pyar
mailing list