-
Notifications
You must be signed in to change notification settings - Fork 111
Comparing changes
Open a pull request
base repository: openebs/mayastor
base: v2.6.0
head repository: openebs/mayastor
compare: develop
Commits on Mar 21, 2024
-
perf: use spdk mempool per-core cache for io objects pool
Signed-off-by: Diwakar Sharma <diwakar.sharma@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 1352631 - Browse repository at this point
Copy the full SHA 1352631View commit details
Commits on Mar 26, 2024
-
1612: perf: use spdk mempool per-core cache for io objects pool r=dsharma-dc a=dsharma-dc Co-authored-by: Diwakar Sharma <diwakar.sharma@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for bf6450d - Browse repository at this point
Copy the full SHA bf6450dView commit details
Commits on Apr 3, 2024
-
fix(nvmf): fixing duplicate QID error
* Updating to the SPDK with the fix * A test for many parallel rebuilds added Signed-off-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 1b00f56 - Browse repository at this point
Copy the full SHA 1b00f56View commit details -
1616: fix(nvmf): fixing duplicate QID error r=tiagolobocastro a=dsavitskiy * Updating to the SPDK with the fix * A test for many parallel rebuilds added Co-authored-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for f221158 - Browse repository at this point
Copy the full SHA f221158View commit details
Commits on Apr 4, 2024
-
fix(rebuild): connect the io log when detaching
When we detach a device, ensure that the io logs are connected. This usually happens on the fault path, however this change ensures that this happens during the detach itself and thus hardening it against races. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 0061834 - Browse repository at this point
Copy the full SHA 0061834View commit details -
This fixes an issue seen with fio 3.33 reporting an invalid miscompare. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 3be3823 - Browse repository at this point
Copy the full SHA 3be3823View commit details -
1619: Reconnect IO log on Detach r=tiagolobocastro a=tiagolobocastro fix(fio): bump fio to 3.37 This fixes an issue seen with fio 3.33 reporting an invalid miscompare. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com> --- fix(rebuild): connect the io log when detaching When we detach a device, ensure that the io logs are connected. This usually happens on the fault path, however this change ensures that this happens during the detach itself and thus hardening it against races. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com> Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 6dd25e6 - Browse repository at this point
Copy the full SHA 6dd25e6View commit details -
fix(rebuild): reconnect log on own channel when faulting
When an IO fails to submit the channel is removed right away. This means if another IO reaches the channel before the retire or the channel traversal then it might not get logged. This change ensures it is logged by reconnecting the IO log straight away. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 244c261 - Browse repository at this point
Copy the full SHA 244c261View commit details
Commits on Apr 5, 2024
-
1622: fix(rebuild): reconnect log on own channel when faulting r=tiagolobocastro a=tiagolobocastro When an IO fails to submit the channel is removed right away. This means if another IO reaches the channel before the retire or the channel traversal then it might not get logged. This change ensures it is logged by reconnecting the IO log straight away. Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 4da8229 - Browse repository at this point
Copy the full SHA 4da8229View commit details
Commits on Apr 8, 2024
-
fix(lock): make import pool, create replica and share replica operati…
…ons mutually exclusive Signed-off-by: Hrudaya <hrudayaranjan.sahoo@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 9b90fb0 - Browse repository at this point
Copy the full SHA 9b90fb0View commit details -
1611: fix(lock): make import pool, create replica and share replica operations mutually exclusive r=hrudaya21 a=hrudaya21 1. Current PR handles concurrent gRPC request of `import pool`, `create replica`, `share replica`. All are kept under resource mutex lock, where resource is `pool_name`. Co-authored-by: Hrudaya <hrudayaranjan.sahoo@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 68a847d - Browse repository at this point
Copy the full SHA 68a847dView commit details -
test(stats): adding cargo test
Signed-off-by: Abhilash Shetty <abhilash.shetty@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 591c60a - Browse repository at this point
Copy the full SHA 591c60aView commit details -
1613: adding stats test r=abhilashshetty04 a=abhilashshetty04 Co-authored-by: Abhilash Shetty <abhilash.shetty@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 03a7c85 - Browse repository at this point
Copy the full SHA 03a7c85View commit details
Commits on Apr 12, 2024
-
build: harden build by pre-fetching dependencies
Attempt to vendor the cargo deps for up to 25 times Supports linking the resulting derivation into a global location through env var CARGO_VENDOR_DIR, example: > CARGO_VENDOR_DIR=/tmp ./scripts/release.sh --image "" /nix/store/2x03mh7l1q0jx4xfsd3nw4h4ks0pxxya-cargo-vendor-dir Cargo vendored dependencies pre-fetched into /tmp/mayastor-io-engine/develop after 1 attempt(s) This can allow us to create a place holder in the jenkins nodes to keep the last dependencies for each main branch of each repo. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c3fc2c6 - Browse repository at this point
Copy the full SHA c3fc2c6View commit details
Commits on Apr 15, 2024
-
1634: build: harden build by pre-fetching dependencies r=tiagolobocastro a=tiagolobocastro Attempt to vendor the cargo deps for up to 25 times Supports linking the resulting derivation into a global location through env var CARGO_VENDOR_DIR, example: > CARGO_VENDOR_DIR=/tmp ./scripts/release.sh --image "" /nix/store/2x03mh7l1q0jx4xfsd3nw4h4ks0pxxya-cargo-vendor-dir Cargo vendored dependencies pre-fetched into /tmp/mayastor-io-engine/develop after 1 attempt(s) This can allow us to create a place holder in the jenkins nodes to keep the last dependencies for each main branch of each repo. Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for cc76cfd - Browse repository at this point
Copy the full SHA cc76cfdView commit details -
feat(callhome): add bustype and rotational properties to block device…
… for storage media metrics Signed-off-by: Vandana Varakantham <vandana.varakantham@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for b82d6c2 - Browse repository at this point
Copy the full SHA b82d6c2View commit details -
1608: feat(callhome): add bustype and rotational properties to block device r=datacore-vvarakantham a=datacore-vvarakantham Added bus type("connection_type") and rotational ("is_rotational") properties to block device to be able to generate storage media metrics. connection_type: the type of bus through which the device is connected to the system is_rotational: indicates whether the device is rotational or non-rotational Co-authored-by: Vandana Varakantham <vandana.varakantham@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 3a9face - Browse repository at this point
Copy the full SHA 3a9faceView commit details
Commits on Apr 16, 2024
-
build: fix cargo-vendor-dir handling
Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for c874cfc - Browse repository at this point
Copy the full SHA c874cfcView commit details -
fix: update blob metadata during properties update
When a nexus fails over and is moved to a new node, the nvmf replicas attached to it are re-shared. In the share path we don't update lvol blob metadata today, but only update in-core replica nvmf subsystem. Later on if this replica node reboots, the replica is imported with metadata that still contains nqn of old nexus node. This results into replica rejecting the connect attempts from nexus(on new node), e.g. during online child operation. Signed-off-by: Diwakar Sharma <diwakar.sharma@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 7ad7a33 - Browse repository at this point
Copy the full SHA 7ad7a33View commit details -
1635: fix: update blob metadata during properties update r=dsharma-dc a=dsharma-dc When a nexus fails over and is moved to a new node, the nvmf replicas attached to it are re-shared. In the share path we don't update lvol blob metadata today, but only update in-core replica nvmf subsystem. Later on if this replica node reboots, the replica is imported with metadata that still contains nqn of old nexus node. This results into replica rejecting the connect attempts from nexus(on new node), e.g. during online child operation. > [2024-04-11T10:41:09.290525051+00:00 ERROR mayastor::spdk:ctrlr.c:737] Subsystem 'nqn.2019-05.io.openebs:af36286f-2e22-4acc-afdb-bd306dd03056' does not allow host 'nqn.2019-05.io.openebs:node-name:io-engine-2' Co-authored-by: Diwakar Sharma <diwakar.sharma@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for f997677 - Browse repository at this point
Copy the full SHA f997677View commit details
Commits on Apr 18, 2024
-
feat(lvm): add lvm pool and replica support
Add LVM as an experimental alternative backend to Mayastor: 1. it allows us to use a low latency single replica local volume (app pinned to the same node) 2. robust backend for existing LVM users which may prefer it 3. combine local engines into mayastor This differs from the existing lvm localpv as rather than importing the existing VGs we create the LVM PV's and the LVM VG itself. On destruction, if the VG has no non-mayastor LVs then we destroy it, otherwise we leave it behind, untagged. The existing pool/replica services are also refactored to support adding other backends in the future as well. This is achieved by implementing the service interface separately and binding them at a higher level. This way it avoids mixing the backend code, at least as much as possible. Co-authored-by: shubham <shubham.bajpai@mayadata.io> Co-authored-by: Akhil Mohan <akhil.mohan@mayadata.io> Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com> Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 2e46ef2 - Browse repository at this point
Copy the full SHA 2e46ef2View commit details -
chore: address dependabot security alerts
Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 2356795 - Browse repository at this point
Copy the full SHA 2356795View commit details -
build: support relative cargo-vendor-dir path with non-existing
Supports using CARGO_VENDOR_DIR=/tmp/bob/.. in case bob doesn't exist. Probably won't ever happen but just in case :) Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for e866130 - Browse repository at this point
Copy the full SHA e866130View commit details -
1587: Feat: LVM as a pool backend r=tiagolobocastro a=tiagolobocastro Add LVM as an experimental alternative backend to Mayastor: 1. it allows us to use a low latency single replica local volume (app pinned to the same node) 2. robust backend for existing LVM users which may prefer it 3. combine local engines into mayastor This differs from the existing lvm localpv as rather than importing the existing VGs we create the LVM PV's and the LVM VG itself. On destruction, if the VG has no non-mayastor LVs then we destroy it, otherwise we leave it behind, untagged. The existing pool/replica services are also refactored to support adding other backends in the future as well. This is achieved by implementing the service interface separately and binding them at a higher level. This way it avoids mixing the backend code, at least as much as possible. Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 3f0aa9c - Browse repository at this point
Copy the full SHA 3f0aa9cView commit details
Commits on Apr 19, 2024
-
feat(test): adding an extended test for miscompare during partial reb…
…uild Signed-off-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for d283d46 - Browse repository at this point
Copy the full SHA d283d46View commit details
Commits on Apr 22, 2024
-
fix: remove lvm check added to lvs by mistake
Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 42c8c23 - Browse repository at this point
Copy the full SHA 42c8c23View commit details -
1641: fix: remove lvm check added to lvs by mistake r=tiagolobocastro a=tiagolobocastro Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 992af02 - Browse repository at this point
Copy the full SHA 992af02View commit details
Commits on Apr 25, 2024
-
feat(rebuild/snapshot): initial dummy snapshot rebuild
Adds snapshot rebuild module, which makes use of bdev rebuild internally. Adds rebuild option to copy only cluster allocated to the current blob. This is a simply way of copying the allocated snapshot without before the bitmap is in place. Adds tests for simple snapshot rebuilds. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 246f4e1 - Browse repository at this point
Copy the full SHA 246f4e1View commit details -
feat(snap-rebuild/cli): add snap rebuild cli commands
Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 5c2e017 - Browse repository at this point
Copy the full SHA 5c2e017View commit details -
feat(snap-rebuild/grpc): impl grpc backend
Replaces the dummy impls with the actual implementation. Snapshot Rebuilds are now created, destroyed and listed. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for e6589a1 - Browse repository at this point
Copy the full SHA e6589a1View commit details -
1637: Snapshot Rebuild r=tiagolobocastro a=tiagolobocastro feat(snap-rebuild/grpc): impl grpc backend Replaces the dummy impls with the actual implementation. Snapshot Rebuilds are now created, destroyed and listed. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com> --- feat(snap-rebuild/cli): add snap rebuild cli commands Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com> --- feat(rebuild/snapshot): initial dummy snapshot rebuild Adds snapshot rebuild module, which only makes use of bdev rebuild internally. Adds rebuild option to copy only cluster allocated to the current blob. This is a simply way of copying the allocated snapshot without before the bitmap is in place. Adds tests for simple snapshot rebuilds. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com> Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for d3660fe - Browse repository at this point
Copy the full SHA d3660feView commit details
Commits on Apr 26, 2024
-
1632: feat(test): adding an extended test for miscompare during partial rebuild r=tiagolobocastro a=dsavitskiy Co-authored-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 400ab0e - Browse repository at this point
Copy the full SHA 400ab0eView commit details
Commits on Apr 29, 2024
-
test: let replica resize events consolidate before nexus resize
Signed-off-by: Diwakar Sharma <diwakar.sharma@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 9855cd8 - Browse repository at this point
Copy the full SHA 9855cd8View commit details
Commits on Apr 30, 2024
-
refactor: add local pool builder
todo: extend to allow for Lvm pools as well Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for ac3a8e9 - Browse repository at this point
Copy the full SHA ac3a8e9View commit details -
1642: refactor: add local pool builder r=tiagolobocastro a=tiagolobocastro todo: extend to allow for Lvm pools as well Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 5374ae7 - Browse repository at this point
Copy the full SHA 5374ae7View commit details -
test: preserve path when using sudo
Adds script (nix-sudo) which gets the full path of the nix binaries and runs them with sudo -E. Hopefully this will help devs which use safe paths without the nix store. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 14967b3 - Browse repository at this point
Copy the full SHA 14967b3View commit details -
chore: upgrade rustls to address dependabot
Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for dce8ae2 - Browse repository at this point
Copy the full SHA dce8ae2View commit details -
1644: test: let replica resize events consolidate before nexus resize r=dsharma-dc a=dsharma-dc Add a small delay after replicas' resize and before nexus resize, to simulate real world workflow driven by control plane. Co-authored-by: Diwakar Sharma <diwakar.sharma@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 50b599c - Browse repository at this point
Copy the full SHA 50b599cView commit details
Commits on May 1, 2024
-
1643: test: preserve path when using sudo r=tiagolobocastro a=tiagolobocastro Adds script (nix-sudo) which gets the full path of the nix binaries and runs them with sudo -E. Hopefully this will help devs which use safe paths without the nix store. Co-authored-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 6b5de06 - Browse repository at this point
Copy the full SHA 6b5de06View commit details
Commits on May 8, 2024
-
chore: update policy documents
Signed-off-by: Abhinandan Purkait <purkaitabhinandan@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 7a2de5f - Browse repository at this point
Copy the full SHA 7a2de5fView commit details
Commits on May 9, 2024
-
1649: chore: update policy documents r=avishnu a=Abhinandan-Purkait ### Changes - Update GOVERNANCE - Update CONTRIBUTING.md - Update CODE_OF_CONDUCT.md - Update MAINTAINERS Co-authored-by: Abhinandan Purkait <purkaitabhinandan@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 435bbc8 - Browse repository at this point
Copy the full SHA 435bbc8View commit details -
feat(lvs): special error code for out-of-metadata condition
* Previously, when a blob store ran out of free metadata page during volume creation, an ambigious ENOMEM error was returned. Now, in order to allow to have meaningful client-faced error message and codes, EMFILE is returned instead. * A test for a proper error when exceeding pool metadata capacity was added. * LVS errors refactored to eliminate the use of low-level Errno in high-level LVS code. * Low-level Errno codes from SPDK are now mapped to high-level error enum. * Several bugs in Errno conversion fixed in LVS code (negative vs positive errno in SPDK function return value). Signed-off-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 349a07c - Browse repository at this point
Copy the full SHA 349a07cView commit details -
1646: feat(lvs): special error code for out-of-metadata condition r=dsavitskiy a=dsavitskiy * Previously, when a blob store ran out of free metadata page during volume creation, an ambigious ENOMEM error was returned. Now, in order to allow to have meaningful client-faced error message and codes, EMFILE is returned instead. * A test for a proper error when exceeding pool metadata capacity was added. * LVS errors refactored to eliminate the use of low-level Errno in high-level LVS code. * Low-level Errno codes from SPDK are now mapped to high-level error enum. * Several bugs in Errno conversion fixed in LVS code (negative vs positive errno in SPDK function return value). Co-authored-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for 7de5ee4 - Browse repository at this point
Copy the full SHA 7de5ee4View commit details -
fix(spdk): using correct spdk commit hash
Signed-off-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for fabc29a - Browse repository at this point
Copy the full SHA fabc29aView commit details -
1650: fix(spdk): using correct spdk commit hash r=dsavitskiy a=dsavitskiy Co-authored-by: Dmitry Savitskiy <dmitry.savitskiy@datacore.com>
Configuration menu - View commit details
-
Copy full SHA for b529dcd - Browse repository at this point
Copy the full SHA b529dcdView commit details -
refactor(lvm): tidy up lvm share bits
Reuse property setting code and also rename some sharing functions. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for eeefc76 - Browse repository at this point
Copy the full SHA eeefc76View commit details -
refactor(lvs/lvol): tidy up property management
Reuse property modification rather than duplicate code on each arm. Add new batch property setting. Don't modify property if metadata is unchanged. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for a7545e4 - Browse repository at this point
Copy the full SHA a7545e4View commit details -
refactor: add shared traits for pools and replicas
This helps define shared behaviour as we now have different types of backends (lvs and lvm) whilst hiding the internal details. todo: gRPC can use these new traits. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for cf1ecea - Browse repository at this point
Copy the full SHA cf1eceaView commit details -
refactor(grpc): use new pool and replica traits
Adds new GrpcPool and GrpcReplica types which make use of the Pool and Replica traits to ensure all pool/replica types are implemented the same. todo: add getters for the pools which will further simplify it. todo: how to handle creation? Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 34f317d - Browse repository at this point
Copy the full SHA 34f317dView commit details -
fix: replica destroy when pool not found
Should return failed preconditions rather than NotFound. Signed-off-by: Tiago Castro <tiagolobocastro@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 4c4232b - Browse repository at this point
Copy the full SHA 4c4232bView commit details
There are no files selected for viewing
This file was deleted.