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

Support BOOLEAN #73

Open
rcronin opened this issue Apr 3, 2024 · 16 comments
Open

Support BOOLEAN #73

rcronin opened this issue Apr 3, 2024 · 16 comments

Comments

@rcronin
Copy link

rcronin commented Apr 3, 2024

In V7R5 and later V7R4, IBM released support for BOOLEAN data types. When using this connector with a table that contains a BOOLEAN datatype, a hard error is thrown.

@msillence
Copy link
Contributor

it shouldn't be hard to add support for that, I'm a but busy at the moment but I'll try to get round to it

@msillence
Copy link
Contributor

msillence commented Apr 17, 2024

Seems we won't be upgrading for a while and currenlty we don't have 7.5
Just to check what does SELECT column_name, data_type, length FROM qsys2.SYSCOLUMNS where table_schema='<schema>' and table_name='<table>'
say - where you supply the appropriate <schema> and <table> ?

Also what was the stack trace?

@msillence
Copy link
Contributor

Also there's no as400 type for this in the jt400 library I guess it might be possible to decode with a as400bin1 type

@rcronin
Copy link
Author

rcronin commented Apr 17, 2024

Here's the stack trace we get. The column is "RETURNING"
image

Here's the result from syscolumns:
image

@msillence
Copy link
Contributor

Debezium has adopted this source code and I realiase I should really move the bug there: https://issues.redhat.com/browse/DBZ-7795
I think the next step should be to check how the boolean is encoded and also verify if they perform packing if there are multiple booleans together

@rcronin
Copy link
Author

rcronin commented Apr 19, 2024

Is there anything from a testing perspective to get you more information on this?

Our vendor, ETLworks, had success testing this connector using pub400. Last time I tested using pub400, they have 7.5 running

@jpechane
Copy link

@rcronin Let's move additional discussion to the Jira. Just a tangential question, could you please share the steps to run the connector against pub400? I tried but failed due to insuffient privileges and I'd definitely like to see it done and running - I'd incrorporate it into our IBMi connector tutorial and upcoming blogpost. Thanks for any hint/recommendation!

@rcronin
Copy link
Author

rcronin commented Apr 22, 2024

Sure - here's the steps we took to get this to work.

In the schema that PUB400 automatically creates for you (in my case RCRONIN1), do the following:

  • Create a journal
  • Create a table
  • Assign journal created to journal
image
  • Permissions for table
image
  • Permissions on journal
image

@jpechane
Copy link

@rcronin Thanks! Could you please also share the connector configuration? Without passowrd of course :-). I want to make sure we are completely on the same page.

@rcronin
Copy link
Author

rcronin commented Apr 23, 2024

I've attached what the vendor's abstraction of the ibmi debezium connection config. I'm not able to get the JSON for the debezium-connector API call.
config.txt

@jpechane
Copy link

@rcronin Thanks, I managed to do it myself based on your information!

@rcronin
Copy link
Author

rcronin commented May 16, 2024

@jpechane I wanted to check in and see if you've had any success implementing this? Thanks!

@rcronin
Copy link
Author

rcronin commented Aug 19, 2024

Any update here?

@jpechane
Copy link

IIRC @msillence mentioned last week something that requires IBM input/fix.

@msillence
Copy link
Contributor

Sorry I've not done this yet. I've been waiting for our local IBMi to have the patch installed that is still due soon.
IBM did mention they were interested in helping with development and have offered to look at this.

@rcronin
Copy link
Author

rcronin commented Sep 10, 2024

That's promising. I am willing to lend a hand as well, if I can get some instructions on how to implement.

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

3 participants