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

Implement INSENSITIVE property for PSQL explicit cursors [CORE5781] #6044

Open
firebird-automations opened this issue Mar 20, 2018 · 2 comments

Comments

@firebird-automations
Copy link
Collaborator

Submitted by: @hvlad

Relate to CORE5773

The SQL Standard say:

--- begin quote ---

The following paragraphs define several terms used to discuss issues relating to a cursor's operational sensitivity
property:

A change to SQL-data is said to be independent of a cursor CR if and only if it is not made by an <update
statement: positioned> or a <delete statement: positioned> that is positioned on CR.

A change to SQL-data is said to be significant to CR if and only if it is independent of CR, and, had it been
committed before CR was opened, would have caused the sequence of rows in the result set descriptor of CR
to be different in any respect.

A change to SQL-data is said to be visible to CR if and only if it has an effect on the sequence of rows SR of
the result set descriptor of CR by inserting a row in SR, deleting a row from SR, changing the value of a column
of a row of SR, or reordering the rows of SR.

If a cursor is open, and the SQL-transaction in which the cursor was opened makes a significant change to
SQL-data, then whether that change is visible through that cursor before it is closed is determined as follows:
— If the cursor is insensitive, then significant changes are not visible.
— If the cursor is sensitive, then significant changes are visible.
— If the cursor is asensitive, then the visibility of significant changes is implementation-dependent.

--- end quote ---

This ticket offers to implement INSENSITIVE PSQL explicit cursors.
Current implementation is ASENSITIVE - ability of cursor to see significant changes is dependent on execution plan.
Implementation of SENSITIVE cursors is out of scope of this ticket.

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

Link: This issue relate to CORE5773 [ CORE5773 ]

@firebird-automations
Copy link
Collaborator Author

Modified by: @hvlad

assignee: Vlad Khorsun [ hvlad ]

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

No branches or pull requests

2 participants