Thank you, so if someone broadcast the transactions, this could be pending forever?
The transaction will remain unconfirmed and nodes will have it in their mempool until the network becomes less congested, so that its fee rate is enough and it gets confirmed.
It's also possible that nodes drop the transaction due to their mempool reaching its maximum size.
If a node reaches its maximum size, it would remove transactions with low fee rate, so there's room for transactions with higher fee rates. The default mempool size is 300 MB.
The other possibility is that the sender makes a new transaction with the same input(s) and invalidates the unconfirmed transaction.