After one adds a contact and waits for approval, Spark will show pending contact in its roster. If a connection is lost during that time and after Spark reconnects, it duplicates the pending contact entry.
Seems like a similar issue as duplicating of Offline contacts during a reconnect. But in this case a workaround of using Reconnection as a group doesn't help.
A workaround patch has been proposed in the linked forums thread. Still waiting for a proper fix, though.