Hi Ankireddypalle,

On 16/10/16 11:10, Ankireddypalle Reddy wrote:
The encryption xlator is the last one before posix and it’s here that
the data is getting encrypted.  When the data is read back the encrypted
data is returned. Decryption is supposed to happen in read callback
which does not seem to be happening. The fact that encrypted data is
getting returned indicates that data in turn is getting returned from
the posix/underlying fs layer.  Is it possible that data be returned by
reading from the underlying fs by any translator other than posix.

It could be because of quick-read translator. It caches some data from the beginning of files on lookups (even before an actual open and read is done on the file), so the first small read sent to the file could return cached data directly from what was obtained in the lookup fop without issuing a read fop.

You would need to handle that case in lookup also.

Anyway, to be sure you should do as Ravi has said and disable all performance xlators. In this case all reads should arrive as regular reads to your xlator.

Xavi




Thanks and Regards,

Ram

*From:*Ravishankar N [mailto:ravishan...@redhat.com]
*Sent:* Sunday, October 16, 2016 12:19 AM
*To:* Ankireddypalle Reddy; gluster-users@gluster.org
*Subject:* Re: [Gluster-users] rot-13 Translator query



On 10/15/2016 08:22 PM, Ankireddypalle Reddy wrote:

    Hi,

          I am trying to follow the below document for developing a
    translator.


    
https://github.com/gluster/glusterfs/blob/master/doc/developer-guide/translator-development.md



          I’ve created a replica volume and modified the vol file to
    include rot-13 translator. Below is the snippet from vol file.



    volume myvol-posix

        type storage/posix

        option volume-id b492191e-77a5-4fc3-9394-49218e36dae2

        option directory /brick1/repli

    end-volume



    volume *myvol-rot13*

        type encryption/rot-13

        subvolumes *myvol-posix*

    end-volume



    volume myvol-trash

        type features/trash

        option trash-internal-op off

        option brick-path /brick1/repli

        option trash-dir .trashcan

        subvolumes *myvol-rot13*

    end-volume

    …



    The writes are getting intercepted by the translator and the file is
    getting encrypted. But the reads don’t seem to be getting
    intercepted by the translator.  I tried setting break point in the
    posix_readv function and attach the brick daemons to gdb. But
    posix_readv does not seem to be getting called on the brick daemon
    and the read completes on the application side.



    Can someone please explain how the reads are getting serviced here
    without hitting the posix layer.

It could be due to client side caching. I usually disable all
performance xlators (write-behind, read-head, io-cache, stat-prefetch,
quick-read, open-behind) when I want to remove caching effects while
debugging. drop-caches also helps.

HTH,
Ravi




Thanks and Regards,

Ram

***************************Legal Disclaimer***************************

"This communication may contain confidential and privileged material for
the

sole use of the intended recipient. Any unauthorized review, use or
distribution

by others is strictly prohibited. If you have received the message by
mistake,

please advise the sender by reply email and delete the message. Thank you."

**********************************************************************


_______________________________________________

Gluster-users mailing list

Gluster-users@gluster.org <mailto:Gluster-users@gluster.org>

http://www.gluster.org/mailman/listinfo/gluster-users



***************************Legal Disclaimer***************************
"This communication may contain confidential and privileged material for the
sole use of the intended recipient. Any unauthorized review, use or
distribution
by others is strictly prohibited. If you have received the message by
mistake,
please advise the sender by reply email and delete the message. Thank you."
**********************************************************************


_______________________________________________
Gluster-users mailing list
Gluster-users@gluster.org
http://www.gluster.org/mailman/listinfo/gluster-users

_______________________________________________
Gluster-users mailing list
Gluster-users@gluster.org
http://www.gluster.org/mailman/listinfo/gluster-users

Reply via email to