mirror of https://github.com/containers/podman.git
Remove lock existence checks when creating pods/containers
Given that we don't have a good way of cleaning up locks, these could potential cause issues if we ever reuse a container or pod ID Also changes locks dir to use tmpfs, as we can't directly clean up locks Signed-off-by: Matthew Heon <matthew.heon@gmail.com> Closes: #138 Approved by: rhatdan
This commit is contained in:
parent
6d29768864
commit
bf0d359047
|
@ -430,11 +430,6 @@ func newContainer(rspec *spec.Spec, lockDir string) (*Container, error) {
|
|||
|
||||
// Path our lock file will reside at
|
||||
lockPath := filepath.Join(lockDir, ctr.config.ID)
|
||||
// Ensure there is no conflict - file does not exist
|
||||
_, err := os.Stat(lockPath)
|
||||
if err == nil || !os.IsNotExist(err) {
|
||||
return nil, errors.Wrapf(ErrCtrExists, "lockfile for container ID %s already exists", ctr.config.ID)
|
||||
}
|
||||
// Grab a lockfile at the given path
|
||||
lock, err := storage.GetLockfile(lockPath)
|
||||
if err != nil {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package libpod
|
||||
|
||||
import (
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
||||
"github.com/containers/storage"
|
||||
|
@ -57,11 +56,6 @@ func newPod(lockDir string) (*Pod, error) {
|
|||
|
||||
// Path our lock file will reside at
|
||||
lockPath := filepath.Join(lockDir, pod.id)
|
||||
// Ensure there is no conflict - file does not exist
|
||||
_, err := os.Stat(lockPath)
|
||||
if err == nil || !os.IsNotExist(err) {
|
||||
return nil, errors.Wrapf(ErrCtrExists, "lockfile for pod ID %s already exists", pod.id)
|
||||
}
|
||||
// Grab a lockfile at the given path
|
||||
lock, err := storage.GetLockfile(lockPath)
|
||||
if err != nil {
|
||||
|
|
|
@ -138,7 +138,7 @@ func NewRuntime(options ...RuntimeOption) (runtime *Runtime, err error) {
|
|||
}
|
||||
|
||||
// Make a directory to hold container lockfiles
|
||||
lockDir := filepath.Join(runtime.config.StaticDir, "lock")
|
||||
lockDir := filepath.Join(runtime.config.TmpDir, "lock")
|
||||
if err := os.MkdirAll(lockDir, 0755); err != nil {
|
||||
// The directory is allowed to exist
|
||||
if !os.IsExist(err) {
|
||||
|
|
Loading…
Reference in New Issue