If your device is running anything older than Android 7.1, skip this section as your device will not be using A/B nor system-as-root. First, you need to know whether your device is using A/B partitions. If you don’t know, use a terminal (adb shell or any terminal emulator) to check with this command:
getprop ro.build.ab_update
If the result is true, then your device is using A/B partitions.
If your device is A/B, then your device is also certainly using system-as-root. To find out whether you are using system-as-root on a non-A/B device, use a terminal to check with this command:
getprop ro.build.system_root_image
If the result is true, then your device is using system-as-root.
Boot into fastboot bootloader and execute:
fastboot getvar all
Wait for a lot of text to finish scrolling and look for the “(bootloader) current-slot” text. This should actually be toward the bottom without the need to scroll up. The letter after this text will be the currently active partition slot for your device
adb shell getprop | grep slot
Boot into fastboot bootloader and execute:
fastboot --set-active=b (or fastboot --set-active='b')?
getprop ro.boot.bootdevice