SQLPro icon indicating copy to clipboard operation
SQLPro copied to clipboard

Feature Request: Re-enable Oracle for SQLPro Studio

Open choongjoey opened this issue 1 year ago • 16 comments

Is your feature request related to a problem? Please describe. Re-enable Oracle for SQLPro Studio

Describe the solution you'd like With Oracle finally releasing an instant client for Apple Silicon, would Oracle connections be re-enabled for SQLPro Studio Mac and iOS?

Describe alternatives you've considered N/A

Additional context https://www.oracle.com/database/technologies/instant-client/macos-arm64-downloads.html

Environment (please complete the following information):

  • Device: [e.g. iPhone6, MacBook] iOS, macOS
  • OS: [e.g. iOS8.1, macOS 11] iOS, macOS
  • SQLPro app Version [e.g. SQLPro Studio 2022.x] SQLPro Studio 2024.x
  • Installation source: [App Store, Website download, Setapp]. App Store
  • Target database server [e.g. MySQL, PostgreSQL, Microsoft SQL Server, etc] Oracle

choongjoey avatar Aug 05 '24 08:08 choongjoey

I'm investigating this now and seeing if it's something that can be done.

hankinsoft avatar Aug 06 '24 13:08 hankinsoft

Thanks for looking into this. Oracle is the primary reason I purchased the tool. I am still running on a 2019 MacBook (Intel), but will be forced to an M3 MacBook in the next 3 months.

cwolcott avatar Aug 12 '24 17:08 cwolcott

How has the investigation going into the new Oracle Instant Client for Apple Silicon?

cwolcott avatar Sep 21 '24 15:09 cwolcott

Slowly! I SIP is what is currently slowing me down at the moment. Previously when I would build SQLPro for Oracle it was a system without SIP but in order to build/link the newer libraries on the newer system thats a bit more difficult. I also still need to figure out if I can combine the old libraries and the new libraries together so that I can still distribute SQLPro for both platforms, or if I no longer support older platforms. Not a decision I've made yet. So... slowly :)

hankinsoft avatar Sep 21 '24 20:09 hankinsoft

Thank you for much for the feedback.

cwolcott avatar Sep 21 '24 22:09 cwolcott

Just checking in to see if you are still making progress.

cwolcott avatar Nov 01 '24 23:11 cwolcott

Happy New Year Kyle, is there any update for SQLPro for Oracle on Apple Silicon?

cwolcott avatar Jan 03 '25 13:01 cwolcott

I'm hoping to re-visit this within the next month or so. What I tried before didn't work, so I've got to re-evaluate how to get them working.

hankinsoft avatar Jan 07 '25 14:01 hankinsoft

I I'm getting closer. Just wondering, do you have access to an arm64 (apply m1-x) system as of yet?

One issue I'm seeing is that oracle libs are: v23.1 for arm64 and v19.1 for intel

Not positive if I can create a build that will work on <BOTH> system as of yet, meaning once I have an oracle build ready it may be arm64 only.

hankinsoft avatar Jan 15 '25 18:01 hankinsoft

I will put in a ticket to our IT group requesting a loaner arm64 (probably an m3) with a explanation that I need to test software compatibility.

cwolcott avatar Jan 15 '25 18:01 cwolcott

Sounds good. I’m probably at least a week away. Still trying to figure a few things out.

On Wed, Jan 15, 2025 at 2:37 PM cwolcott @.***> wrote:

I will put in a ticket to our IT group requesting a loaner arm64 (probably an m3) with a explanation that I need to test software compatibility.

— Reply to this email directly, view it on GitHub https://github.com/hankinsoft/SQLPro/issues/1002#issuecomment-2593679072, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAYDTUEFGDYRDSU44G2CVHD2K2TGHAVCNFSM6AAAAABL72N6G6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDKOJTGY3TSMBXGI . You are receiving this because you were assigned.Message ID: @.***>

hankinsoft avatar Jan 15 '25 18:01 hankinsoft

I just received a loaner M2 and would be happy to perform any tests.

cwolcott avatar Jan 16 '25 15:01 cwolcott

Could you try: https://sqlprostudio.s3.us-east-1.amazonaws.com/oracle/SQLProOracle.2025.1.app.zip

There are still a few issues.

  1. There is a crash sometimes when cancelling a query (or closing a tab while a query is running).
  2. It runs in hardened mode, but is not yet sandboxed. I'm having troubles getting sandboxed to build.
  3. arm64 only support.

hankinsoft avatar Jan 21 '25 19:01 hankinsoft

I was able to install from the zip, SQLPro for Oracle 2025.1 [Build 593] on a MacBook Pro M2 Pro chip running Sequoia 15.2

Connected to my development and production Oracle 19c Enterprise databases.

I have tried various actions (just a few) and don't see any issues showing on the UI. I would be happy to run various test cases and send the log file.


On my MacBook Pro 2019 Intel chip I am running SQLPro for Oracle 2023.81 (Build 581)

cwolcott avatar Jan 22 '25 00:01 cwolcott

Thanks! My main issues at the moment are still the three mentioned here:

1. There is a crash sometimes when cancelling a query (or closing a tab while a query is running).
2. It runs in hardened mode, but is not yet sandboxed. I'm having troubles getting sandboxed to build.
3. arm64 only support.

I don't think there is anything specific from users that will help me out, but I will let you know if I come up with anything. I'm trying to work with one of the ocilib maintainers to figure out the crash and seeing if I can contact anyone at oracle for item 2. I will need to get both of the first items solved before I can post an App Store update.

hankinsoft avatar Jan 22 '25 14:01 hankinsoft

Just as a heads up, I believe Oracle is looking into this:

https://forums.oracle.com/ords/apexds/post/oracle-instant-client-macos-arm64-version-23-3-0-0-0-crashe-5221

I've posted a sample project and other macOS users have run into the issue as well, so hopefully they will have an update soon.

hankinsoft avatar Feb 26 '25 22:02 hankinsoft

I have been following the Oracle forums thread. Fingers crossed they provide you with an updated build so you can move forward.

cwolcott avatar Apr 17 '25 01:04 cwolcott

Fingers crossed 🤞, new Oracle Instant Client released 29 hours ago. https://forums.oracle.com/ords/apexds/post/oracle-instant-client-macos-arm64-version-23-3-0-0-0-crashe-5221#comment_70254072949899058192692295473100896788

cwolcott avatar May 12 '25 15:05 cwolcott

Am investigating now. Hope to home some details sometime be early next week.

hankinsoft avatar May 12 '25 16:05 hankinsoft

Hi, Just for an update, I can confirm that the crash I posted on the oracle forms has been resolved, however I <AM> still seeing this crash:

https://github.com/vrogier/ocilib/issues/373

(But not with the older oracle libraries). That said, I believe the issue may be on my end somewhere (with either memory or threading) as SQLPro is fairly complex. I'm still investigating and I'm also investigating the removal of ocilib completely and working with the raw oracle libraries (so far I'm NOT seeing any crashes that way, but I'm still working on getting the implementation working fully).

I am still hoping to have an arm64 SQLPro for Oracle version available next week, although it may be later in the week.

hankinsoft avatar May 14 '25 16:05 hankinsoft

Understand, no rush. I would be happy to perform any secondary user testing if needed.

cwolcott avatar May 14 '25 16:05 cwolcott

Ok - when you get the chance, can you please try: https://sqlprostudio.s3.us-east-1.amazonaws.com/oracle/SQLProOracle.2025.17.app.zip

This build is currently arm64 only (so requires an M system).

  • This build no longer use the liboci framework.
  • It seems to be faster than the previous oracle builds. Not sure if it's due to skipping the framework, or due to not going through the intel compatibility layer (probably a bit of both).
  • Some data types may not work right. I tried to test as many as I possibly code between the old version and the new version and I think I have them all, but it's possible I missed some. If data is invalid, please let me know and I can sort it out.
  • I've partially added support for <IGNORING> SQLPlus commands such as REM comments (they will no longer cause the script to fail). This will allow SQLPlus scripts to execute, but might not work 100% as expected.

Overall, I think this is heading in a good direction.

hankinsoft avatar May 21 '25 11:05 hankinsoft

Saw your post a couple of hours before we left on vacation. Went back to the office and grabbed by M2 laptop. Will play around while I am watching European football and looking at the lake.

Image

cwolcott avatar May 22 '25 00:05 cwolcott

Installed your latest version

Double clicked on a table which produced the query and nicely returned 65 records (because that is all there is) SELECT * FROM MOLMAN.ASSAYS WHERE rownum <= 1000;

So I clicked Run Selected button to run the query again and nothing is return, no error on screen

Initializing connection...
Connection ready. Took 0.042 seconds.
Finished. Total time: 0.042 seconds.

Attached is the log. This occurs with any table. simpleTableSelect.log

If I close the tab and click on the table again to produce the simple query in a new tab the results are returned the first time but never again in that tab.

cwolcott avatar May 22 '25 00:05 cwolcott

Looks like a nice spot for a vacation! Don't work too hard :D

Double clicked on a table which produced the query and nicely returned 65 records (because that is all there is) SELECT * FROM MOLMAN.ASSAYS WHERE rownum <= 1000;

So I clicked Run Selected button to run the query again and nothing is return, no error on screen

Oh, I know exactly what caused that. It was a last second change that I didn't test enough. This build should sort it out.

https://sqlprostudio.s3.us-east-1.amazonaws.com/oracle/SQLProOracle.2025.18.app.zip

hankinsoft avatar May 22 '25 12:05 hankinsoft

Yep, that fixed the issue above. Will continue exercising the release.

cwolcott avatar May 22 '25 13:05 cwolcott

I tried the new build as well, with a SSH tunnel there seems to be some issues connecting. Image

For reference, the same DB works well with the intel version as well as connecting directly. ARM build - Direct connect Image

Intel build with SSH tunnel Image


update: explain plan also doesn't seem to be working well. arm build

Image

intel build Image

choongjoey avatar May 25 '25 03:05 choongjoey

Please also check the Import From CSV.

I performed an Export to CSV and that looks OK. I then tried to Import the CSV back into Oracle and had issues.

Steps:

  • Highlight Tables and choose Import From CSV.
  • Select any CSV file
  • The dialog appears with nothing filled out, no tables listed in the dropdown, and you can't cancel the dialog

Image |--

ImportFromCsv.log

cwolcott avatar May 27 '25 15:05 cwolcott

Got the SSH and import fixed, but I just noticed the explain plan issue. Looking into that now.

hankinsoft avatar May 27 '25 17:05 hankinsoft

https://sqlprostudio.s3.us-east-1.amazonaws.com/oracle/SQLProOracle.2025.21.app.zip

Should sort:

  • SSH
  • Import
  • Explain plan

hankinsoft avatar May 27 '25 18:05 hankinsoft