Fix extremely slow removals
This commit is contained in:
		
							parent
							
								
									ca462ac005
								
							
						
					
					
						commit
						ce2e58b6bc
					
				| @ -23,6 +23,7 @@ CREATE TABLE IF NOT EXISTS node( | |||||||
| ) STRICT; | ) STRICT; | ||||||
| 
 | 
 | ||||||
| CREATE INDEX IF NOT EXISTS node__sha1 ON node(sha1); | CREATE INDEX IF NOT EXISTS node__sha1 ON node(sha1); | ||||||
|  | CREATE INDEX IF NOT EXISTS node__parent ON node(parent); | ||||||
| CREATE UNIQUE INDEX IF NOT EXISTS node__parent_name | CREATE UNIQUE INDEX IF NOT EXISTS node__parent_name | ||||||
| ON node(IFNULL(parent, 0), name); | ON node(IFNULL(parent, 0), name); | ||||||
| 
 | 
 | ||||||
|  | |||||||
							
								
								
									
										11
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								main.go
									
									
									
									
									
								
							| @ -94,10 +94,15 @@ func init() { | |||||||
| } | } | ||||||
| 
 | 
 | ||||||
| func openDB(directory string) error { | func openDB(directory string) error { | ||||||
|  | 	galleryDirectory = directory | ||||||
|  | 
 | ||||||
| 	var err error | 	var err error | ||||||
| 	db, err = sql.Open("sqlite3_custom", "file:"+filepath.Join(directory, | 	db, err = sql.Open("sqlite3_custom", "file:"+filepath.Join(directory, | ||||||
| 		nameOfDB+"?_foreign_keys=1&_busy_timeout=1000")) | 		nameOfDB+"?_foreign_keys=1&_busy_timeout=1000")) | ||||||
| 	galleryDirectory = directory | 	if err != nil { | ||||||
|  | 		return err | ||||||
|  | 	} | ||||||
|  | 	_, err = db.Exec(initializeSQL) | ||||||
| 	return err | 	return err | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -303,10 +308,6 @@ func cmdInit(fs *flag.FlagSet, args []string) error { | |||||||
| 		return err | 		return err | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if _, err := db.Exec(initializeSQL); err != nil { |  | ||||||
| 		return err |  | ||||||
| 	} |  | ||||||
| 
 |  | ||||||
| 	// XXX: There's technically no reason to keep images as symlinks, | 	// XXX: There's technically no reason to keep images as symlinks, | ||||||
| 	// we might just keep absolute paths in the database as well. | 	// we might just keep absolute paths in the database as well. | ||||||
| 	if err := os.MkdirAll( | 	if err := os.MkdirAll( | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user