No it's a btrfs allocation issue, try this:
-if array autostart is enabled disable it
-reboot the server since there was already a btrfs crash
-check that the cache device is still sdi, if it changed adjust the command accordingly, then with the array stopped type:
mkdir /temp
mount -t btrfs -o skip_balance /dev/sdi1 /temp
btrfs balance start -dusage=50 /temp
If the balance completes successfully, post the output of:
btrfs fi usage -T /temp