Wow, threads can come around after a long rest. :P
I was having a little trouble comparing two databases with a single DBIC schema today for exactly the reason you cite: cached connection. I figured I'd post the way around that particular hobgoblin. This might be considered a bug… New connection_info should reset the connection, I think.
my @configuration_db_one = ...;
my @configuration_db_two = ...;
my $schema_one = MyDBIC::Schema->connect( @configuration_db_one );
my $schema_two = MyDBIC::Schema->connect( @configuration_db_two );
# ^^^ Wrong, connection from $schema_one is reused despite new config.
my $schema_one = MyDBIC::Schema->connect( @configuration_db_one );
$schema_one->storage->disconnect;
my $schema_two = MyDBIC::Schema->connect( @configuration_db_two );
# ^^^ Right, $schema_one will reconnect with its own info when used.
|