Navigation Menu

Skip to content

Commit

Permalink
db: removed Storage.Close method
Browse files Browse the repository at this point in the history
This method should not be used anymore. We should collect dead
connections and close it.
  • Loading branch information
Francisco Souza committed Jan 21, 2013
1 parent 37de890 commit 5ae7bd7
Show file tree
Hide file tree
Showing 16 changed files with 12 additions and 60 deletions.
1 change: 0 additions & 1 deletion api/auth_test.go
Expand Up @@ -44,7 +44,6 @@ func (s *AuthSuite) SetUpSuite(c *C) {
}

func (s *AuthSuite) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion api/handler_test.go
Expand Up @@ -36,7 +36,6 @@ func (s *HandlerSuite) SetUpSuite(c *C) {
}

func (s *HandlerSuite) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion api/service_consumption_test.go
Expand Up @@ -38,7 +38,6 @@ func (s *ConsumptionSuite) SetUpSuite(c *C) {
}

func (s *ConsumptionSuite) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion api/service_provision_test.go
Expand Up @@ -39,7 +39,6 @@ func (s *ProvisionSuite) SetUpSuite(c *C) {
}

func (s *ProvisionSuite) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion api/suite_test.go
Expand Up @@ -107,7 +107,6 @@ func (s *S) SetUpSuite(c *C) {
func (s *S) TearDownSuite(c *C) {
defer s.t.S3Server.Quit()
defer s.t.IamServer.Quit()
defer s.conn.Close()
queue.Preempt()
s.conn.Apps().Database.DropDatabase()
fsystem = nil
Expand Down
1 change: 0 additions & 1 deletion api/writer_test.go
Expand Up @@ -29,7 +29,6 @@ func (s *WriterSuite) SetUpSuite(c *C) {
}

func (s *WriterSuite) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion app/suite_test.go
Expand Up @@ -100,7 +100,6 @@ func (s *S) SetUpSuite(c *C) {
func (s *S) TearDownSuite(c *C) {
defer s.t.S3Server.Quit()
defer s.t.IamServer.Quit()
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
fsystem = nil
queue.Preempt()
Expand Down
1 change: 0 additions & 1 deletion auth/suite_test.go
Expand Up @@ -84,7 +84,6 @@ func (s *S) SetUpSuite(c *C) {
}

func (s *S) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion collector/bench_test.go
Expand Up @@ -56,7 +56,6 @@ func BenchmarkUpdate(b *testing.B) {
if err != nil {
panic(err)
}
defer conn.Close()
defer conn.Apps().Database.DropDatabase()
_, names := getFakeApps(conn)
app.Provisioner = ttesting.NewFakeProvisioner()
Expand Down
1 change: 0 additions & 1 deletion collector/suite_test.go
Expand Up @@ -35,7 +35,6 @@ func (s *S) SetUpSuite(c *C) {

func (s *S) TearDownSuite(c *C) {
s.conn.Apps().Database.DropDatabase()
s.conn.Close()
}

func (s *S) TearDownTest(c *C) {
Expand Down
15 changes: 0 additions & 15 deletions db/storage.go
Expand Up @@ -81,21 +81,6 @@ func Conn() (storage *Storage, err error) {
return Open(url, dbname)
}

// Close closes the connection.
//
// You can take advantage of defer statement, and write code that look like this:
//
// st, err := Open("localhost:27017", "tsuru")
// if err != nil {
// panic(err)
// }
// defer st.Close()
//
// TODO(fss): remove this method and implement a "connection collector".
func (s *Storage) Close() {
s.session.Close()
}

// Collection returns a collection by its name.
//
// If the collection does not exist, MongoDB will create it.
Expand Down
43 changes: 12 additions & 31 deletions db/storage_test.go
Expand Up @@ -50,7 +50,7 @@ var _ = Suite(&S{})
func (s *S) TearDownSuite(c *C) {
storage, err := Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
defer storage.Close()
defer storage.session.Close()
storage.session.DB("tsuru_storage_test").DropDatabase()
}

Expand All @@ -61,21 +61,21 @@ func (s *S) TearDownTest(c *C) {
func (s *S) TestOpenConnectsToTheDatabase(c *C) {
storage, err := Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
defer storage.Close()
defer storage.session.Close()
c.Assert(storage.session.Ping(), IsNil)
}

func (s *S) TestOpenStoresConnectionInThePool(c *C) {
storage, err := Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
defer storage.Close()
defer storage.session.Close()
c.Assert(storage.session, Equals, conn["127.0.0.1:27017"])
}

func (s *S) TestOpenReusesConnection(c *C) {
storage, err := Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
defer storage.Close()
defer storage.session.Close()
storage2, err := Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
c.Assert(storage.session, Equals, storage2.session)
Expand All @@ -84,7 +84,7 @@ func (s *S) TestOpenReusesConnection(c *C) {
func (s *S) TestOpenReconnects(c *C) {
storage, err := Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
storage.Close()
storage.session.Close()
storage, err = Open("127.0.0.1:27017", "tsuru_storage_test")
c.Assert(err, IsNil)
err = storage.session.Ping()
Expand All @@ -104,7 +104,7 @@ func (s *S) TestConn(c *C) {
defer config.Unset("database:name")
storage, err := Conn()
c.Assert(err, IsNil)
defer storage.Close()
defer storage.session.Close()
err = storage.session.Ping()
c.Assert(err, IsNil)
}
Expand All @@ -125,35 +125,16 @@ func (s *S) TestConnMissingDatabaseName(c *C) {
c.Assert(err.Error(), Equals, `configuration error: key "database:name" not found`)
}

func (s *S) TestCloseClosesTheConnectionWithMongoDB(c *C) {
defer func() {
if r := recover(); r == nil {
c.Errorf("Should close the connection.")
}
}()
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
storage.Close()
err := storage.session.Ping()
c.Assert(err, NotNil)
}

func (s *S) TestCloseKeepsTheConnectionInThePool(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
storage.Close()
_, ok := conn["127.0.0.1:27017"]
c.Assert(ok, Equals, true)
}

func (s *S) TestCollection(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
defer storage.Close()
defer storage.session.Close()
collection := storage.Collection("users")
c.Assert(collection.FullName, Equals, storage.dbname+".users")
}

func (s *S) TestUsers(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
defer storage.Close()
defer storage.session.Close()
users := storage.Users()
usersc := storage.Collection("users")
c.Assert(users, DeepEquals, usersc)
Expand All @@ -162,7 +143,7 @@ func (s *S) TestUsers(c *C) {

func (s *S) TestApps(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
defer storage.Close()
defer storage.session.Close()
apps := storage.Apps()
appsc := storage.Collection("apps")
c.Assert(apps, DeepEquals, appsc)
Expand All @@ -171,23 +152,23 @@ func (s *S) TestApps(c *C) {

func (s *S) TestServices(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
defer storage.Close()
defer storage.session.Close()
services := storage.Services()
servicesc := storage.Collection("services")
c.Assert(services, DeepEquals, servicesc)
}

func (s *S) TestServiceInstances(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
defer storage.Close()
defer storage.session.Close()
serviceInstances := storage.ServiceInstances()
serviceInstancesc := storage.Collection("service_instances")
c.Assert(serviceInstances, DeepEquals, serviceInstancesc)
}

func (s *S) TestMethodTeamsShouldReturnTeamsCollection(c *C) {
storage, _ := Open("127.0.0.1:27017", "tsuru_storage_test")
defer storage.Close()
defer storage.session.Close()
teams := storage.Teams()
teamsc := storage.Collection("teams")
c.Assert(teams, DeepEquals, teamsc)
Expand Down
1 change: 0 additions & 1 deletion provision/juju/elb_test.go
Expand Up @@ -55,7 +55,6 @@ func (s *ELBSuite) SetUpSuite(c *C) {
func (s *ELBSuite) TearDownSuite(c *C) {
config.Unset("juju:use-elb")
s.conn.Collection("juju_units_test_elb").Database.DropDatabase()
s.conn.Close()
s.server.Quit()
handler.Stop()
handler.Wait()
Expand Down
1 change: 0 additions & 1 deletion provision/juju/suite_test.go
Expand Up @@ -36,5 +36,4 @@ func (s *S) TearDownSuite(c *C) {
handler.Stop()
handler.Wait()
s.conn.Collection(s.collName).Database.DropDatabase()
s.conn.Close()
}
1 change: 0 additions & 1 deletion service/bind/bind_test.go
Expand Up @@ -47,7 +47,6 @@ func (s *S) SetUpSuite(c *C) {
}

func (s *S) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down
1 change: 0 additions & 1 deletion service/suite_test.go
Expand Up @@ -69,7 +69,6 @@ func (s *S) SetUpSuite(c *C) {
}

func (s *S) TearDownSuite(c *C) {
defer s.conn.Close()
s.conn.Apps().Database.DropDatabase()
}

Expand Down

0 comments on commit 5ae7bd7

Please sign in to comment.