Zend certified PHP/Magento developer

Error on Reorder time create invoice automatically from backend in Magento 2?

I have my custom module in that I generate invoice automatically but when I reorder order from backend side that getting this kind of error

“Order saving error: Rolled back transaction has not been completed
correctly. “

here is my code

$invoice = $this->invoiceService->prepareInvoice($order);
                    $invoice->register();
                    if (!$invoice) {
                        $order->addStatusHistoryComment(
                            'Can't generate the invoice right now.',
                            false
                        )->save();
                    }
                    if (!$invoice->getTotalQty()) {
                        $order->addStatusHistoryComment(
                            'Can't generate an invoice without products.',
                            false
                        )->save();
                    }
                    $invoice->setRequestedCaptureCase(Invoice::CAPTURE_OFFLINE);
                    $invoice->save();
                    $invoice->getOrder()->setCustomerNoteNotify(false);
                    $invoice->getOrder()->setIsInProcess(true);
                    $transactionSave = $this->transectionFactory->create()->addObject($invoice)
                        ->addObject($invoice->getOrder());
                        try {
                        $transactionSave->save();
                    } catch (Exception $e) {
                        $writer = new Zend_Log_Writer_Stream(BP . '/var/log/QBMS.log');
                        $logger = new Zend_Log();
                        $logger->addWriter($writer);
                        $logger->info(print_r($e,true));
                    }
                    
                    $order->addStatusHistoryComment(
                        'Automatically Invoice Generated.',
                        false
                    )->save();
                    try {
                        $this->invoiceSender->send($invoice);
                    } catch (Exception $e) {
                        $order->addStatusHistoryComment(
                            'Can't send the invoice Email right now.',
                            false
                        )->save();

                         $writer = new Zend_Log_Writer_Stream(BP . '/var/log/QBMS.log');
                        $logger = new Zend_Log();
                        $logger->addWriter($writer);
                        $logger->info(print_r($e,true));
                    }

Screenshot : https://prnt.sc/k0ud002aKFYz