I consider anything over 10 sats/vB pretty reasonable for a fee. 40 sats/vB probably has it in most people's mempools now.
I'd be very very surprised if this Tx gets "lost" or forgotten. Each node holds a collection of unconfirmed valid transactions it deems important (each node has its own mempool). Each node talks to its peers & shares unconfirmed Txs it knows about.
A largely unknown transaction can propogate through the network quite quickly in this way.
The only way to cancel a transaction is to make it no longer valid by spending the UTxO with a higher fee. It's essentially a double spend attempt & nodes will reject that other, lower fee Tx as invalid.