Comments (6)
Adding support for a new database/driver is a quite complex process on our end. It requires us to integrate it into our CI pipelines and commit to supporting it across all types and syntax — including all our non-OSS parts. In addition, YugabyteDB does not support other PostgreSQL features that require more changes, and I believe an implementation for such driver should be different and not change the Postgres one.
Also, our HCL cannot contain unsupported options, and Yugabyte would need to have different file extension in our editor plugins (VSCode, JetBrains), similar to what we have for MariaDB or MySQL.
Currently, this is not on our upcoming tasks, as we haven’t received any customer requests for it. However, I believe we will eventually add it, and we may reach out to the Yugabyte team before we’ll start to work on it.
Thank you for your suggestion, but I'll decline it at this stage.
from atlas.
Hey, thank you for reporting this issue. But I have checked their document for syntax. It looks like Atlas still generates the correct syntax for lsm
- https://docs.yugabyte.com/preview/api/ysql/the-sql-language/statements/ddl_create_index/#create-index
- https://docs.yugabyte.com/preview/api/ysql/the-sql-language/statements/ddl_create_index/#access-method-name
They don't mention anything special about the lsm
method, and it looks like USING lsm
should be valid to use.
from atlas.
It should be valid, I agree.
Since the error message mentions it, is it possible that lib/pq
could be rejecting it?
from atlas.
However, in YugabyteDB, lsm
is the default index type, so there is a possible workaround on Atlas by not including the USING
clause when the DB is Yugabyte, and the inspected or specified index type is lsm
.
I quickly tested that, changing Atlas in a few places, and it seems to work.
Please take a look at 8cce007
If adding such a change to Atlas makes sense, I can improve the patch as needed and post a PR here.
from atlas.
Thanks for the suggestion, @lalloni. We currently do not have official support for YugabyteDB, but it's on our roadmap.
Since this is duplicate of #2420, I think we can close this issue and track the progress there.
from atlas.
Thanks, @a8m.
I saw #2420 before, but it had no detail, plan, or code; it was just an unanswered question. So, I moved forward to making some specific progress here.
I'm not sure how to take your last comment in the context of the patch I shared earlier.
Should we pursue the idea of getting it in as a small change that at least makes it work?
And again, I can offer time from my side to improve it in any way you believe it should be improved to get it integrated back.
from atlas.
Related Issues (20)
- Feature Request: Support for Clickhouse Dictionary
- Bypass interactive approval for column `RENAME` detection HOT 5
- Hard to keep HCL files concise when they contain same table names
- What is the HCL standard library? Is this documented anywhere? HOT 1
- Linter for versioned workflow doesn't follow transaction model
- Latest release makes diff command fail
- Feature Request: Add support of SSH tunnel
- Missing Schema Prefix in DDL `RENAME` Statement HOT 4
- [REOPEN of #3006] Missing Schema Prefix in DDL `RENAME`
- Atlas hash incorrect order for golang migrate
- Fix the URL parsing for special characters. HOT 2
- Running atlas commands against cockroachdb returns error with postgres wire protocol HOT 2
- Add Postgres 15+ support for security = INVOKER
- Feature Request: Support for `SET configuration_parameter { TO value | = value | FROM CURRENT }` in Function Definition Syntax HOT 2
- Atlas HCL Syntax: String Not Recognized by Linter HOT 5
- [Multi-file schema]: Allow glob pattern for `env.src` HOT 2
- [Multi-file schema / vsCode extension]: Load related schema files into extension context HOT 5
- [vsCode extension]: Do not require schema files to end in `.pg.hcl` HOT 1
- Go 1.23 support with ent schema loader HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atlas.