- 1 Contact Information
- 2 Why do you want to work with the Fedora Project?
- 3 Do you have any past involvement with the Fedora project or with any another open source project as a contributor (if possible please add some references as well)?
- 4 Did you participate with the past GSoC programs, if so which years, which organizations?
- 5 Will you continue contributing/ supporting the Fedora project after the GSoC 2014 program, if yes, which team(s)/area(s), you are interested with?
- 6 Why should we choose you over the other applicants?
- 7 About GSOC project
- Name: Jiffin Tony Thottan
- Email Address: thottanjiffin AT gmail DOT com
- Telephone: +918129412217
- Blog URL: http://thottanjiffin.wordpress.com
- Freenode IRC Nick: thotz
Why do you want to work with the Fedora Project?
- Because I like the Fedora project because Fedora is all about the Free Culture and contains different stream of computer science projects.I have seen lot of opportunities in the Fedora.
Do you have any past involvement with the Fedora project or with any another open source project as a contributor (if possible please add some references as well)?
- I got a opportunity to work as intern at RedHat India Private Ltd,Bangalore.As a part I had to work with two gluster projects.(http://review.gluster.org/#/q/status:open+owner:%22jiffin+tony+Thottan+%253Cjthottan%2540redhat.com%253E%22,n,z)
Did you participate with the past GSoC programs, if so which years, which organizations?
- Nope, this is my first time
Will you continue contributing/ supporting the Fedora project after the GSoC 2014 program, if yes, which team(s)/area(s), you are interested with?
- Yes, I would like to contribute as much as I can .I like to work for core development projects related to file system.
Why should we choose you over the other applicants?
- Because I am willing to contribute and support project though out my life time.
About GSOC project
Glusterfs is a distributed ,scale-out network-attached storage file system.It has found applications including cloud computing, streaming media services, and content delivery networks.GlusterFS aggregates various storage servers over network interconnects into one large parallel network file system.Based on a stackable user space design, it delivers exceptional performance for diverse workloads and is a key building block of Red Hat Storage.
Translator is a plug-able module infrastructure.Any enhancement in Gluster is implemented with help of translator ,i.e most of the functionality of GlusterFS is implemented as translators
Meta translator provides 'meta' interface which helps examine and visualize the internal (translator stack view, major data structures etc) state through the file system directory-file tree view, analogous to /proc system in the Linux kernel.
GlusterFS needs a mechanism where users and majorly developers can easily know the internal states of the system so by understand and examine easily and effectively. The proposed translator gives a much more easier interface which is way more convenient, easy, live and hack-able interface over examining through logs and GDB. In the current scenario,we want look into different logs files which are of different types.i.e there are brick log files,cli logs,glusterfs logs etc.Incase of GDB we want to take consider of all process such as glusterd,glusterfs,glusterfsd which is very tedious work.Here we use meta translator to make it comfortable.
A directory, .meta, is created in the root of the Gluster volume. This directory acts similar to the Linux's /proc mount point and provides all the internal state of the Gluster.
- A tree structure similar to the Gluster translator graph with each directory representing each module of the Gluster translator stack.
- All the structures are represented in the form of directories maintaining the same structure as they are declared.
- All the variables are made as leaf nodes, ie files. Reading the files provides the value of the variable.
- Additionally,each file operation can be recorded in the tree structure for either its lifetime or some time period. Timeout can be made configurable.