Skip to content
This repository has been archived by the owner on Apr 5, 2023. It is now read-only.

Expose Query Executor that does not acquire commit lock #291

Closed
bstasyszyn opened this issue Feb 9, 2021 · 0 comments · Fixed by #292
Closed

Expose Query Executor that does not acquire commit lock #291

bstasyszyn opened this issue Feb 9, 2021 · 0 comments · Fixed by #292

Comments

@bstasyszyn
Copy link
Contributor

Currently, the peer ledger function, NewQueryExecutor, acquires a read lock on the ledger which means that the caller needs to wait for any pending commit. In some cases, such as with off-ledger collections, the client does not require a lock on the ledger. The peer should expose a resource that allows a client to ask for a query executor that does not lock the ledger.

bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

Also updated integration test check for required images.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
bstasyszyn added a commit to bstasyszyn/fabric-mod that referenced this issue Feb 9, 2021
When a channel is created then, along with registering a state database, a query executor provider is also registered. The query executor provider returns query executors with and without a ledger lock. In some cases (such as with off-ledger and transient data) a ledger lock is not required and this will improve performance when reading data.

Also updated integration test check for required images.

closes trustbloc#291

Signed-off-by: Bob Stasyszyn <[email protected]>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant