It doesn't support unordered transactions.
Signed-off-by: Sage Weil <sage@redhat.com>
   void release(
     uint64_t offset, uint64_t length,
     KeyValueDB::Transaction txn) override;
+
+  bool supports_parallel_transactions() override {
+    return true;
+  }
 };
 
 #endif
 
         sb->bc.finish_write(txc->seq);
       }
       txc->shared_blobs_written.clear();
-      if (g_conf->bluestore_sync_submit_transaction) {
+      if (g_conf->bluestore_sync_submit_transaction &&
+         fm->supports_parallel_transactions()) {
        if (txc->last_nid >= nid_max ||
            txc->last_blobid >= blobid_max) {
          dout(20) << __func__
 
   virtual void release(
     uint64_t offset, uint64_t length,
     KeyValueDB::Transaction txn) = 0;
+
+  virtual bool supports_parallel_transactions() {
+    return false;
+  }
 };