Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to upstream lib changes done for presto-mysql #6152

Closed
ArchaB opened this issue Sep 21, 2016 · 7 comments
Closed

How to upstream lib changes done for presto-mysql #6152

ArchaB opened this issue Sep 21, 2016 · 7 comments

Comments

@ArchaB
Copy link

ArchaB commented Sep 21, 2016

While porting presto-mysql on ppc64le, The package failed with the error

[ERROR] Caused by: java.util.MissingResourceException: Resource '5-5-9/Linux-ppc64le/mysqld' not found
[ERROR] at com.mysql.management.util.Streams.getResourceAsStream(Streams.java:124)

As part of providing the support. Edited the mysql-connector-mxj-db-files-5.0.12.jar created when the package builds.
Changes done were to create a 'Linuz-ppc64le' folder in the jar and copy the ppc64le compatible mysql and mysqld file into it.

What process do I need to follow to upstream the change so that ppc64le support is always provided ?

@nezihyigitbasi
Copy link
Contributor

You can open a pull request to the presto project, please see this for more info.

@electrum
Copy link
Contributor

electrum commented Sep 21, 2016

This is part of MySQL MXJ: https://downloads.mysql.com/archives/c-mxj/

Unfortunately, it has been discontinued. I see a few options here:

  1. Convince MySQL to release an updated version.
  2. Fork MXJ as-is and release a new version with the additional binaries. It would need to be released under a different Maven groupId.
  3. Move the MySQL binaries and logic for managing the server inside of https://github.com/airlift/testing-mysql-server in the same way as is done for https://github.com/airlift/testing-postgresql-server

@electrum
Copy link
Contributor

Actually, there might be a simpler way. MXJ is split into two artifacts: mysql-connector-mxj and mysql-connector-mxj-db-files. We could add an additional artifact dependency to testing-mysql-server that contains the new binary. That would allow us to keep using the existing MXJ logic for managing the server. Alternatively, we could replace the db-files artifact with a new one that contains only the binaries we care about (and possibly update to a newer version of MySQL).

@ArchaB
Copy link
Author

ArchaB commented Sep 23, 2016

The pom.xml file does have the dependency mentioned

io.airlift
testing-mysql-server
0.1

@electrum , could you please explain more on the line in your reply
'We could add an additional artifact dependency to testing-mysql-server that contains the new binary. '
What would the dependency refer to ? Will it be a local file? or do I need to upstream the jar at a location from which any project would be able to clone it?

@ArchaB
Copy link
Author

ArchaB commented Oct 17, 2016

@electrum .. Gentle Reminder

@electrum
Copy link
Contributor

electrum commented Oct 17, 2016 via email

@ArchaB
Copy link
Author

ArchaB commented Oct 18, 2016

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants