Contents
- James Server
- APISIX
- Apache APISIX: Redesign/ADD Apache APISIX Plugin icons
- Apache APISIX: Multi programing languages SDK support
- Apache APISIX: Elasticsearch plugin
- Apache APISIX: Support local file and data center configuration conversion, import and export
- Apache APISIX: Introduce a Storage abstraction
- Apache APISIX: Java Plugin Runner Improvement
- Apache APISIX: Refactoring Dashboard plugin orchestration
- SkyWalking
- ShardingSphere
- Apache ShardingSphere: Develop an external tool to convert YAML configuration into DistSQL scripts
- Apache ShardingSphere: Solve unsupported Postgres sql about statements that start with 'c' for ShardingSphere Parser
- Apache ShardingSphere: Solve unsupported Postgres sql about alter statement for ShardingSphere Parser
- ShenYu
- TrafficControl
- RocketMQ
- Community Development
- DolphinScheduler
- Commons Statistics
- Commons Numbers
- Commons Math
- Commons Geometry
- CloudStack
- GSoC Idea 2022 - Bypass Secondary Storage (Direct Download) on VMware &/or XenServer
- GSoC 2022: CloudStack Terraform Provider - Add datasources for the existing resources
- GSoC 2022 Idea: CloudStack Edge Zones
- View Logs in the UI
- Add the ability to Safely Shutdown / restart CloudStack
- CloudStack Terraform Provider - Add support for Kubernetes Clusters
- Cassandra
- Beam
- Apache Nemo
- Apache Dubbo
- Apache AsterixDB
- Airavata
- Apache Ratis
James Server
Adopt Pulsar as the messaging technology backing the distributed James server
https://www.mail-archive.com/server-dev@james.apache.org/msg71462.html
A good long term objective for the PMC is to drop RabbitMQ in
favor of pulsar (third parties could package their own components using
RabbitMQ if they wishes...)
This means:
- Solve the bugs that were found during the Pulsar MailQueue review
- Pulsar MailQueue need to allow listing blobs in order to be
deduplication friendly. - Provide an event bus based on Pulsar
- Provide a task manager based on Pulsar
- Package a distributed server backed by pulsar, deprecate then replace
the current one. - (optionally) support mail queue priorities
While contributions would of course be welcomed on this topic, we could
offer it as part of GSOC 2022, and we could co-mentor it with mentors of
the Pulsar community (see [3])
[3] https://lists.apache.org/thread/y9s7f6hmh51ky30l20yx0dlz458gw259
Would such a plan gain traction around here ?
...
Support linearizable read from followers
Apache Ratis is a highly customizable Raft protocol implementation in Java. Raft is a easily understandable consensus algorithm to manage replicated state. Apache Ratis could be used in any Java application where state should be replicated between multiple instances.
Raft algorithm not only allows linearizable read through Read Index or Lease Read, but also allows linearizable read on the follower nodes, which can increase the read throughput linearly with the number of nodes. Algorithm specific processes can refer to Raft thesis in section 6.4
In our survey, sofa-jraft, etcd, tikv-rs and other famous consensus algorithms libraries have supported linearizable follower read. As the only consensus algorithm library under the Apache Foundation, we expect Ratis to support this feature as well.
Difficulty: Major
Project size: ~350 hour (large)
Potential mentors:
Tsz-Wo Sze, mail: szetszwo@gmail.com
Project Devs, mail: dev@ratis.apache.org