Fast richtig die Erklärungen. (zumindest sinngemäss)

Das ganze basiert auf dem Default-Verhalten des mySQL-Clients von PHP.
Wenn nicht bei jedem einzelnen mySQL-Kommando explizit angegeben wird, für welche Verbindung das Kommando gelten soll, so nutzt der Client grundsätzlich die zuletzt verwendete Verbindung.
Zudem war/ist die derzeitige Klasse 'database' von WB von Anbegin an nicht auf den Zugriff auf verschiedene Verbindungen ausgelegt.
Also passiert folgendes: Sobald Du eine neue Datenbankverbindung öffnest, greifen alle nachfolgenden mySQL-Kommandos auf diese neue Verbindung zu. Selbstverständlich machen das auch die nachfolgenden Datenbankzugriffe von WB und gehen damit dann logischerweise in's Leere. Die alte, ursprüngliche Verbindung besteht weiterhin, kann jedoch nicht so ohne weiteres wieder angesprochen werden.
Als einfache Abhilfe genügt es, z.B. am Ende des eigenen Codes folgenden Befehl aufzurufen um die Verbindung wieder auf die ursprüngliche 'zurückzuschalten':
<?php
mysql_ping( $GLOBALS['database']->db_handle );
?>
... und schon ist die alte WB - Datenbankverbindung wieder aktiv.
Warum, wieso, weshalb das genau so und nicht anders funktioniert, kann
hier (PHP Manual) nachgelesen werden.
Zur Zeit wird die Klasse überarbeitet, so dass problemlos beliebig viele, voneinander unabhängige Verbindungen geöffnet und auch gleichzeitig genutzt werden können. Die geänderte Klasse wird in einem der nächsten Fixes veröffentlicht.