Reading time: 7 minutes
PostgreSQL is the World’s most advanced Open Source Relational Database. The interview series “PostgreSQL Person of the Week” presents the people who make the project what it is today. Read all interviews here.
Please tell us about yourself, and where you are from.
My name is Takamichi Osumi.
I’m a Japanese born and raised in Tokyo. Currently, I live in the Shizuoka prefecture where I can enjoy an easier access to the relaxing nature. I have worked in the Fujitsu open-source team for the last couple of years and got involved in some PostgreSQL projects.
How do you spend your free time? What are your hobbies?
Drawing and traveling.
I mainly draw oil paintings during my free time. I spend at least several months to complete one painting such as still life and figure one. I also like going to museums to appreciate western paintings and sculptures. It makes me calm, organize my thoughts and amazed by professional technique in those areas!
Any Social Media channels of yours we should be aware of?
There are some blogs I wrote about PostgreSQL. You can have a look at those here.
Any favorite movie, or show?
One of my favorites is “Attack on Titan”, a Japanese manga series. It’s about a fantasy world that is dominated by giants and there humanity resists and fights for freedom. After reading the story, I felt as if I had learned something from a part of a historical documentary. I don’t want to spoil anything here. Please check it out if you are interested!
What does your ideal weekend look like?
Cleaning my room in the early morning and studying in the tidy room with a nice breeze from the window on a comfortable sunny day.
What’s still on your bucket list?
I experienced an exchange program of ETH Zurich when I was a graduate student and lived in Zurich for one semester. Luckily I could make a lot of awesome friends there. To visit my friends lies on top of my lifetime list.
What is the best advice you ever got? Where does it come from ?
“As a Man Thinketh” by James Allen describes “Dream lofty dreams, and as you dream so you shall become. Your vision is the promise of what you shall one day be; your ideal is the prophecy of what you shall at last unveil.” I read the Japanese translation of the book. This impressed me a lot and occasionally resurfaces in my mind so that I don’t make a downward revision of my plans or my ideals in times of difficulty.
When did you start using PostgreSQL, and why? Do you remember which version was related to it ?
Just after joining Fujitsu and the team of Fujitsu Enterprise Postgres, I started to use PostgreSQL to make some module for a product called PowerGres Plus, where Fujitsu worked together with a partner company SRA OSS, Inc. It incorporates Fujitsu’s know-how from its own business experiences and increases reliability. At that time, I used v10 to make it and this was my first fortunate encounter with PostgreSQL.
Have you studied at a university? If yes, was it related to computers? Did your study help you with your current job?
I received my Bachelor of Arts in Policy Management (this was from interdisciplinary faculty) and got my Master of System Engineering, both from Keio University. I met software development as an undergraduate and following my curiosity, I applied to a ubiquitous communication laboratory for the master. To some extent, those experiences helped me to understand the PostgreSQL internals.
What other databases are you using? Which one is your favorite?
I only use PostgreSQL at the present.
On which PostgreSQL-related projects are you currently working?
Mainly reviewing some logical replication bugs and features such as time delayed logical replication and an option to exclude specific tables from publication.
How do you contribute to PostgreSQL?
I have been working on some development of new features or reviewing other developers patches of logical replication recently. Also, my activity includes to propose a documentation fix and sometimes report BuildFarm failures on -hackers. Besides, I started to write some technical blogs that focus on upcoming features or some internals of PostgreSQL a couple of years ago.
What is the most annoying PostgreSQL thing you can think of ?
I often track BuildFarm to check whether some specific commit of interest (e.g. some patch where I work as a reviewer) introduces a new type of failure. Then, I’d be happy if there was one more tip of information that indicates one failure is new or not, compared with past failures on other various platforms on that system. Simple comparison of diff files won’t work in many cases since parsing and extracting logs is necessary, for instance to get essential TAP test error messages. Then, I’m not sure how feasible this idea is, but if this is achievable, it would allow developers to comfortably focus on new problems that happen after a commit time of interest.
What is your favorite PostgreSQL extension?
I don’t use any special extensions for development. The tools I use are pg_waldump, pgbench and pg_controldata.
What is the feature you like most in the latest PostgreSQL version?
When it comes to PostgreSQL 15, my favorite one is ALTER SUBSCRIPTION … SKIP feature. It’s been built safely and easily to address logical replication conflicts.
Adding to that, what feature/mechanism would you like to see in PostgreSQL? And why?
Logical replication of DDL, storing conflict error information of logical replication (such as finish LSN) in the system catalog, and Parallel COPY.
The first one might be self-explanatory, but it’s to eliminate one of the major logical replication restrictions. It would be great if users and developers become free from preparing the same schema definitions over different nodes. The second one was an idea to support/extend the feature of handling logical replication conflicts. At present, users need to fetch the error information from the server log if they want to skip a transaction. This idea was proposed to achieve an easier reference for the error information. Regarding the last one, I’ve heard that there was an enterprise need to accelerate the speed of data loading from my colleague before. Personally, I’d like to see this feature come true and make PostgreSQL more competitive among other databases.
Could you describe your PostgreSQL development toolbox?
git, emacs, gcc, gdb, valgrind, ctags
Which skills are a must have for a PostgreSQL developer/user?
Not only technical skills such as C and SQL but also capability to understand technical motivation of improvement precisely and patience in reviewing, testing and discussing implementation details.
Do you think PostgreSQL has a high entry barrier ?
No. I feel the PostgreSQL community provides high quality documentation and people help others who have questions or are in trouble. This is why I could join the community and can continue the current work.
Which PostgreSQL conferences did you visit? Do you submit talks?
I joined an unconference at PGCon 2020 Ottawa online and gave a brief presentation about data loading for data warehousing. The conference minutes can be seen here. When I can build more solid knowledge of PostgreSQL, I’d like to join more conferences in the future.
What is your advice for people who want to start PostgreSQL developing - as in, contributing to the project ?
To start from picking up relatively small patches from Commitfest entries is one major approach. Joining the review of patch builds new knowledge. Meanwhile, on -hackers, I feel sometimes some short patches get committed quickly (for example documentation fix). Then, I suggest keeping eyes on other threads about areas of interest and take the chance to get involved if any as well.
Do you think PostgreSQL will be here for many years in the future?
Yes. The PostgreSQL community keeps adding new big features. To me there are many passionate developers and great leaders who are visionary and creative for new features and have the power to execute their plans. This convinces me that the popularity of PostgreSQL will be increased in the future.
Are you reading the -hackers mailinglist? Any other list?
Anything else you like to add?
I’m honored to get the opportunity for this interview. Thank you so much, Andreas.
I appreciate all the people in the PostgreSQL community and Fujitsu who support me to enjoy the awesome environment as a PostgreSQL developer.