[Bugs] [Bug 1217711] New: Upcall framework support along with cache_invalidation usecase handled

bugzilla at redhat.com bugzilla at redhat.com
Fri May 1 09:53:19 UTC 2015


https://bugzilla.redhat.com/show_bug.cgi?id=1217711

            Bug ID: 1217711
           Summary: Upcall framework support along with cache_invalidation
                    usecase handled
           Product: GlusterFS
           Version: 3.7.0
         Component: upcall
          Keywords: Triaged
          Severity: high
          Assignee: bugs at gluster.org
          Reporter: skoduri at redhat.com
                CC: bugs at gluster.org, gluster-bugs at redhat.com
        Depends On: 1200262, 1200264, 1200266, 1200267, 1200271
            Blocks: 1188184



+++ This bug was initially created as a clone of Bug #1200262 +++

Description of problem:

This bug is to track the changes required for upcall infrastructure and basic
support added to handle cache-invalidation use-case.

Feature page - 
http://www.gluster.org/community/documentation/index.php/Features/Upcall-infrastructure

--- Additional comment from Anand Avati on 2015-03-10 22:21:04 EDT ---

REVIEW: http://review.gluster.org/9535 (Upcall: New xlator to store various
states and send cbk events.) posted (#11) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-10 22:21:17 EDT ---

REVIEW: http://review.gluster.org/9536 (gfapi: APIs to store and process upcall
notifications received) posted (#9) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-16 09:23:17 EDT ---

REVIEW: http://review.gluster.org/9535 (Upcall: New xlator to store various
states and send cbk events.) posted (#12) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-16 09:35:34 EDT ---

REVIEW: http://review.gluster.org/9535 (Upcall: New xlator to store various
states and send cbk events.) posted (#13) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-16 10:58:22 EDT ---

REVIEW: http://review.gluster.org/9535 (Upcall: New xlator to store various
states and send cbk events) posted (#14) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-16 10:58:25 EDT ---

REVIEW: http://review.gluster.org/9536 (gfapi: APIs to store and process upcall
notifications received) posted (#10) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-17 08:08:12 EDT ---

COMMIT: http://review.gluster.org/9535 committed in master by Kaleb KEITHLEY
(kkeithle at redhat.com) 
------
commit 2b97b57cd8c71cb07b7002cf3483e9cfc9403c58
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Sun Feb 15 23:35:56 2015 +0530

    Upcall: New xlator to store various states and send cbk events

    Framework on the server-side, to handle certain state of the files
    accessed and send notifications to the clients connected.

    A generic and extensible framework, used to maintain states in
    the glusterfsd process for each of the files accessed
    (including the clients info doing the fops) and send
    notifications to the respective glusterfs clients incase of
    any change in that state.

    This patch handles "Inode Update/Invalidation" upcall event.

    Feature page:
            URL:
http://www.gluster.org/community/documentation/index.php/Features/Upcall-infrastructure

    Below link has a writeup which explains the code changes done -
            URL:
https://soumyakoduri.wordpress.com/2015/02/25/glusterfs-understanding-upcall-infrastructure-and-cache-invalidation-support/

    Change-Id: Ie3d724be9a3419fcf18901a753e8ec2df2ac802f
    BUG: 1200262
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/9535
    Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com>
    Tested-by: Gluster Build System <jenkins at build.gluster.com>

--- Additional comment from Anand Avati on 2015-03-17 12:50:46 EDT ---

REVIEW: http://review.gluster.org/9536 (gfapi: APIs to store and process upcall
notifications received) posted (#11) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-03-17 17:01:25 EDT ---

COMMIT: http://review.gluster.org/9536 committed in master by Kaleb KEITHLEY
(kkeithle at redhat.com) 
------
commit 2a4561ef08b8be3b7d79b951252e87ba8f987120
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Mon Feb 16 11:47:58 2015 +0530

    gfapi: APIs to store and process upcall notifications received

    In case of any upcall cbk events received by the protocol/client,
    gfapi will be notified which queues them up in a list (<gfapi_cbk_upcall>).

    Applicatons are responsible to provide APIs to process & notify them in
case
    of any such upcall events queued.

    Added a new API which will be used by Ganesha to repeatedly poll for any
    such upcall event notified (<glfs_h_poll_upcall>).

    A new test-file has been added to test the cache_invalidation upcall
events.

    Below link has a writeup which explains the code changes done -
            URL:
https://soumyakoduri.wordpress.com/2015/02/25/glusterfs-understanding-upcall-infrastructure-and-cache-invalidation-support/

    Change-Id: Iafc6880000c865fd4da22d0cfc388ec135b5a1c5
    BUG: 1200262
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/9536
    Tested-by: Gluster Build System <jenkins at build.gluster.com>
    Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com>

--- Additional comment from Anand Avati on 2015-04-14 01:00:48 EDT ---

REVIEW: http://review.gluster.org/10225 (gfapi: Modified CACHE_INVALIDATE
flags) posted (#1) for review on master by soumya k (skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 05:00:47 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#3) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 05:00:50 EDT ---

REVIEW: http://review.gluster.org/10200 (geo-rep: Added GF_CPPFLAGS to
Makefile.am) posted (#4) for review on master by soumya k (skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 05:00:53 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#10) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 06:20:57 EDT ---

REVIEW: http://review.gluster.org/10225 (gfapi: Modified CACHE_INVALIDATE
flags) posted (#2) for review on master by soumya k (skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 06:21:00 EDT ---

REVIEW: http://review.gluster.org/10232 (gfapi: Fix in
glfs_h_create_from_handle) posted (#1) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 09:11:33 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#4) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-14 15:48:00 EDT ---

COMMIT: http://review.gluster.org/10200 committed in master by Niels de Vos
(ndevos at redhat.com) 
------
commit 08a1041ca9aaf5300032294ca5c5e19dc8f836eb
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Fri Apr 10 20:12:57 2015 +0530

    geo-rep: Added GF_CPPFLAGS to Makefile.am

    This change is required to include contrib files in glusterfs.h

    Change-Id: I40ef2c495015a6861fdd9f6a72599f094a89eb2a
    BUG: 1200262
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/10200
    Reviewed-by: Kotresh HR <khiremat at redhat.com>
    Reviewed-by: Raghavendra Talur <rtalur at redhat.com>
    Tested-by: Gluster Build System <jenkins at build.gluster.com>
    Tested-by: NetBSD Build System
    Reviewed-by: Niels de Vos <ndevos at redhat.com>

--- Additional comment from Anand Avati on 2015-04-15 02:40:49 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#5) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-15 03:29:34 EDT ---

REVIEW: http://review.gluster.org/10225 (gfapi: Modified CACHE_INVALIDATE
flags) posted (#3) for review on master by soumya k (skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-15 03:29:37 EDT ---

REVIEW: http://review.gluster.org/10232 (gfapi: Fix in
glfs_h_create_from_handle) posted (#2) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-15 08:18:36 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#6) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-17 05:51:28 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#7) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-17 05:51:33 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#11) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-17 05:54:57 EDT ---

REVIEW: http://review.gluster.org/10225 (gfapi: Modified CACHE_INVALIDATE
flags) posted (#4) for review on master by soumya k (skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-17 05:55:02 EDT ---

REVIEW: http://review.gluster.org/10232 (gfapi: Fix in
glfs_h_create_from_handle) posted (#3) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-19 04:09:01 EDT ---

COMMIT: http://review.gluster.org/10232 committed in master by Niels de Vos
(ndevos at redhat.com) 
------
commit b464723a48c2e35e7f209c3f909c964b6ba7fb47
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Tue Apr 14 13:08:34 2015 +0530

    gfapi: Fix in glfs_h_create_from_handle

    While constructing glfs_object from the handle given, incase
    if inode is found in the inode table, we need not do "syncop_lookup"
    unless we need to return the inode attributes.

    BUG: 1200262
    Change-Id: I4682d9e4420a0bcb1b3e807b801ccb3d8de3d2cd
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/10232
    Tested-by: NetBSD Build System
    Reviewed-by: Niels de Vos <ndevos at redhat.com>

--- Additional comment from Anand Avati on 2015-04-19 04:24:06 EDT ---

COMMIT: http://review.gluster.org/10225 committed in master by Niels de Vos
(ndevos at redhat.com) 
------
commit f45779067dbba3077b9c64c930fd4ddd1c51243e
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Tue Apr 14 04:35:09 2015 +0530

    gfapi: Modified CACHE_INVALIDATE flags

    Have prefixed CACHE_INVALIDATE flags exposed via gfapi with 'GFAPI_'.
    In addition as INODE_UPDATE is asynchronous and may need some
    support in NFS-Ganesha, have taken it out for now. Will revisit it
    later.

    Change-Id: Icbbc2c92a61c9225b6c5bc8c4212e8c4a3a0a10f
    BUG: 1200262
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/10225
    Tested-by: NetBSD Build System
    Reviewed-by: Niels de Vos <ndevos at redhat.com>

--- Additional comment from Anand Avati on 2015-04-20 13:05:16 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#8) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-20 13:05:18 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#12) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-24 06:11:22 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#13) for review on master by Poornima G
(pgurusid at redhat.com)

--- Additional comment from Anand Avati on 2015-04-25 03:05:41 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#14) for review on master by Poornima G
(pgurusid at redhat.com)

--- Additional comment from Anand Avati on 2015-04-27 04:53:29 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#9) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-27 04:53:31 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#15) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-29 13:40:51 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#10) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-29 13:40:55 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#16) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-29 13:40:57 EDT ---

REVIEW: http://review.gluster.org/10452 (rpc: Include stat and parent gfid in
'gfs3_cbk_cache_invalidation_req') posted (#1) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-30 04:02:08 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#11) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-30 04:02:11 EDT ---

REVIEW: http://review.gluster.org/10049 (Upcall: Process each of the upcall
events separately) posted (#17) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-30 04:02:13 EDT ---

REVIEW: http://review.gluster.org/10452 (rpc: Included necessary stats in
'gfs3_cbk_cache_invalidation_req') posted (#2) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-30 04:02:16 EDT ---

REVIEW: http://review.gluster.org/10460 (Upcall: Send stat as part of
cache_invalidation notifications) posted (#1) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-04-30 07:51:50 EDT ---

COMMIT: http://review.gluster.org/10049 committed in master by Kaleb KEITHLEY
(kkeithle at redhat.com) 
------
commit 2bf85951c6c25aa17acc591fabc3b3927b6dc82f
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Mon Mar 30 16:56:59 2015 +0530

    Upcall: Process each of the upcall events separately

    As suggested during the code-review of Bug1200262, have modified
    GF_CBK_UPCALL to be exlusively GF_CBK_CACHE_INVALIDATION.
    Thus, for any new upcall event, a new CBK procedure will be added.

    Also made changes to store upcall data separately based on the
    upcall event type received.

    BUG: 1200262
    Change-Id: I0f5e53d6f5ece16aecb514a0a426dca40fa1c755
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/10049
    Tested-by: Gluster Build System <jenkins at build.gluster.com>
    Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com>

--- Additional comment from Anand Avati on 2015-04-30 07:53:23 EDT ---

REVIEW: http://review.gluster.org/10224 (Upcall: Replaced opaque gfid with
string in rpc cbk args) posted (#12) for review on master by Kaleb KEITHLEY
(kkeithle at redhat.com)

--- Additional comment from Anand Avati on 2015-04-30 08:11:34 EDT ---

COMMIT: http://review.gluster.org/10224 committed in master by Kaleb KEITHLEY
(kkeithle at redhat.com) 
------
commit 664d2d243deb132dd5daad0280ae9fa2406ca26a
Author: Soumya Koduri <skoduri at redhat.com>
Date:   Tue Apr 14 04:03:36 2015 +0530

    Upcall: Replaced opaque gfid with string in rpc cbk args

    For GF_CBK_CACHE_INVALIDATION, have changed the type of gfid
    to be string (cannonical form) instead of opaque byte format
    to ensure correctness across platforms supporting different
    endianness.

    BUG: 1200262
    Change-Id: Iac4372714f4b4ebcd9c4393aaf46ceba3f37f587
    Signed-off-by: Soumya Koduri <skoduri at redhat.com>
    Reviewed-on: http://review.gluster.org/10224
    Reviewed-by: Kaleb KEITHLEY <kkeithle at redhat.com>
    Tested-by: Gluster Build System <jenkins at build.gluster.com>

--- Additional comment from Anand Avati on 2015-05-01 05:19:10 EDT ---

REVIEW: http://review.gluster.org/10460 (Upcall: Send stat as part of
cache_invalidation notifications) posted (#2) for review on master by soumya k
(skoduri at redhat.com)

--- Additional comment from Anand Avati on 2015-05-01 05:19:15 EDT ---

REVIEW: http://review.gluster.org/10452 (rpc: Included necessary stats in
'gfs3_cbk_cache_invalidation_req') posted (#3) for review on master by soumya k
(skoduri at redhat.com)


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1188184
[Bug 1188184] Tracker bug :  NFS-Ganesha new features support for  3.7.
https://bugzilla.redhat.com/show_bug.cgi?id=1200262
[Bug 1200262] Upcall framework support along with cache_invalidation
usecase handled
https://bugzilla.redhat.com/show_bug.cgi?id=1200264
[Bug 1200264] Upcall: Support to handle upcall notifications asynchronously
https://bugzilla.redhat.com/show_bug.cgi?id=1200266
[Bug 1200266] Upcall: Support to filter out duplicate upcall notifications
received
https://bugzilla.redhat.com/show_bug.cgi?id=1200267
[Bug 1200267] Upcall: Cleanup the expired upcall entries
https://bugzilla.redhat.com/show_bug.cgi?id=1200271
[Bug 1200271] Upcall: xlator options for Upcall xlator
-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list