|
| 1 | +# pulsar-sql module extracted from apache/pulsar |
| 2 | + |
| 3 | +### History |
| 4 | + |
| 5 | +Pulsar SQL has been removed from the apache/pulsar repository. Some history: |
| 6 | + |
| 7 | +* In April 2020, it was decided to remove Pulsar SQL from apache/pulsar repository: |
| 8 | + * https://lists.apache.org/thread/qr49rp91w8pp8ljz1jtxn92ktnznh9tb |
| 9 | + * https://github.com/apache/pulsar/wiki/PIP-62%3A-Move-connectors%2C-adapters-and-Pulsar-Presto-to-separate-repositories |
| 10 | +* In April 2021, there was a decision to contribute Pulsar SQL as a Trino plugin: |
| 11 | + * https://lists.apache.org/thread/f9n6sc2mrboq5sxhjbr7gvdl8vqp9fpk |
| 12 | +* This was the status in December 2021: |
| 13 | + * https://lists.apache.org/thread/gqs9tq3p6tr38b7j6gjbfzfg7z1vkvsd |
| 14 | + * The Trino PR was https://github.com/trinodb/trino/pull/8020 |
| 15 | + * The work on the plugin stalled and it was never taken to completion. |
| 16 | +* In December 2023, Pulsar SQL was finally removed from the apache/pulsar repository: |
| 17 | + * https://lists.apache.org/thread/4f1cco12cycq36m7vtyjs2j5q5975666 |
| 18 | +* In October 2024, the Pulsar SQL modules were extracted from apache/pulsar to this repository, apache/pulsar-sql. |
| 19 | + |
| 20 | +### Extracting the Pulsar SQL modules with preserved commit history |
| 21 | + |
| 22 | +This repository is a fork of the Pulsar SQL module files that were present in apache/pulsar until [the removal commit](https://github.com/apache/pulsar/commit/c157f0d9). This commit is used to find out the list of removed files. Since the Pulsar SQL modules have been maintained in branch-3.0, the files have been extracted from branch-3.0 on 2024-10-18 to this repository. |
| 23 | + |
| 24 | +It has been extracted from apache/pulsar with the following commands so that the commit history is preserved: |
| 25 | + |
| 26 | +```shell |
| 27 | +git clone https://github.com/apache/pulsar pulsar-sql |
| 28 | +cd pulsar-sql |
| 29 | +# https://github.com/apache/pulsar/commit/c157f0d9 is the commit hash of Pulsar SQL modules removal |
| 30 | +git diff-tree --no-commit-id --name-only --diff-filter=D -r c157f0d > /tmp/keep_files.txt |
| 31 | +# branch-3.0 contains the maintained Pulsar SQL modules |
| 32 | +git checkout branch-3.0 |
| 33 | +# also keep all files in the pulsar-sql directory in branch-3.0 |
| 34 | +find pulsar-sql >> /tmp/keep_files.txt |
| 35 | +# install git-filter-repo for filtering out the removed Pulsar SQL modules |
| 36 | +brew install git-filter-repo |
| 37 | +# filter out the removed Pulsar SQL modules |
| 38 | +git filter-repo --paths-from-file /tmp/keep_files.txt --force |
| 39 | +# delete the old master branch |
| 40 | +git branch -D master |
| 41 | +# create a new master branch |
| 42 | +git checkout -b master |
| 43 | +``` |
| 44 | + |
| 45 | +### Todo |
| 46 | + |
| 47 | +- [ ] Setup a maven build for the separate repository |
| 48 | + - Reuse apache/pulsar and outdated [apache/pulsar-presto](https://github.com/apache/pulsar-presto) pom.xml and setup parent pom.xml for the separate repository |
| 49 | +- [ ] Setup a GitHub Actions CI pipeline to test the separate repository |
0 commit comments