Hi!

As recently noticed by Lars, Tephra hasn't been working in Phoenix since
5.1/4.16 due to a bug.

The fact that this went unnoticed for a year, and the fact that generally
there seems to be minimal interest in Tephra suggests that we should
re-visit the decision to maintain Tephra within the Phoenix project.

The last two commits that were not aimed at fighting bit-rot, but were real
fixes were committed in Jun 2019 by Lars. In the last two and a half years,
all we did was try to keep ahead of bit-rot, so that Tephra keeps up with
new HBase and maven releases, and the changes in the CI infra.

Tephra uses an old Guava version, and depends heavily on the retired Apache
Twill project.
This is a major tech debt, and an adoption blocker (CVEs in direct Tephra
dependencies), which is also carried over into the Phoenix dependencies and
shaded artifacts that we should rectify.
PHOENIX-6064 <https://issues.apache.org/jira/browse/PHOENIX-6064> , which
broke Tephra support, itself is a workaround so that we can avoid shipping
Tephra, and its problematic dependencies.

Ripping out Twill, and updating Guava and other dependencies is a
non-trivial amount of work (I estimate 1-4 weeks, depending on familiarity
with Tephra/Twill/Guava).

At the moment, no-one seems to be interested enough in Tephra to bring its
tech debt to acceptable levels, and in fact no-one seems to be using it
with any recent Phoenix release (as it doesn't work in them).

I suggest that you also check out the discussion between Lars and me in
https://issues.apache.org/jira/browse/PHOENIX-6615 for some more details
and background.

Based on the above, I propose retiring Tephra, and removing Tephra support
from Phoenix 5.2 / 4.17, unless someone steps up to solve the above issues
and maintain Tephra.

Note that this would not mean dropping transaction support from Phoenix, as
Omid support is in much better shape, and is actively used.

Please share your thoughts on the issue, if you are using Tephra and/or can
commit to solving the issues above, or if you agree on its removal, or any
other suggestions or objections.

regards
Istvan

Reply via email to