RFC: Allow SPI Calls from inside of Multicorn Python#224
Open
rbiro wants to merge 62 commits intoSegfault-Inc:masterfrom
rbiro:master
Open
RFC: Allow SPI Calls from inside of Multicorn Python#224rbiro wants to merge 62 commits intoSegfault-Inc:masterfrom rbiro:master
rbiro wants to merge 62 commits intoSegfault-Inc:masterfrom
rbiro:master
Conversation
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
…mory leak. --------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
… the crash is. --------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
Turned free and execute back on. --------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
… (it is called.) --------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
connect and disconnect from SPI. --------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
trying to convert from python to a datum. --------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
Apparently they do not any more. Added some asserts to catch the related problems early.
Contributor
|
Hello, I'm not sure what you are trying to provide here, but at least on python3 I just added the fact that we can import the plpy module directly from Multicorn. Maybe that would make things simpler if you could use plpy.execute ? |
--------- BEGIN META VARIABLES -------- Project : Task : Done : --------- END META VARIABLES --------
Author
|
We're still on python2, but plpy would be a better solution.
Ross
…On Tue, Mar 10, 2020 at 2:14 AM Ronan Dunklau ***@***.***> wrote:
Hello,
I'm not sure what you are trying to provide here, but at least on python3
I just added the fact that we can import the plpy module directly from
Multicorn. Maybe that would make things simpler if you could use
plpy.execute ?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#224?email_source=notifications&email_token=AFA35FJPR5FMNYS3EXD6F63RGXLC7A5CNFSM4HSNUE3KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOKE5XQ#issuecomment-596922078>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AFA35FMDFW7S7CQACU24AUTRGXLC7ANCNFSM4HSNUE3A>
.
--
*Ross Biro* | CTO
_______________________________________
O: 240-380-2231| F: 240-556-0361 <(240)%20556-0361>
The Interface Financial Group <https://interfacefinancial.com/>
CONFIDENTIALITY NOTICE: This email message, including any attachments, is
for the sole use of the intended recipient/s and may contain confidential &
privileged information. Any unauthorized review, use, disclosure, or
distribution is prohibited. If you are not the intended recipient, please
contact the sender by reply email and destroy all copies of the original
messages and any attachments.
|
shouldn't crash and we should get some information to help with debugging.
Check for key being NULL before trying to print it.
Author
|
Am I missing something? If multicorn is called outside of a plpython
function, then anytime pyly.prepare or probably others is called, you get
an error.
ERROR: Error in python: InternalError
DETAIL: no Python function is currently executing
It looks to me like the context is initialized in plpy_main.c by a static
function PLy_push_execution_context().
I don't see a way to work around that without modifying plpy_main.c.
Ross
On Tue, Mar 10, 2020 at 8:26 AM Ross Biro <rbiro@interfacefinancial.com>
wrote:
… We're still on python2, but plpy would be a better solution.
Ross
On Tue, Mar 10, 2020 at 2:14 AM Ronan Dunklau ***@***.***>
wrote:
> Hello,
>
> I'm not sure what you are trying to provide here, but at least on python3
> I just added the fact that we can import the plpy module directly from
> Multicorn. Maybe that would make things simpler if you could use
> plpy.execute ?
>
> —
> You are receiving this because you authored the thread.
> Reply to this email directly, view it on GitHub
> <#224?email_source=notifications&email_token=AFA35FJPR5FMNYS3EXD6F63RGXLC7A5CNFSM4HSNUE3KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEOKE5XQ#issuecomment-596922078>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AFA35FMDFW7S7CQACU24AUTRGXLC7ANCNFSM4HSNUE3A>
> .
>
--
*Ross Biro* | CTO
_______________________________________
O: 240-380-2231| F: 240-556-0361 <(240)%20556-0361>
The Interface Financial Group <https://interfacefinancial.com/>
CONFIDENTIALITY NOTICE: This email message, including any attachments, is
for the sole use of the intended recipient/s and may contain confidential &
privileged information. Any unauthorized review, use, disclosure, or
distribution is prohibited. If you are not the intended recipient, please
contact the sender by reply email and destroy all copies of the original
messages and any attachments.
--
*Ross Biro* | CTO
_______________________________________
O: 240-380-2231| F: 240-556-0361 <(240)%20556-0361>
The Interface Financial Group <https://interfacefinancial.com/>
CONFIDENTIALITY NOTICE: This email message, including any attachments, is
for the sole use of the intended recipient/s and may contain confidential &
privileged information. Any unauthorized review, use, disclosure, or
distribution is prohibited. If you are not the intended recipient, please
contact the sender by reply email and destroy all copies of the original
messages and any attachments.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
** Not suitable for merging **
Here are a couple of simple changes that allow making SPI calls from inside of multicorn. We use them to do field translation as well as update tables based on the results of api calls to other data storage providers. We are about to start pounding on them.
While we are doing the final debugging and testing, I wanted to get an idea of the interest in having them cleaned up and prepared for a merge.
Please comment here on your interest and about specific cleanups you think are necessary. e.g. should the Statement class be moved out to it's own file? Would using the standard pypl extensions be better than these extensions? etc.