Store supports auto-creating retention policy

pull/2802/head
Philip O'Toole 2015-06-06 09:24:42 -07:00
parent 2972420cf5
commit 8d9a28a583
1 changed files with 16 additions and 0 deletions

View File

@ -66,6 +66,8 @@ type Store struct {
closing chan struct{}
wg sync.WaitGroup
RetentionAutocreate bool
// The listeners to accept raft and remote exec connections from.
RaftListener net.Listener
ExecListener net.Listener
@ -562,6 +564,20 @@ func (s *Store) CreateDatabase(name string) (*DatabaseInfo, error) {
); err != nil {
return nil, err
}
if s.RetentionAutocreate {
rpi := NewRetentionPolicyInfo("default")
rpi.ReplicaN = 1
_, err := s.CreateRetentionPolicy(name, rpi)
if err != nil {
return nil, err
}
if err := s.SetDefaultRetentionPolicy(name, "default"); err != nil {
return nil, err
}
}
return s.Database(name)
}