Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Implement MARS (Multiple Active Result Set) #462

@franciscojunior

Description

@franciscojunior

Hi all!

I'm opening this issue so we can discuss about how we could implement MARS in Npgsql.

@bricelam gave us a heads up about the requirement of MARS by Entity Framework 7. #249 (comment)

I was reading the protocol documentation and there it says:

If Execute terminates before completing the execution of a portal (due to reaching a nonzero result-row count), it will send a PortalSuspended message; the appearance of this message tells the frontend that another Execute should be issued against the same portal to complete the operation.

Would it be possible to have many portals open at the same time and send execute messages separately?

Something like this:

while (dr.Read())     <----- First portal suspended (read 10 first rows for example)
{
     blahblah()
     while dr2.Read()   <---- Execute a second portal
     {
     }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions