Design: Swap to Mapepire over system API for SQL #2929
Replies: 2 comments 5 replies
-
|
I guess what isn’t clear to me is will everything that is needed going to be installed automatically? Will anything need special authority? Sounds like if DB2 uses it it should be fine but just curious. Just like the debug server I have trouble getting our admins to install anything extra |
Beta Was this translation helpful? Give feedback.
-
|
This sounds like a great idea. As already mentioned, installation needs to be smooth. Is Mapepire still a Technology Preview? It still says so in the docs. I'm just migrating one of my Node.js apps from using idb-pconnector to Mapepire but I'm not familiar with Mapepire in single mode. What would need to be pre-installed on the server? It sounds like just Java. Any OS version restrictions with using Mapepire? I agree with others regarding the fallback to QZDFMDB2, not necessary, as long as Mapepire installation is easy and smooth. In terms of the Java version I would default to the highest but allow this to be configured/overridden within Code for i. Would that be doable? Would that be configured per Code for i client or is this a server configuration? If it goes ahead then its obviously a big change but happy to help where I can, not sure about coding but I can certainly help with beta testing. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Proposal
Using our component API, we want to bring in Mapepire as well as accompanying logic so we can spin up SQL Jobs via SSH. Replacing our existing SQL runner -
QSYS/QZDFMDB2- with Mapepire, should increase performance significantly.We would be using Mapepire in single mode (not running it as a server). This is what the Db2 for i extension does today.
Reasoning
QZDFMDB2is convenient because it is pre-installed on every system. But, it comes with a magnitude of issues:systemto invokecall QZDFMDB2spawns a new job every time we run an SQL statement.cl, but that comes with new issues regarding CCSID.Highlevel
Goals
QZDFMDB2should not be used anywhere in the code.liblistshould not be used anywhere in the code.Non-goals
To be determined
QZDFMDB2?QZDFMDB2andMapepireand the logic would be ugly. I guess Code for IBM i won't work if it doesn't install?sysNameInAmericanandsysNameInLocalafter we make this switch?Technical impact areas
This adds a new requirement of Java being on the server. We already check for Java on the connection startup.
Replacements
systemwill need to be replaced by a new SQL procedure which returns the job log and spool file assystemdoes as the result set.call ileditor.system(OUT exitCode int, IN clCommand varchar(512), IN newLibraryList varchar(512) default '*SAME', IN newAsp varchar(10) default '*SAME')exitCodewill likely just be1or0.liblistcalls should be replaced with calls to our newileditor.systemprocedure.Overall component changes
cqshCopyToImportileditor.system(procedure)Beta Was this translation helpful? Give feedback.
All reactions